{"id":"GHSA-vjf8-9fx6-mv6x","summary":"Triton VM Soundness Vulnerability due to Missing Constraint","details":"The instruction `sponge_absorb_mem` Triton VM fails to verify that hashed values come from the claimed memory location. Malicious provers can substitute arbitrary data instead of actual memory contents.\n\nAny application using instruction `sponge_absorb_mem` to hash memory data can be given a proof for a forged hash that doesn't correspond to the actual memory. This breaks the security of memory-based commitments.\n\nThe flaw was corrected in commits `17c7ba0a` and `ef9d9e72` by including the appropriate constraints.","aliases":["RUSTSEC-2021-0156"],"modified":"2026-08-24T08:26:19.554352454Z","published":"2026-08-18T20:22:21Z","database_specific":{"github_reviewed":true,"github_reviewed_at":"2026-08-18T20:22:21Z","nvd_published_at":null,"cwe_ids":["CWE-345"],"severity":"MODERATE"},"references":[{"type":"WEB","url":"https://github.com/TritonVM/triton-vm/commit/17c7ba0a19f31793f1c807a58afaf9504342aac5"},{"type":"PACKAGE","url":"https://github.com/TritonVM/triton-vm"},{"type":"WEB","url":"https://rustsec.org/advisories/RUSTSEC-2021-0156.html"}],"affected":[{"package":{"name":"triton-vm","ecosystem":"crates.io","purl":"pkg:cargo/triton-vm"},"ranges":[{"type":"SEMVER","events":[{"introduced":"0.42.0-alpha.4"},{"fixed":"4.0.0"}]}],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/08/GHSA-vjf8-9fx6-mv6x/GHSA-vjf8-9fx6-mv6x.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V4","score":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N"}]}