Description
Ghidra before 12.1 contains a heap-use-after-free vulnerability in SleighBuilder::generatePointerAdd caused by iterator invalidation when PcodeCacher::allocateInstruction reallocates the issued vector. Attackers can trigger memory corruption by decompiling malicious binaries through the public Sleigh::oneInstruction C++ API, affecting downstream SLEIGH library consumers.
Problem types
Product status
Any version before 12.1
12.1 (custom)
Credits
Stefano Bonicatti (@Smjert)
References
github.com/...ghidra/security/advisories/GHSA-gqh9-2c72-wpjc
github.com/...ghidra/security/advisories/GHSA-gqh9-2c72-wpjc (GitHub Security Advisory (GHSA-gqh9-2c72-wpjc))
github.com/...ommit/8a3018d5efcb07d2ec40bacdd6063cb6f01c8edf (Patch Commit)
www.vulncheck.com/...eratepointeradd-via-vector-reallocation