GHSA-3gjw-f78c-vvpw json
tokio-postgres: Panic on a `DataRow` with fewer fields than columns allows denial of service
published 5mo ago modified 2mo ago also RUSTSEC-2026-0178
- cvss
- —
- not scored
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- —
- no score, EPSS covers CVEs only
- public exploits
- 0
- none known
Summary
A malicious or compromised server can send a row containing fewer fields than its row description declares columns. Reading one of the missing columns then panics with an out-of-bounds index, aborting the calling task. This affects even the otherwise non-panicking `try_get`, and both `Row` and `SimpleQueryRow`.
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.
Patch / fix
- crates.io tokio-postgres 0.7.18
Is GHSA-3gjw-f78c-vvpw in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerAffected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| crates.io | tokio-postgres | >=0.4.0, <0.7.18 |
0.7.18 |
Classification
- Weakness
-
- CWE-125 Out-of-bounds Read
References
-
github.com
/rust-postgres/rust-postgres/commit/7a00ffa9ad4d951ec0a4564b52f1780fa9d353c1
web
-
github.com
/rust-postgres/rust-postgres
package
-
github.com
/rust-postgres/rust-postgres/releases/tag/tokio-postgres-v0.7.18
web
-
rustsec.org
/advisories/RUSTSEC-2026-0178.html
web, advisory
-
crates.io
/crates/tokio-postgres
package
Sources
- GitHub Advisory GHSA-3gjw-f78c-vvpw
- OSV RUSTSEC-2026-0178
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.