These open-source utilities help security researchers unpack, disassemble, and analyze malicious binaries for threat intelligence.
Ghidra is a software reverse engineering suite designed to analyze compiled binaries and reconstruct program logic without access to original source code. It provides an interactive environment for disassembly and decompilation, utilizing a platform-independent intermediate representation to maintain consistency across diverse hardware architectures. The framework supports automated binary analysis through programmatic routines, enabling the investigation of complex code patterns and security indicators. The platform distinguishes itself through a modular architecture that allows for extensiv
Ghidra is a comprehensive reverse engineering suite that provides the essential static analysis, decompilation, and automated scripting capabilities required to investigate and understand the behavior of complex, obfuscated malicious software.
Radare2 is a comprehensive framework for reverse engineering and analyzing compiled software. It provides a command-line environment designed for disassembling, debugging, and patching binary executables across a wide range of processor architectures and operating systems. The system distinguishes itself through a modular, plugin-based architecture that supports cross-platform analysis and automated workflows. It utilizes memory-mapped file access to enable efficient structural inspection and modification of binaries without requiring full file loads. By lifting machine instructions into a un
Radare2 is a comprehensive, industry-standard framework that provides the necessary static and dynamic analysis tools, emulation, and scripting capabilities required to deconstruct and analyze complex, obfuscated, or packed malicious binaries.
Noriben - Portable, Simple, Malware Analysis Sandbox
Noriben is a Python-based tool that automates dynamic analysis by monitoring system changes during malware execution, though it focuses on behavioral logging rather than providing a full static analysis or unpacking suite.
Mobile Security Framework is an automated security testing platform designed for the analysis of Android, iOS, and Windows mobile application binaries. It functions as a comprehensive suite for identifying security vulnerabilities, privacy risks, and malicious code within mobile software packages. The framework distinguishes itself by combining static and dynamic analysis techniques to evaluate application behavior. It performs static inspection of source code and binaries to detect insecure patterns, while simultaneously utilizing dynamic instrumentation and containerized sandboxing to monit
This is a comprehensive security framework that integrates both static and dynamic analysis specifically for mobile binaries, providing the automated reporting and unpacking capabilities required to evaluate malicious behavior in mobile applications.
Jadx is a comprehensive Java decompilation suite designed to transform compiled binary application files into readable source code. It functions as a static analysis workbench, providing a graphical interface for navigating, searching, and inspecting the internal logic of complex software packages. By utilizing a bytecode-to-Java pipeline, the project reconstructs high-level logical structures from low-level binary instructions, making it a primary tool for Android application reverse engineering. The project distinguishes itself through a sophisticated control flow reconstruction engine and
Jadx is a powerful static analysis and decompilation workbench that excels at reverse engineering Android binaries, though it lacks the dynamic analysis and runtime execution capabilities required for a full-spectrum malware analysis platform.
dnSpy is a desktop application designed for the analysis, debugging, and modification of compiled .NET assemblies. It functions as an assembly analysis suite and decompiler, translating binary instruction streams back into readable source code to facilitate reverse engineering when original source files are unavailable. The tool distinguishes itself through an integrated binary patching engine and metadata editor, which allow for the direct modification of executable logic and internal metadata tables. It supports in-process debugging instrumentation, enabling users to inject runtime hooks, s
This is a specialized debugger and decompiler for .NET assemblies that provides essential static and dynamic analysis capabilities for reverse engineering, though it is focused on the .NET ecosystem rather than being a general-purpose malware analysis platform.
This project is a graphical Windows debugger designed for the analysis and manipulation of compiled binary applications. It functions as a comprehensive binary analysis suite, providing a real-time environment for inspecting CPU registers, monitoring memory states, and tracing instruction execution to investigate system-level software behavior. The tool distinguishes itself through an event-driven debugging loop that allows for precise process control and state modification during runtime. It supports advanced analysis techniques, including hardware-breakpoint injection for monitoring memory
This is a powerful Windows-based debugger that provides the essential static and dynamic analysis capabilities required for reverse engineering and unpacking malicious software, though it is focused on interactive debugging rather than automated report generation.
Cutter is a binary analysis platform and graphical user interface for the Rizin reverse engineering framework. It provides an environment for analyzing the internal logic and data structures of compiled binaries through integrated disassembly and visualization. The platform supports a containerized deployment model to provide isolated environments for binary analysis, which is used to examine suspicious binaries without risking the host system. It is an extensible security tool that allows for the addition of custom analysis capabilities and visualizers via native plugins and scripts. The to
Cutter is a comprehensive reverse engineering platform that provides both static and dynamic analysis capabilities, including debugger integration and plugin support for examining complex or obfuscated binaries.
radare2 is a reverse engineering framework and binary analysis toolset. It functions as a multi-architecture disassembler, low-level binary debugger, and hexadecimal editor for inspecting executable structures and interpreting machine code when original source files are unavailable. The framework provides capabilities for decompiling machine instructions, performing symbolic analysis, and diffing binary files to identify structural changes across versions. It also includes a digital forensic analyzer and disk analyzer for browsing filesystem formats in userland. The toolset supports binary p
This is a comprehensive reverse engineering framework that provides the necessary static and dynamic analysis tools, binary patching, and scripting capabilities required to inspect and deconstruct complex, obfuscated, or packed malicious software.
RetDec is a reverse engineering framework and static binary analysis tool. Its primary purpose is to function as an LLVM-based machine code decompiler that translates binary machine code from multiple architectures into high-level C source code. The system employs a multi-stage lifting pipeline to recover program logic, using an intermediate representation to apply optimizations before emitting source code. It distinguishes itself through the ability to identify compilers and packers, perform executable unpacking, and reconstruct class hierarchies and original program structures. The framewo
RetDec is a powerful reverse engineering framework that provides essential static analysis, binary lifting, and unpacking capabilities, though it focuses on decompilation rather than providing a built-in dynamic execution environment.
This project is an Android security analysis toolkit and mobile app runtime manipulator designed for reverse engineering and auditing mobile applications. It provides a system for modifying Java classes and method behavior in active mobile processes to bypass security controls. The toolkit includes a web-based interface for controlling the instrumentation engine and a specialized utility for disabling certificate validation to intercept and inspect encrypted network traffic via SSL pinning bypass. It also features an Android file explorer for browsing and managing files within private data di
This toolkit provides robust dynamic analysis and runtime manipulation capabilities specifically for mobile applications, making it a specialized platform for reverse engineering despite its focus on mobile rather than general-purpose malware analysis.
de4dot is a .NET deobfuscator, unpacker, and assembly analysis tool. It is designed to remove obfuscation layers, restore metadata, and simplify bytecode control flow to transform protected binaries back into human-readable code. The project features specialized systems for decrypting strings and constants using both static and dynamic analysis. It identifies specific protection tools through pattern-based detection and strips anti-analysis protections, such as tamper detection and anti-debugging code. The tool provides a suite of reverse engineering capabilities, including binary wrapper un
This tool is a specialized .NET deobfuscator and unpacker that provides essential static and dynamic analysis capabilities for reversing protected binaries, though it is focused specifically on the .NET ecosystem rather than being a general-purpose malware analysis platform.
Angr is a binary analysis framework and static analysis tool used for reverse engineering compiled binaries. It serves as a binary decompiler and a lifting platform that translates machine code into a common intermediate representation to enable cross-architecture analysis. The framework integrates a symbolic execution engine and constraint solvers to determine the inputs required to reach specific program states. It also employs untrusted code sandboxing to isolate guest code from the host environment during analysis. Its capabilities cover control flow and data flow analysis, including the
Angr is a powerful binary analysis framework that provides the static analysis, symbolic execution, and instrumentation capabilities necessary for reverse engineering and understanding complex, obfuscated software.
Retdec is an LLVM-based machine code decompiler and static binary analysis tool designed for binary reverse engineering. It translates binary executable code into high-level representations to facilitate the reconstruction of program logic from compiled machine code. The system utilizes a retargetable frontend architecture and a multi-stage lifting pipeline to convert raw bytes into a common intermediate language. It differentiates custom program logic from known library code through signature-based identification and provides utilities for binary symbol demangling to restore human-readable n
Retdec is a specialized decompiler and static analysis tool that provides the core functionality needed to reverse engineer and understand the logic of obfuscated binaries, though it lacks built-in dynamic analysis and automated reporting features.
Volatility is a memory forensics framework and digital forensics tool designed to extract and analyze evidence from volatile computer memory dumps. It functions as a memory dump parser and analysis platform used to identify running processes, network connections, and loaded modules from a system RAM capture. The framework enables the reconstruction of system state to uncover malicious activity, such as rootkits and injected code, during malware incident response and threat hunting. It provides capabilities for digital forensic investigations to detect unauthorized access and indicators of com
Volatility is a specialized memory forensics framework that provides deep visibility into system state and malicious activity, serving as a critical component for dynamic analysis and incident response even though it focuses on memory dumps rather than file-based unpacking.
Binsider is a collection of specialized toolsets for hexadecimal editing, ELF structural analysis, system call tracing, and execution performance profiling. It provides a suite of utilities designed for binary reverse engineering, encompassing both static structural analysis and dynamic runtime monitoring of compiled binaries. The project distinguishes itself by combining low-level binary manipulation, such as a hex editor for raw byte modification, with an ELF binary analysis tool for inspecting file structures and metadata. It also includes a Linux system call tracer for observing dynamic b
Binsider provides a comprehensive suite of terminal-based utilities for both static ELF structural analysis and dynamic system call tracing, making it a capable tool for binary reverse engineering and behavioral monitoring.
Apktool is an Android APK reverse engineering tool designed to decode application packages into human-readable form and rebuild them after modification. It functions as a Dalvik bytecode disassembler and a resource decoder, transforming binary Android XML and DEX files into editable text and Smali representation. The project serves as an application rebuilder, packing modified resources and Smali code back into a functional Android application package. This capability enables the modification of application logic and resources for testing and deployment. The tool covers a broad surface of an
Apktool is a specialized reverse engineering tool for Android applications that provides essential static analysis and disassembly capabilities for examining obfuscated or modified APK files.
de4dot is a .NET deobfuscator and unpacker designed to reverse obfuscation and restore readable code and metadata within .NET assemblies. It functions as a bytecode analyzer that simplifies control flow, strips anti-debugging protections, and extracts original payloads from packed executable wrappers. The project distinguishes itself through a modular deobfuscation pipeline and a sandbox environment used for dynamic string decryption, which executes decryption methods to replace encrypted strings with plain-text values. It can identify specific obfuscation tools through pattern-based binary a
This tool is a specialized deobfuscator and unpacker for .NET assemblies that provides essential static and dynamic analysis capabilities for reversing protected malicious software. While it focuses specifically on the .NET ecosystem rather than being a general-purpose malware analysis platform, it is a highly effective utility for the unpacking and analysis tasks required.
Detect-It-Easy is a binary file identifier and analysis toolkit designed to determine file formats, compilers, and packers. It functions as a binary file identifier that utilizes signature matching and heuristic analysis to identify executable and archive formats. The project includes a custom file signature engine and a scriptable rule system for defining and applying detection logic to identify specific binary patterns. It features specialized detectors for Android packages, such as APK and DEX files, and a malware packer detector to identify protections, obfuscators, and virus families. T
This toolkit provides robust static analysis, packer identification, and low-level binary inspection capabilities, making it a highly effective utility for the initial stages of malware triage and reverse engineering.
pyinstxtractor is a PyInstaller executable unpacker and Python bytecode recovery tool. It functions as a helper for decompiling compiled Python binaries by extracting bundled binaries and bytecode from executables created with PyInstaller. The project includes a bytecode decryptor to remove encryption from extracted files and a header repair tool that restores corrupted headers. These capabilities ensure that extracted compiled files are compatible with bytecode decompilation software. The utility covers reverse engineering of Python applications, supporting malware analysis workflows throug
This tool is a specialized utility for extracting and recovering Python bytecode from PyInstaller executables, serving as a specific building block for reverse engineering rather than a comprehensive malware analysis platform.
LiME (formerly DMD) is a Loadable Kernel Module (LKM), which allows the acquisition of volatile memory from Linux and Linux-based devices, such as those powered by Android. The tool supports acquiring memory either to the file system of the device or over the network. LiME is unique in that it is the first tool that allows full memory captures from Android devices. It also minimizes its interaction between user and kernel space processes during acquisition, which allows it to produce memory captures that are more forensically sound than those of other tools designed for Linux memory acquisitio
This tool is a specialized memory acquisition module for Linux and Android, which serves as a foundational building block for forensic data collection rather than a comprehensive platform for analyzing or unpacking malicious software.
ImHex is a professional-grade hex editor and binary data analysis platform designed for inspecting, modifying, and reverse engineering raw file contents. It functions as a schema-driven engine that interprets complex binary structures by applying custom definitions to map and visualize byte-level data. The platform distinguishes itself through a dedicated domain-specific language that allows users to define structural schemas for automated file parsing. This capability is supported by a dynamic plugin architecture and an event-driven registry, which enable the integration of external modules
ImHex is a powerful hex editor and binary analysis platform that provides essential static analysis and pattern-matching capabilities for reverse engineering, though it lacks built-in dynamic execution or automated malware reporting features.
pe-sieve is a set of diagnostic tools for scanning Windows process memory to identify malicious implants, shellcode, and hooks. It functions as an in-memory implant detector, malware unpacker, and process callstack analyzer designed to locate and dump memory patches and injected code from running processes. The project identifies advanced evasion techniques, such as process hollowing and reflective injection, by verifying portable executable structures in memory. It distinguishes itself by analyzing process callstacks to detect anomalies and redirections and by reconstructing executable heade
This tool provides specialized capabilities for dynamic unpacking, memory forensics, and identifying injected code, making it a highly effective component for analyzing obfuscated Windows malware.
GEF is a Python-based extension for GDB that serves as a framework for binary analysis, exploit development, and low-level debugging. It functions as a dynamic analysis extension designed to assist in reverse engineering workflows and malware analysis by enhancing the debugger's ability to inspect process state and memory. The project is distinguished by its specialized heap analysis tools, which allow for the inspection of glibc heap arenas, bins, and chunks to detect memory corruption. It also provides a dedicated toolkit for exploit development, including cyclic pattern generation for offs
This is a powerful GDB extension that provides the dynamic analysis and low-level inspection capabilities required for reverse engineering and malware analysis, though it functions as a debugger enhancement rather than a standalone automated analysis platform.
Flare-VM is a collection of scripts and an orchestrator designed to automate the installation and configuration of a reverse engineering toolset on Windows virtual machines. It functions as a provisioning system that deploys a consistent environment for malware analysis and security research on guest operating systems. The project utilizes a configuration manager and a graphical interface to allow for the selection of specific software packages and environment variables. It employs a curated manifest to manage the installation of compatible security tools and modifies system registries and ta
This is a comprehensive provisioning and orchestration platform that automates the setup of a complete malware analysis environment, providing the necessary tools for static and dynamic analysis on Windows.