Browse free open source Reverse Engineering tools and projects below. Use the toggles on the left to filter open source Reverse Engineering tools by OS, license, language, programming language, and project status.
Ghidra is a software reverse engineering (SRE) framework
Dynamic instrumentation toolkit for developers
Reverse engineer anything with agents, from app behavior
Unity il2cpp reverse engineer
A tool for reverse engineering Android apk files
This repository preserves source materials and related documentation
ALL IN ONE Hacking Tool For Hackers
Open-source, cross platform Qt based IDE for reverse-engineering
Decompiler from Java bytecode to Java, used in IntelliJ IDEA
UNIX-like reverse engineering framework and command-line toolset
A reverse engineering suite (decompiler, editor, debugger and more)
Suitable for Android APK reverse engineering analysis
A Hex Editor for Reverse Engineers, Programmers
Free and Open Source Reverse Engineering Platform
Collection of cool tools used by Mobile hackers
Manual for mobile app security testing and reverse engineering
bddisasm is a fast, lightweight, x86/x64 instruction decoder
GUI application to analyze game files
UEFI firmware image viewer and editor
Fast and lightweight x86/x86-64 disassembler and code generation lib
Capstone disassembly/disassembler framework
A collection of cool tools used by Web hackers
Blazing fast and correct x86/x64 disassembler, assembler, decoder, etc
Exploit Development and Reverse Engineering with GDB Made Easy
Open source reverse engineering tools help analysts examine compiled software, firmware, and binary files to understand how they work without access to the original source code. Because the source code is publicly available and community maintained, security researchers, developers, and students can inspect, modify, and extend these tools to fit their own analysis needs. This software plays a central role in tasks such as malware analysis, vulnerability research, and software compatibility work.
At a functional level, this software typically includes disassemblers that convert machine code into readable assembly, decompilers that reconstruct higher level code from binaries, and debuggers that let analysts step through execution in real time. Many tools also provide scripting interfaces, binary diffing, and visualization of code flow, giving analysts several ways to understand what an unfamiliar file is actually doing. Support for multiple processor architectures and file formats allows the same tool to be applied to desktop applications, mobile apps, and embedded firmware.
This software is used by malware analysts, security researchers, software developers, and educators teaching low level computing concepts. Organizations value the transparency of community reviewed code, the absence of licensing fees, and the freedom to customize workflows. As threats grow more complex and software supply chains come under greater scrutiny, more teams are adopting these tools to inspect the software they depend on.
Open source reverse engineering tools are generally free to download and use, which removes licensing fees as a barrier for individuals and small teams. Most tools can be installed on standard hardware, so the main investment is usually time spent learning the software and building a workflow around it.
Organizations may still incur costs related to training, internal support, and secure lab environments for handling suspicious files. Some projects accept donations or offer paid support, consulting, or hosted services, and teams that depend heavily on a particular tool may choose to contribute development time or funding to keep it healthy.
This software commonly connects with scripting languages, allowing analysts to automate tasks and build custom plugins. Debuggers and disassemblers often work together, passing information between static and dynamic analysis. Sandbox and virtualization environments are a frequent pairing, providing a safe place to run suspicious files during analysis. Threat intelligence platforms and malware repositories can be linked to compare findings against known samples. Version control systems help teams share analysis databases, scripts, and notes, while reporting and documentation tools support turning findings into clear write ups for stakeholders.
Choosing the right software starts with identifying the primary use case, whether that is malware analysis, vulnerability research, firmware inspection, or learning. Buyers should confirm support for the processor architectures and file formats they encounter most often. Decompiler quality and debugging capabilities deserve close attention, since these features have the greatest impact on analysis speed. The size and activity of the user community matter as well, because strong documentation, tutorials, and plugins make the software easier to adopt. Teams should also consider scripting options, collaboration needs, and how well the tool fits into their existing lab environment. Finally, evaluating how frequently the project is updated can help ensure ongoing compatibility with new file formats and platforms.