{"id":"CVE-2026-52757","summary":"Ghidra \u003c 12.1 - Heap-use-after-free in HighVariable::merge() during decompilation","details":"Ghidra before 12.1 contains a heap-use-after-free vulnerability in the decompiler's HighVariable::merge() function during the variable merging pass. Attackers can trigger this vulnerability by crafting a binary that causes stale pointers in the HighIntersectTest::highedgemap cache to be dereferenced, reading and writing the flags field of freed heap memory when a user opens the binary in Ghidra's decompiler view.","aliases":["GHSA-8jqp-qv73-395r"],"modified":"2026-07-08T08:14:02.738177804Z","published":"2026-06-10T12:42:01.080Z","database_specific":{"cna_assigner":"VulnCheck","osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/52xxx/CVE-2026-52757.json","cwe_ids":["CWE-416"]},"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/52xxx/CVE-2026-52757.json"},{"type":"ADVISORY","url":"https://github.com/NationalSecurityAgency/ghidra/security/advisories/GHSA-8jqp-qv73-395r"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-52757"},{"type":"ADVISORY","url":"https://www.vulncheck.com/advisories/ghidra-heap-use-after-free-in-highvariable-merge-during-decompilation"},{"type":"PACKAGE","url":"https://github.com/nationalsecurityagency/ghidra"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/nationalsecurityagency/ghidra","events":[{"introduced":"0"},{"fixed":"7e89d94e3478f0b1931c34882a0f606fdb06961f"}],"database_specific":{"cpe":"cpe:2.3:a:nsa:ghidra:*:*:*:*:*:*:*:*","extracted_events":[{"introduced":"0"},{"fixed":"12.1"}],"source":["AFFECTED_FIELD","CPE_RANGE"]}}],"versions":["Ghidra_10.3_build","Ghidra_9.0.1_build"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-52757.json"}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V4","score":"CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:A/VC:N/VI:L/VA:L/SC:N/SI:N/SA:N"}]}