Reverse Engineering
Radare2 (r2) is a complete open-source framework for reverse engineering and binary analysis. It bundles a disassembler, debugger, hex editor, and scripting engine into a single lightweight command-line toolkit that supports dozens of architectures and executable formats.
sudo apt install radare2
r2 [options] <binary>
Radare2 is a free, open-source command-line framework for reverse engineering and binary analysis. It was created in 2010 by the radareorg project and has grown into one of the most powerful and widely used reverse engineering toolkits in the cybersecurity community. Unlike GUI-heavy tools such as Ghidra or IDA Pro, Radare2 is designed from the ground up as a terminal-native application, which makes it fast, lightweight, scriptable, and perfect for headless servers, SSH sessions, and automated analysis pipelines.
At its core, Radare2 bundles four major capabilities into one toolkit: a multi-architecture disassembler that converts machine code back into human-readable assembly, a built-in debugger for stepping through live program execution, a full-featured hex editor for byte-level inspection and patching, and a scripting engine (r2pipe) that exposes the entire toolkit to Python, Ruby, Node.js, Go, and Lua programs. This combination lets a single tool handle the full reverse engineering workflow without switching applications.
Radare2 supports over 30 processor architectures — including x86, x86-64, ARM, ARM64, MIPS, RISC-V, PowerPC, and SPARC — and every major executable format: ELF (Linux), PE (Windows), Mach-O (macOS and iOS), DEX (Android), Java class files, WebAssembly, and raw firmware blobs. This breadth makes it a go-to tool for malware analysts examining Windows PE files, firmware researchers dissecting embedded device images, and CTF players tackling obscure architecture challenges.
The tool is widely used for CTF competitions, quick binary triage, automated malware analysis, binary patching, exploit development, and embedded system research. Its lightweight design means it starts instantly and runs comfortably on minimal hardware, making it ideal for the Kali Linux environment where resources may be constrained. Whether you are a beginner learning your first disassembly commands or an experienced researcher building automated analysis pipelines, Radare2 provides the depth and flexibility to support your workflow.
r2 -A binaryOpen binary with automatic analysis — the recommended way to start every sessionaaaRun full analysis (analyze all) from inside an open r2 sessionaflList all functions discovered during analysispdf @ mainPrint disassembly of the main functionizList all strings found in data sections of the binarypx 128Print a 128-byte hex dump at the current seek positionaxt @ sym.imp.printfList cross-references (callers) of the printf importVVEnter visual graph mode to navigate the control-flow graph interactivelys 0x00400500Seek (jump) to a specific address in the binaryiiList all imported functions from shared librariesiEList all exported symbols the binary provides/ flag.txtSearch the binary for the string 'flag.txt'Inspect suspicious executables statically: list imports, extract strings, map cross-references, and identify malicious behavior without running the binary.
Solve reverse engineering CTF problems quickly with fast disassembly, visual graph mode, and multi-architecture support for obscure targets.
Audit compiled binaries for vulnerabilities by analyzing function logic, checking input validation, and tracing data flow through cross-references.
Dissect embedded device firmware images, identify bootloader code, and reverse engineer proprietary protocols in raw binary blobs.
Debug running processes locally or remotely, set breakpoints, step through execution, and inspect register and memory state in real time.
Understand how compiled programs work by reading assembly, following control flow, and reconstructing program logic from machine code.
Identify memory corruption vulnerabilities, analyze crash behavior with the debugger, and develop working exploits against vulnerable binaries.
Conduct deep security research on protocols, file formats, and proprietary software by combining static and dynamic analysis in one toolkit.
Reverse Engineering
NSA's free GUI reverse engineering framework with a powerful decompiler and collaborative project support.
Reverse Engineering
The GNU Project debugger for stepping through program execution and analyzing crashes.
Dynamic Instrumentation
Dynamic instrumentation toolkit for hooking functions at runtime on live processes.
Forensics
Firmware analysis tool for extracting embedded filesystems and code from firmware images.
Binary Analysis
Extract printable strings from binaries for quick triage and initial inspection.
Binary Analysis
Disassemble and inspect binary headers from the GNU binutils collection.
Radare2 presents an interactive terminal interface. After running 'afl' you see a numbered table of functions with their addresses, sizes, and names — for example '0x00400546 12 main'. The 'pdf' command outputs a vertical block of assembly instructions with address prefixes, opcodes, and operand annotations. Hex dumps ('px') display raw bytes in a classic offset-hex-ASCII layout. Visual mode ('VV') replaces the terminal with an interactive ASCII-art control-flow graph where nodes represent basic blocks and arrows show jump targets. All output is text-based, which makes it easy to copy, grep, or pipe into other tools.This tool is designed for authorized security testing, educational purposes, and legitimate network administration only. Unauthorized access to computer systems is illegal.