HIGH
GHSA-5x78-73v4-xg6w
postgres-protocol: Unbounded SCRAM iteration count allows a malicious server to cause CPU-exhaustion denial of service
Details
A malicious, compromised, or man-in-the-middle server can supply an arbitrarily large SCRAM-SHA-256 PBKDF2 iteration count during authentication. The client runs it inline with no upper bound, pinning a `tokio` worker thread for minutes per connection, possibly stalling the whole async runtime.
Applications that connect only to a trusted database are not exposed; the risk applies to clients that may connect to untrusted or user-supplied servers, or whose connection can be intercepted by a man-in-the-middle.
Are you affected?
Enter the version of the package you're using.
Affected packages
crates.io / postgres-protocol
Introduced in:
0.3.0 Fixed in: 0.6.12 Upgrade postgres-protocol to 0.6.12 or newer (ecosystem crates.io).
References
- https://github.com/rust-postgres/rust-postgres/commit/d40097a36a85068ea50a3afbf0ce154ba439e7f0 [WEB]
- https://github.com/rust-postgres/rust-postgres [PACKAGE]
- https://github.com/rust-postgres/rust-postgres/releases/tag/postgres-protocol-v0.6.12 [WEB]
- https://rustsec.org/advisories/RUSTSEC-2026-0179.html [WEB]