Ghidra   Releases

Version Link SHA-256 Notes Date
9.0.2 10ffd65c266e9f5b631c8ed96786c41ef30e2de939c3c42770573bb3548f8e9f Notes 2019-04-03
9.0.1 58ffa488e6dc57e2c023670c1dfac0469bdb6f4e7da98f70610d9f561b65c774 Notes 2019-03-25
9.0 3b65d29024b9decdbb1148b12fe87bcb7f3a6a56ff38475f5dc9dd1cfc7fd6b2 Notes 2019-02-28

Change Log

Ghidra v9.0.2 (April 2019)


  • Analysis. Constant reference analysis boundary controls for speculative references has been fixed. Speculative references are references created from computed constants passed as parameters, stored to a location, or from indexed offsets from a register. (Issue #228)
  • Decompiler. Fixed rendering bug in the Decompiler when the "Find" dialog is closed. (Issue #282)
  • Decompiler. Fixed decompiler handling of Function Definition data types. (Issue #247)
  • Decompiler. Fixed "Free Varnode" exception in RuleConditionalMove. (Issue #294)
  • Diff. Fixed exceptions that can occur in the Diff View for programs with overlays.
  • Documentation. Corrected the spelling of "listener" throughout the source code. (Issue #235)
  • Exporter. Exporting a selection as Intel Hex will now allow a selection of any length. Previously this was restricted to multiples of 16 bytes. (Issue #260)
  • GUI. Fixed exception that occurs after disabling MyProgramChangesDisplayPlugin.
  • GUI. Updated the "Open Program" dialog to disallow file drop operations. (Issue #252)
  • Languages. The ARM Thumb CMP.W and LSL isntructions have been changed to correctly decode. There are still issues to work out with Unpredictable execution when Rd is the PC. (Issue #280)
  • Multi-User:Ghidra Server. Corrected bug introduced into ghidraSvr.bat which could prevent Ghidra Server startup (Issue #279)
  • Scripting. MultiInstructionMemReference script has been corrected to consider input and output registers when placing a reference on an instruction.


  • Basic Infrastructure. Added a property to support/ to prevent log4j from using jansi.dll on Windows. (Issue #286)

Ghidra v9.0.1 (March 2019)

New Features

  • Scripting. Created a script to show all equates within the current selection. (Issue #111)


  • Basic Infrastructure. Updated commons-compress library to version 1.18. (Issue #171)
  • Eclipse Integration. Ghidra now connects to the Eclipse GhidraDev plugin on rather than localhost.
  • GUI. Turned on font anti-aliasing by default for Linux. (Issue #212)
  • GUI. Fixed Options Dialog slow scrolling speed. (Issue #27)
  • Importer:ELF. Corrected bug in ELF loader which can improperly process the GOT, PLT and relocations when multiple symbol tables exist within the ELF binary. (Issue #52)
  • Languages. Added ARM/Thumb SRS instruction decodes for undefined modes. (Issue #216)
  • Multi-User:Ghidra Server. Corrected the Ghidra Server service wrapper (YAJSW) configuration for Mac OS X to prevent a startup timeout condition which could occur.


  • API. Fixed equals method on Varnode class. (Issue #97)
  • API. Fixed a bug in MaskImpl.complementMask(). (Issue #187)
  • Basic Infrastructure. Fixed special character handling in (Issue #75)
  • Basic Infrastructure. Ghidra now forces the locale to en_US by default. Only the en_US is currently supported. This fixes certain unexpected exceptions. (Issue #209)
  • Diff. Fixed exceptions occasionally encountered when starting a Diff session. (Issue #211)
  • Documentation. Fixed javadoc search box redirecting to broken links. (Issue #129)
  • Function Graph. Fixed Function Graph exception when generating tooltip. (Issue #65)
  • GUI. Updated window placement to keep windows on screen. (Issue #41)
  • GUI. Add/Edit References dialog now restricts users to creating refs in valid memory address spaces.
  • GUI. Fixed exception when exiting Ghidra while a table is being edited. (Issue #51)
  • GUI. Fixed some touchpad scrolling issues. (Issue #2)
  • GUI. Fixed stack trace in the Data Type Manager's tooltip generation. (Issue #133)
  • GUI. User key binding settings for the Recently Used and Define Pointer actions no longer lost after re-launching tool. (Issue #152)
  • GUI. Toolbar buttons now respond to fast clicking.
  • Importer:MachO. The MachOLoader can now find import libraries found in Universal Binary files. (Issue #136)
  • Importer:PE. The PeLoader now correctly parses the GuardCFFunctionTable when entries are more than 4 bytes each. (Issue #220)
  • Languages. Added missing PowerPC VLE conditional branch instructions: e_bdnz and e_bdz. (Issue #103)
  • Languages. Fixed instruction semantics for several instructions and added Control Flow Enforcement, NOP variants, CMP variants, UD1, and prefixed call instructions to X86 processor specification. (Issues #22, #53, #158, #157)
  • Languages. The 68000 MOVE instruction now correctly sets the CF and VF flags. (Issue #163)
  • Languages. Added four missing MOVEM instruction variants to the 68000 processor. (Issue #219)
  • Languages. An incorrect usage of X instead of Y in indexed mode for the 6502 has been corrected.(Issue #201)
  • Languages. Added support for ARM Thumb half BL instruction on processor variants prior to v6. (Issue #39)
  • Multi-User:Ghidra Server. Removed support for native OS authentication from Ghidra Server (removed modes -a2 and -a3) due to incompatibility with newer OS releases including Windows 10 and Windows Server 2016. Re-introduction of this will be considered for a future release.
  • PDB. Corrected NPE error when processing PDB files. (Issues #138, #188)
  • Scripting. Fixed a bug in that prevented it from running. (Issue #170)


  • Basic Infrastructure. Running Ghidra in debug mode no longer opens remotely accessible ports by default. (Issue #6)
  • GUI. The Defined Strings plugin no longer renders HTML in its table. (Issue #45)
  • Project Manager. Fixed an XXE vulnerability affecting projects and many other saved components. (Issue #71)

Ghidra v9.0

Initial Release