Rust advisories / postgres-protocol
Vulnerability HighRUSTSEC-2026-0179 · postgres-protocol
RUSTSEC-2026-0179: Unbounded SCRAM iteration count allows a malicious server to cause CPU-exhaustion denial of service
Short answerA security vulnerability in the postgres-protocol crate: Unbounded SCRAM iteration count allows a malicious server to cause CPU-exhaustion denial of service. GitHub rates it High. Fixed in 0.6.12: update to a fixed version.
| Crate | postgres-protocol |
|---|---|
| Type | Vulnerability (denial-of-service) |
| Affected versions | From 0.3.0 before 0.6.12. |
| Fixed in | 0.6.12 |
| Severity | High (GitHub rating) CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N |
| Published | 2026-06-12 |
| Last changed | 2026-08-25 |
| Also known as | GHSA-5x78-73v4-xg6w |
| Affected functions | postgres_protocol::authentication::sasl::ScramSha256::update |
What to do
- See which version you have:
cargo tree -i postgres-protocol(it also shows which of your dependencies pulls it in). - Update within your version requirement:
cargo update -p postgres-protocol. If the fix is a newer major or minor than your requirement allows, raise it in Cargo.toml (for examplepostgres-protocol = "0.6.12") 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
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.
References
- Package: crates.io/crates/postgres-protocol
- Advisory: rustsec.org/advisories/RUSTSEC-2026-0179.html
- Web: github.com/rust-postgres/rust-postgres/commit/d40097a36a85068ea50a3afbf0ce154ba439e7f0
- Advisory: github.com/pgjdbc/pgjdbc/security/advisories/GHSA-98qh-xjc8-98pq
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 postgres-protocol
Up next
Same cratepostgres-protocol: security historyEvery advisory for this crate, and whether it is safe to use today.Read it next →Did this answer your question?