Sponsored By

InfoSec Community Excited as NSA Releases Ghidra 9.0 to the Public

At the RSA Conference in San Francisco this week, the National Security Agency released to the public one of its internal tools, Ghidra 9.0, which is used for software reverse engineering. The NSA has been using it internally for a decade.

Larry Loeb

March 7, 2019

3 Min Read

At the RSA Conference in San Francisco this week, the National Security Agency released to the public one of its internal tools, Ghidra 9.0, which is used for software reverse engineering. The NSA has been using it internally for a decade.

Reverse engineering software changes the ones and zeros computers understand back into a human-readable structure. The point is to show what that clump of binary code actually does.

It is currently available at the official website, along with supporting documentation. NSA says that it will release the source code under an open source license on GitHub.

Ghidra is written in Java, and requires 4 GB RAM along with 1 GB storage for installed Ghidra binaries. It works on Windows, Mac and Linux.

It will work on the following processors at the moment: X86 16/32/64, ARM/AARCH64, PowerPC 32/64, VLE, MIPS 16/32/64,micro, 68xxx, Java/DEX bytecode, PA-RISC, PIC 12/16/17/18/24, Sparc 32/64, CR16C, Z80, 6502, 8051, MSP430, AVR8 and AVR32.

Ghidra is developed and tested against the OpenJDK (Java development kit) that is distributed from jdk.java.net. The NSA says that using this OpenJDK distribution gives the most stable experience. Ghidra is a direct competitor to IDA Pro, a commercial program that has required usage fees in the thousands of dollars per year besides having an intrusive buyer qualification process. IDA -- which has a debugger not yet present in Ghidra -- has been the only real game in town until now. Yet, Ghidra supports MIPS (Microprocessor without Interlocked Pipelined Stages) decompiling for RISC computers which IDA Pro does not.

Response to the release by the infosec community as expressed on Twitter, has been overwhelmingly positive.

Maddie Stone, who reverse engineers for Google, was positively giddy there. "Ghidra's out and we've got those ARM proc modules, the UNDO button, and the ability to collaborate on analysis... for FREE!" she said.

The Undo/redo functionality seems to be a particular favorite of many. It allows someone to try out an idea without messing up what they have previously saved.

Of course, the community came up with an initial bug. A London-based hacker found what could be a way to backdoor the tool. "Ghidra opens up JDWP in debug mode listening on port 18001, you can use it to execute code remotely," he said on Twitter.

But, this behavior seems to be a condition that only happens in debug mode. It does not happen when Ghidra is in normal mode. It can be easily fixed by changing one line of code as well.

The NSA has previously made tools available to the public through its Technology Transfer Program (TTP). Security-Enhanced Linux and Security-Enhanced Android are but two of the examples.

Having Ghidra available to the public at no cost may well be a decisive marker in cybersecurity defense. This will widely distribute a professional quality analytic tool that gives the community a way to fight back at attacks by understanding them.

This isn't done yet, not by a long shot.

— Larry Loeb has written for many of the last century's major "dead tree" computer magazines, having been, among other things, a consulting editor for BYTE magazine and senior editor for the launch of WebWeek.

Read more about:

Security Now

About the Author(s)

Larry Loeb

Blogger, Informationweek

Larry Loeb has written for many of the last century's major "dead tree" computer magazines, having been, among other things, a consulting editor for BYTE magazine and senior editor for the launch of WebWeek. He has written a book on the Secure Electronic Transaction Internet protocol. His latest book has the commercially obligatory title of Hack Proofing XML. He's been online since uucp "bang" addressing (where the world existed relative to !decvax), serving as editor of the Macintosh Exchange on BIX and the VARBusiness Exchange. His first Mac had 128 KB of memory, which was a big step up from his first 1130, which had 4 KB, as did his first 1401. You can e-mail him at [email protected].

Keep up with the latest cybersecurity threats, newly discovered vulnerabilities, data breach information, and emerging trends. Delivered daily or weekly right to your email inbox.

You May Also Like


More Insights