Description
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.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| nationalsecurityagency | ghidra | < 12.1 | 12.1 |
References
- GitHub Security Advisory (GHSA-8jqp-qv73-395r) vendor-advisory
- https://www.vulncheck.com/advisories/ghidra-heap-use-after-free-in-highvariable-merge-during-decompilation third-party-advisory