Rust advisories / nostr-relay-pool
Vulnerability HighRUSTSEC-2026-0231 · nostr-relay-pool
RUSTSEC-2026-0231: Relay authentication challenges can exhaust memory
Short answerA security vulnerability in the nostr-relay-pool crate: Relay authentication challenges can exhaust memory. High severity (CVSS 7.5). Fixed in 0.44.3: update to a fixed version.
| Crate | nostr-relay-pool |
|---|---|
| Type | Vulnerability (denial-of-service) |
| Affected versions | Before 0.44.3. |
| Fixed in | 0.44.3 |
| Severity | High, CVSS 7.5 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
| Published | 2026-08-01 |
| Last changed | 2026-08-02 |
| Also known as | none |
What to do
- See which version you have:
cargo tree -i nostr-relay-pool(it also shows which of your dependencies pulls it in). - Update within your version requirement:
cargo update -p nostr-relay-pool. If the fix is a newer major or minor than your requirement allows, raise it in Cargo.toml (for examplenostr-relay-pool = "0.44.3") or update the dependency that pulls it in. - Check again with
cargo audit, or paste your Cargo.lock into our Cargo.toml checker.
Details from the advisory
The SDK forwarded every NIP-42 AUTH challenge received from a relay through an unbounded command queue. Challenge handling can wait for an asynchronous signer or user interaction, so receiving challenges was substantially faster than completing the corresponding authentication work.
A malicious relay could continuously send new challenges without authenticating or delivering valid events. Every value remained queued, causing memory use and pending signer operations to grow without a fixed limit until the client became unavailable. The issue does not allow the relay to forge a signature or learn the client's private key.
The SDK now coalesces pending challenges through a latest-value channel. NIP-42 makes an earlier challenge invalid when the relay sends a new one, so replacing pending work preserves the only challenge that can still be answered while keeping memory use bounded.
References
- Package: crates.io/crates/nostr-relay-pool
- Advisory: rustsec.org/advisories/RUSTSEC-2026-0231.html
- Web: github.com/nostrdevkit/nostr/commit/6eb8766caa25f03803f178861be054f3bca718d7
From the RustSec Advisory Database (CC0-1.0) via the OSV export, downloaded Oct 24, 2026. Severity score computed from the published CVSS vector.
Other advisories for nostr-relay-pool
Up next
Same cratenostr-relay-pool: security historyEvery advisory for this crate, and whether it is safe to use today.Read it next →Did this answer your question?