
UNIX-ähnliches Reverse-Engineering-Framework und Kommandozeilen-Toolset
<a href="https://radare.org/"><img border=0 src="https://assets.kitploit.com/production/public/readmes/3006/3a698148c5a0a1bc714cb3ac4439316f08cf2349b8cd75366bc1b9d2bf7f9c22.png" alt="screenshot" align="left" width="128px"></a>
## Radare2: Freies Reverse-Engineering-Framework für Unix-Geeks
[](https://github.com/radareorg/radare2/actions/workflows/ci.yml?query=branch%3Amaster) [](https://github.com/radareorg/radare2/actions/workflows/build.yml?query=branch%3Amaster) [](https://github.com/radareorg/radare2/actions/workflows/tcc.yml)
[](https://bestpractices.coreinfrastructure.org/projects/741) [](https://scan.coverity.com/projects/416) [](https://discord.gg/YBey7CR9jf)
Der aktuelle `master`-Branch von Git ist `6.2.5`, die nächste Veröffentlichung wird `6.2.6` sein.
### Beschreibung
r2 ist eine vollständige Neufassung von radare. Es bietet eine Reihe von Bibliotheken, Werkzeugen und
Plugins, um Reverse-Engineering-Aufgaben zu erleichtern. Vertrieben unter LGPLv3, obwohl
jedes Plugin unterschiedliche Lizenzen haben kann (siehe `r2 -Lj` für Details)
Das **radare**-Projekt begann als einfacher Kommandozeilen-Hexadezimal-Editor
mit Schwerpunkt auf Forensik. Heute ist r2 ein voll funktionsfähiges Low-Level-Kommandozeilen-Werkzeug
mit Unterstützung für Skripting mit dem eingebetteten Javascript-Interpreter oder über r2pipe.
r2 kann Dateien auf lokalen Festplatten bearbeiten, Kernel-Speicher anzeigen und Programme
lokal oder über entfernte gdb/windbg-Server debuggen. Die breite Architekturunterstützung von r2 ermöglicht
es Ihnen, jede Binärdatei zu analysieren, zu emulieren, zu debuggen, zu modifizieren und zu disassemblieren.
<p align="center">
<a href="https://www.radare.org/"><img src="https://assets.kitploit.com/production/public/readmes/3006/c19b136adc5b00ffa9e295f2624beea0f7fb78e36cfa8081c31116b9a5723a85.png" alt="screenshot" align="center" border=0 width="600px"></a>
</p>
## Installation
Laden Sie die letzten [veröffentlichten](https://github.com/radareorg/radare2/releases) Binärdateien herunter.
Die empfohlene Methode zur Installation von radare2 ist aus der Git-Repository-Quelle:
```sh
git clone https://github.com/radareorg/radare2
radare2/sys/install.sh
```
* Führen Sie `sys/install.sh` für die Standardinstallation mit acr+make+symlink aus
* meson/ninja (muon/samu funktioniert ebenfalls) und make-Builds werden unterstützt.
### Nix
radare2 bietet Nix-Paketierung unter [`dist/nix`](https://github.com/radareorg/radare2/blob/master/dist/nix/README.md) an.
### Quellcode-Build
* r2 kann aus `git` oder über `pip` mit `r2env` installiert werden.
* Windows-Builds erfordern meson und msvc oder mingw als Compiler
* Um den aktuellen Build von r2 zu deinstallieren, führen Sie `make uninstall` aus
* Um ALLE Systeminstallationen von r2 zu deinstallieren, führen Sie aus: `sudo make purge`
Unter Windows verwenden Sie die .bat-Skripte und msvc:
```bat
preconfigure.bat REM setup python, meson, ninja
configure.bat REM run meson b + vs project
make.bat REM run ninja -C b
prefix\bin\radare2.exe
```
## Beliebte Plugins:
Mit dem `r2pm`-Tool können Sie viele Plugins und Tools durchsuchen und installieren, die radare2 verwenden.
* [iaito](https://github.com/radareorg/iaito): Die offizielle grafische Qt-Oberfläche
* [keystone](https://github.com/radareorg/radare2-extras/tree/master/keystone) Assembler-Anweisungen unter Verwendung der Keystone-Bibliothek
* [decai](https://github.com/radareorg/r2ai) Decompiler auf Basis von KI
* [r2ai](https://github.com/radareorg/r2ai) Führen Sie ein Sprachmodell in localhost mit Llama innerhalb von r2 aus!
* [r2dec](https://github.com/wargio/r2dec-js): Ein auf r2 basierender Decompiler, geschrieben in JS, aufrufbar mit dem Befehl `pdd`
* [r2diaphora](https://github.com/FernandoDoming/r2diaphora): [Diaphora](https://github.com/joxeankoret/diaphora)s Binärdiffing-Engine auf Basis von radare2
* [r2flutter](https://github.com/trufae/r2flutter): Dart/Flutter-AOT-Snapshot-Analyse für Android- und iOS-Apps
* [r2frida](https://github.com/nowsecure/r2frida): Das frida-io-Plugin. Starten Sie r2 mit `r2 frida://0`, um es zu verwenden
* [r2ghidra](https://github.com/radareorg/r2ghidra): Der eigenständige native ghidra-Decompiler, aufrufbar mit `pdg`
* [r4ghidra](https://github.com/radareorg/r4ghidra): Erleben Sie die radare-Freude in Ihrem Ghidra
* [r2papi](https://github.com/radareorg/radare2-r2papi) High-Level-API auf Basis von r2pipe
* [r2pipe](https://github.com/radareorg/radare2-r2pipe) Skripten Sie radare2 aus jeder Programmiersprache
* [r2poke](https://github.com/radareorg/radare2-extras/tree/master/r2poke) Integration mit GNU/Poke für erweiterte Binärparsing-Fähigkeiten
* [goresym](https://github.com/hanemile/radare2-GoReSym): GoReSym-Symbole als Flags importieren
* [r2yara](https://github.com/radareorg/r2yara) Yara aus r2 ausführen oder r2-Primitiven aus Yara verwenden
* [radius2](https://github.com/radareorg/radius2): Eine schnelle symbolische Ausführungsengine auf Basis von boolector und esil
* [r2sarif](https://github.com/radareorg/r2sarif) SARIF-Dokumente importieren/erweitern/exportieren
* [r2hermes](https://github.com/radareorg/r2hermes) Disassembler und Analysator für React Native Hermes-Bytecode
* [r2renef](https://github.com/Ahmeth4n/r2renef) Renef-IO-Plugin für Radare2 - Dynamische Android-Instrumentierung
* [r2unity](https://github.com/radareorg/r2unity): Unity-IL2CPP-Metadaten und native Binärdateien aus radare2 inspizieren
* [warrp](https://github.com/radareorg/warrp) Natives radare2-Plugin für das WARP-Format von binary ninja
## Verwendung
Dies sind die ersten Schritte zur Verwendung von r2; lesen Sie das Buch oder suchen Sie nach Tutorials für weitere Details
```sh
$ r2 /bin/ls # open file in read-only
> aaa # analyse the program (r2 -A)
> afl # list all functions (try aflt, aflm)
> px 32 # print 32 byte hexdump current block
> s sym.main # seek to main (using flag name)
> f~foo # filter flags matching 'foo' (internal |grep)
> iS;is # list sections and symbols (rabin2 -Ss)
> pdf; agf # disassembly and ascii-art function graph
> oo+;w hello # reopen in read-write and write a string
> ?*~... # interactive filter in all command help
> q # quit
```
Viele Plugins sind standardmäßig in r2 enthalten. Du kannst seine Fähigkeiten jedoch
mit dem Paketmanager [r2pm](https://github.com/radareorg/radare2-pm) erweitern.
```sh
r2pm -s <word> # search packages matching a word
r2pm -Uci <pkg> # update database and clean install a package
r2pm -u <pkg> # uninstall the given package
r2pm -l <pkg> # list installed packages
```
## Ressourcen
* [Offizielles Buch](https://book.rada.re): Lesen Sie über die Verwendung von r2
* [COMMUNITY.md](https://github.com/radareorg/radare2/blob/master/COMMUNITY.md): Community-Engagement und lockere Richtlinien
* [CONTRIBUTING.md](https://github.com/radareorg/radare2/blob/master/CONTRIBUTING.md): Informationen zum Melden von Problemen und
zum Mitwirken. Siehe auch [Contributing](#contributing)
* [DEVELOPERS.md](https://github.com/radareorg/radare2/blob/master/DEVELOPERS.md): Entwicklungsrichtlinien für r2
* [SECURITY.md](https://github.com/radareorg/radare2/blob/master/SECURITY.md): Anweisungen zum Melden von Sicherheitslücken
* [USAGE.md](https://github.com/radareorg/radare2/blob/master/USAGE.md): Einige Beispielbefehle
* [INSTALL.md](https://github.com/radareorg/radare2/blob/master/INSTALL.md): Installationsanweisungen mit make oder meson
## Dokumentation
Erfahren Sie mehr über r2, indem Sie [YouTube-Vorträge](https://www.youtube.com/c/r2con) von [r2con](https://rada.re/con) ansehen. Es gibt auch viele Blogbeiträge, Foliensätze und das [offizielle radare2-Buch](https://book.rada.re), aber es ist immer eine gute Idee, einem der offiziellen Chats beizutreten und dort Ihre Fragen oder Ihr Feedback zu hinterlassen.
## Community
* Website: [https://www.radare.org/](https://www.radare.org/)
* Discord: [Server](https://discord.gg/YBey7CR9jf)
* Mastodon: [@radareorg](https://infosec.exchange/@radareorg)
* Telegram: [Haupt-](https://t.me/radare) und [Neben-](https://t.me/radare_side)Kanäle
* [irc.libera.chat](https://libera.chat): `#radare`, `#radare_side`
* [Matrix](https://matrix.to/#/#radare:matrix.org): `#radare:matrix.org`
# Unterstützte Plattformen
## Betriebssysteme
Windows (seit XP für x86/x64/arm64), Linux, Darwin, GNU/Hurd, Apples {Mac,i,iPad,watch}OS,
Android, Wasmer, [Dragonfly, Net, Free, Open] BSD, Z/OS, QNX, SerenityOS, Solaris, AIX,
Haiku, Vinix, FirefoxOS.
## Architekturen
i386, x86-64, Alpha, ARM, AVR, BPF, sBPF, MIPS, PowerPC, SPARC, RISC-V, SH, m68k,
S390, XCore, CR16, HPPA, ARC, Blackfin, Z80, H8/300, V810, PDP11, m680x, V850,
CRIS, XAP (CSR), PIC, LM32, 8051, 6502, i4004, i8080, Propeller, EVM, OR1K
Tricore, CHIP-8, LH5801, T8200, GameBoy, SNES, SPC700, MSP430, Xtensa, xcore,
NIOS II, Java, Dalvik, Pickle, WebAssembly, MSIL, EBC, TMS320 (c54x, c55x,
c55+, c64x), Hexagon, Brainfuck, Malbolge, whitespace, DCPU16, LANAI, lm32,
MSIL, InfernoDis, UXN, Cosmac, PythonBytecode, Sharp sm5xx MCPus, FreeScale QIQa,
MCORE, mcs96, RSP, SuperH-4, VAX, KVX, Am29000, LOONGARCH, JDH8, s390x, STM8.
## Dateiformate
ELF, Mach-O, Fatmach-O, PE, PE+, MZ, COFF, XCOFF, OMF, TE, XBE, SEP64, BIOS/UEFI, BFLT, Pebble apps,
Apple Dyldcache, Kernelcache, MCLF trustlets, DEX, ART, Java class, Android boot image, Plan9 executables, Amiga HUNK,
ZIMG, MBN/SBL bootloader, ELF coredump, MDMP (Windows minidump), PDP11, XTAC, CGC, DotNet,
WASM (WebAssembly binary), Commodore VICE emulator, DOL, QNX, WAD, OFF, TIC-80,
GB/GBA, PSX, PRG (C64), Apple Classic PEF, NDS, z64, und N3DS
...
## Dateisysteme
Mehrere Dateisysteme im Userland einbinden, wie NTFS, FAT, HFS+, EXT, APFS, BeosFS, BFS, MINIX, ReiserFS, SFS, ubifs, ufs, jfs, ISO9660, UDF, xfs
## Paketierungsstatus
* [](https://snapcraft.io/radare2)
* [](https://repology.org/project/radare2/versions)
* [](https://repology.org/project/radare2/versions) [](https://repology.org/project/radare2/versions)
* [](https://repology.org/project/radare2/versions)
* [](https://repology.org/project/radare2/versions) [](https://repology.org/project/radare2/versions)
* [](https://repology.org/project/radare2/versions) [](https://repology.org/project/radare2/versions)
* [](https://repology.org/project/radare2/versions) [](https://repology.org/project/radare2/versions)