Executive brief
Ghidra, a software reverse-engineering suite, is vulnerable to a security flaw when processing certain types of Linux (ELF) files. An attacker can create a specially crafted file that, when opened by a researcher, allows the attacker to verify the existence of sensitive files on the researcher's computer and obtain mathematical fingerprints (CRC32 hashes) of those files. This could lead to the exposure of private system information or configuration details.
Technical details
A path traversal vulnerability exists in Ghidra's 'SameDirDebugInfoProvider' class due to a failure to sanitize filenames retrieved from the '.gnu_debuglink' section of ELF binaries. While the sibling class 'LocalDirDebugLinkProvider' implements 'ensureSafeFilename()', this check was omitted in 'SameDirDebugInfoProvider'. An attacker can provide a filename containing '../' sequences; when the DWARF analyzer (enabled by default) processes the binary, it resolves these paths. If a targeted file exists, Ghidra calculates its CRC32 hash and logs it, providing a side-channel for an attacker to confirm file existence and obtain content hashes. This is particularly impactful in automated or headless analysis environments where logs are returned to the submitter.
Affected products
- NSA Ghidra < 12.1
Timeline
- 2026-05-14: advisory: GitHub Security Advisory published
- 2026-06-10: disclosed: NVD publication date
- 2026-06-10: patched: Fixed in version 12.1