RUSTSEC-2026-0219 Remote Denial of Service via malformed NIP-04 IV

Not scored Published

A remote attacker can cause a denial of service in applications using the nostr crate by sending malformed NIP-04 initialization vectors that trigger a panic.

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

What is RUSTSEC-2026-0219?

RUSTSEC-2026-0219 is a denial of service vulnerability in nostr, published on 26 Jul 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

The nostr crate did not validate the length of the initialization vector decoded from the ?iv= portion of a NIP-04 encrypted message.

The decoded IV was converted from a byte slice to the 16-byte AES-CBC IV type using a conversion that asserts the slice length. As a result, an IV whose decoded length was not exactly 16 bytes caused a panic before ciphertext decryption. For example, ?iv=AAAA decodes to a three-byte IV and triggers the panic.

Applications that decrypt untrusted NIP-04 content are affected. The issue is also reachable through NIP-47 (Nostr Wallet Connect), where response and notification events from a malicious or compromised wallet service are passed to NIP-04 decryption. If the panic is not isolated, a crafted event can terminate the application or disrupt message processing, causing a denial of service.

The issue does not affect confidentiality or integrity.

The flaw was corrected by converting the decoded IV to [u8; 16] using a checked conversion. Invalid IV lengths now return a Malformed error instead of panicking.

Credit

Discovered and responsibly disclosed by Muhammed Shekho (mhd-shekho.com).

Which versions are affected by RUSTSEC-2026-0219?

1 open source package ship an affected version, including nostr.

PackageAffectedFixed in
nostr crates.ioFrom 0.0.0-00.44.6, 0.45.0-alpha.6

How do I fix RUSTSEC-2026-0219?

Upgrade nostr to a fixed version for your release line: 0.44.6 or 0.45.0-alpha.6.

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-0219 being exploited?

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

Sources

Also known as GHSA-xg7c-246g-6qpv.

Is RUSTSEC-2026-0219 in your software?

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

Check your SBOMs for free