RUSTSEC-2026-0329 Auto-Reseeding HMAC-DRBG could panic for some output lengths

Not scored Published

Applications using libcrux-hmac-drbg may panic when requesting specific large output lengths, causing a denial of service.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Not stated
Victim action needed
Not needed
Fix
Available

What is RUSTSEC-2026-0329?

RUSTSEC-2026-0329 is a denial of service vulnerability in libcrux-hmac-drbg, published on 3 Aug 2026.

Official description

The automatically reseeding implementations of HMAC-DRBG would panic if called with a desired non-zero output length cleanly divisible by 65_536, the maximum number of output bytes that can be generated before reseeding has to happen.

Impact

An application relying on libcrux-hmac-drgb to provide randomness of byte length a non-zero integer multiple of 65_536 in a single call to fill_bytes would panic.

Any calls with output buffer lengths not cleanly divisible by 65_536 are not affected.

Mitigation

With release the release of version 0.0.2 of libcrux-hmac-drbg this bug has been fixed and reseeding DRBG implementations can be used with arbitrary output lengths.

We recommend users upgrade to libcrux-hmac-drbg version 0.0.2.

Which versions are affected by RUSTSEC-2026-0329?

1 open source package ship an affected version, including libcrux-hmac-drbg.

PackageAffectedFixed in
libcrux-hmac-drbg crates.ioFrom 0.0.0-00.0.2

How do I fix RUSTSEC-2026-0329?

Upgrade libcrux-hmac-drbg to 0.0.2 or later.

Upgrade, then put limits on request size, rate and nesting depth so one client cannot exhaust the service. More about Denial of service.

Is RUSTSEC-2026-0329 being exploited?

There is no known exploitation of RUSTSEC-2026-0329 in the wild and no public exploit code.

Sources

Is RUSTSEC-2026-0329 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free