{"id":"CVE-2021-26953","aliases":["EUVD-2021-1702","GHSA-fhvc-gp6c-h2wx","RUSTSEC-2021-0017"],"status":"published","title":"Read on uninitialized buffer in postscript","description":"An issue was discovered in the postscript crate before 0.14.0 for Rust. It might allow attackers to obtain sensitive information from uninitialized memory locations via a user-provided Read implementation.","severity":{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-09","score":0.01508,"percentile":0.74585,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-908"],"published":"2021-01-30T12:00:00Z","modified":"2026-06-17T03:44:04Z","fixes":[{"ecosystem":"crates.io","package":"postscript","fixed_in":["0.14.0"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"crates.io","package":"postscript","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.14.0"}]}]},{"source":"osv","ecosystem":"crates.io","package":"postscript","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"0.14.0"}]}]},{"source":"osv","ecosystem":"crates.io","package":"postscript","ranges":[{"type":"SEMVER","events":[{"introduced":"0.0.0-0"},{"fixed":"0.14.0"}]}]}],"products":[{"vendor":"postscript_project","product":"postscript"}],"references":[{"url":"https://rustsec.org/advisories/RUSTSEC-2021-0017.html","tags":["x_refsource_MISC","x_transferred","Exploit","Vendor Advisory","web","advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2021-26953","tags":["advisory"]},{"url":"https://github.com/bodoni/postscript/issues/1","tags":["web","report"]},{"url":"https://github.com/bodoni/postscript/commit/8026286","tags":["web"]},{"url":"https://github.com/advisories/GHSA-fhvc-gp6c-h2wx"},{"url":"https://github.com/bodoni/postscript","tags":["package"]},{"url":"https://crates.io/crates/postscript","tags":["package"]}],"sources":{"cve":[{"id":"CVE-2021-26953","description":"An issue was discovered in the postscript crate before 0.14.0 for Rust. It might allow attackers to obtain sensitive information from uninitialized memory locations via a user-provided Read implementation.","status":"published","published":"2021-02-09T22:06:38Z","modified":"2024-08-03T20:33:41.377Z","updated_at":"2026-11-02T14:32:57.368269Z"}],"euvd":[{"id":"EUVD-2021-1702","description":"An issue was discovered in the postscript crate before 0.14.0 for Rust. It might allow attackers to obtain sensitive information from uninitialized memory locations via a user-provided Read implementation.","status":"published","published":"2021-02-09T22:06:38Z","modified":"2024-08-03T20:33:41Z","updated_at":"2026-11-03T03:24:50.84326Z"}],"ghsa":[{"id":"GHSA-fhvc-gp6c-h2wx","title":"Read on uninitialized buffer in postscript","description":"Affected versions of this crate passes an uninitialized buffer to a user-provided Read implementation.\n\nArbitrary Read implementations can read from the uninitialized buffer (memory exposure) and also can return incorrect number of bytes written to the buffer. Reading from uninitialized memory produces undefined values that can quickly invoke undefined behavior.\n\nThis flaw was fixed in commit `8026286` by zero-initializing the buffer before handing to a user-provided Read.","status":"published","published":"2021-08-25T20:52:23Z","modified":"2023-06-13T20:33:53Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high"}],"cwes":["CWE-908"],"updated_at":"2026-11-02T14:36:54.225318Z"}],"nvd":[{"id":"CVE-2021-26953","description":"An issue was discovered in the postscript crate before 0.14.0 for Rust. It might allow attackers to obtain sensitive information from uninitialized memory locations via a user-provided Read implementation.","status":"published","published":"2021-02-09T23:15:13.787Z","modified":"2026-06-17T03:44:04.037Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high","assessor":"primary"},{"version":"2.0","score":5,"vector":"AV:N/AC:L/Au:N/C:P/I:N/A:N","level":"medium","assessor":"primary"}],"cwes":["CWE-908"],"updated_at":"2026-11-02T14:06:50.031227Z"}],"osv":[{"id":"GHSA-fhvc-gp6c-h2wx","title":"Read on uninitialized buffer in postscript","description":"Affected versions of this crate passes an uninitialized buffer to a user-provided Read implementation.\n\nArbitrary Read implementations can read from the uninitialized buffer (memory exposure) and also can return incorrect number of bytes written to the buffer. Reading from uninitialized memory produces undefined values that can quickly invoke undefined behavior.\n\nThis flaw was fixed in commit `8026286` by zero-initializing the buffer before handing to a user-provided Read.","status":"published","published":"2021-08-25T20:52:23Z","modified":"2023-11-08T04:05:22.958536Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high"}],"cwes":["CWE-908"],"updated_at":"2026-11-02T15:46:46.39441Z"},{"id":"RUSTSEC-2021-0017","title":"`Read` on uninitialized buffer may cause UB (`impl Walue for Vec\u003cu8\u003e`)","description":"Affected versions of this crate passes an uninitialized buffer to a user-provided `Read` implementation.\n\nArbitrary `Read` implementations can read from the uninitialized buffer (memory exposure) and also can return incorrect number of bytes written to the buffer.\nReading from uninitialized memory produces undefined values that can quickly invoke undefined behavior.\n\nThis flaw was fixed in commit 8026286 by zero-initializing the buffer before handing to a user-provided `Read`.","status":"published","published":"2021-01-30T12:00:00Z","modified":"2023-11-08T04:05:22.958536Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high"}],"updated_at":"2026-11-02T15:53:39.492624Z"}]}}
