Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
r2frida — Radare2 und Frida besser zusammen. | Kitploit
Tools/GitHubGitHub/nowsecure/r2frida
Android-SicherheitStatische AnalyseDynamische Analyse (Sandboxing)iOS-SicherheitReverse EngineeringDebuggerPenetrationstestsMobile SicherheitBinäranalyse
GitHubnowsecure/r2frida

r2frida

Radare2 und Frida besser zusammen.

1.4k140vor 9 TagenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
Repository anzeigen

r2frida

Radare2 und Frida besser zusammen ci radare2

Beschreibung

Eigenständiges Plugin für radare2, das frida mitbringt und es ermöglicht, lokale oder entfernte Prozesse mit r2-Befehlen anstelle (aber nicht ausschließlich) von Frida-Skripten zu instrumentieren.

Das radare-Projekt bietet eine vollständige Toolchain für Reverse Engineering, wird aktiv gepflegt und stellt gut gewartete Funktionalitäten bereit und erweitert seine Funktionen mit anderen Programmiersprachen und Werkzeugen.

Frida ist ein dynamisches Instrumentierungs-Toolkit, das es einfach macht, laufende Prozesse zu inspizieren und zu manipulieren, indem Sie Ihr eigenes JavaScript injizieren und optional auch mit Ihren Skripten kommunizieren.

Features

  • Führen Sie unveränderte Frida-Skripte aus (Verwenden Sie den Befehl :.)
  • Führen Sie Code-Snippets in C, Javascript oder TypeScript in jedem Prozess aus
  • Kann an lokale oder entfernte Systeme anfügen, spawnen oder starten
  • Sektionen, Symbole, Exporte, Protokolle, Klassen, Methoden auflisten
  • Nach Werten im Speicher innerhalb des Agents oder vom Host aus suchen
  • Methodenimplementierungen ersetzen oder Hooks mit kurzen Befehlen erstellen
  • Bibliotheken und Frameworks in den Zielprozess laden
  • Unterstützung für Dalvik, Java, ObjC, Swift und C-Schnittstellen
  • Dateideskriptoren und Umgebungsvariablen manipulieren
  • Signale an den Prozess senden, fortsetzen, Haltepunkte
  • Das r2frida io-Plugin ist auch ein Dateisystem-fs- und debug-Backend
  • Automatisieren Sie r2 und frida mit r2pipe
  • Prozessspeicher lesen/schreiben
  • Funktionen, Syscalls und rohe Code-Snippets aufrufen
  • Über USB oder TCP/IP mit frida-server verbinden
  • Apps und Prozesse aufzählen
  • Register und Funktionsargumente verfolgen
  • Getestet auf x64, arm32 und arm64 für Linux, Windows, macOS, iOS und Android
  • Erfordert keine Installation von frida auf dem Host (keine Notwendigkeit für frida-tools)
  • Erweitern Sie die r2frida-Befehle mit Plugins, die im Agent laufen
  • Seitenberechtigungen ändern, Code und Daten patchen
  • Symbole nach Namen oder Adresse auflösen und als Flags in r2 importieren
  • r2-Befehle vom Agent aus auf dem Host ausführen
  • r2-APIs verwenden und r2-Befehle im entfernten Zielprozess ausführen.
  • Native Haltepunkte mit der :db-API
  • Auf entfernte Dateisysteme mit der r_fs-API zugreifen.

Installation

Die empfohlene Methode zur Installation von r2frida ist über r2pm:

root@kitploit:~
$ r2pm -ci r2frida

Binäre Builds, die keine Kompilierung erfordern, werden bald in r2pm und r2env unterstützt. In der Zwischenzeit können Sie die letzten Builds von der Releases-Seite herunterladen.

Kompilierung

Abhängigkeiten

  • radare2
  • pkg-config (nicht erforderlich unter Windows)
  • curl oder wget
  • make, gcc
  • npm, nodejs (wird bald entfernt)

In GNU/Debian müssen Sie die folgenden Pakete installieren:

root@kitploit:~
$ sudo apt install -y make gcc libzip-dev nodejs npm curl pkg-config git

Anleitung

root@kitploit:~
$ git clone https://github.com/nowsecure/r2frida.git
$ cd r2frida
$ make
$ make user-install

Windows

  • Installieren Sie meson und Visual Studio
  • Entpacken Sie das neueste radare2-Release-Zip im r2frida-Stammverzeichnis
  • Benennen Sie es in radare2 um (anstelle von radare2-x.y.z)
  • Um den VS-Compiler im PATH verfügbar zu machen (preconfigure.bat)
  • Führen Sie configure.bat und dann make.bat aus

Verwendung

Zum Testen verwenden Sie r2 frida://0, da das Anhängen an die pid0 in frida eine spezielle Sitzung ist, die lokal läuft. Jetzt können Sie den Befehl :? ausführen, um die Liste der verfügbaren Befehle zu erhalten.

root@kitploit:~
$ r2 'frida://?'
r2 frida://[action]/[link]/[device]/[target]
* action = list | apps | attach | spawn | launch
* link   = local | usb | remote host:port
* device = '' | host:port | device-id
* target = pid | appname | process-name | program-in-path | abspath
Local:
* frida://?                        # show this help
* frida://                         # list local processes
* frida://0                        # attach to frida-helper (no spawn needed)
* frida:///usr/local/bin/rax2      # abspath to spawn
* frida://rax2                     # same as above, considering local/bin is in PATH
* frida://spawn/$(program)         # spawn a new process in the current system
* frida://attach/(target)          # attach to target PID in current host
USB:
* frida://list/usb//               # list processes in the first usb device
* frida://apps/usb//               # list apps in the first usb device
* frida://attach/usb//12345        # attach to given pid in the first usb device
* frida://spawn/usb//appname       # spawn an app in the first resolved usb device
* frida://launch/usb//appname      # spawn+resume an app in the first usb device
Remote:
* frida://attach/remote/10.0.0.3:9999/558 # attach to pid 558 on tcp remote frida-server
Umgebung: (Verwenden Sie den Befehl `%`, um die Umgebung zur Laufzeit zu ändern)
  R2FRIDA_SAFE_IO=0|1              # Workaround für einen Frida-Fehler unter Android/thumb
  R2FRIDA_DEBUG=0|1                # Wird verwendet, um das Verhalten der Argumentanalyse zu debuggen
  R2FRIDA_COMPILER_DISABLE=0|1     # Deaktiviert den neuen Frida TypeScript-Compiler (`:. foo.ts`)
  R2FRIDA_AGENT_SCRIPT=[file]      # Pfad zur Datei des r2frida-Agents

Beispiele

root@kitploit:~
$ r2 frida://0     # same as frida -p 0, connects to a local session

Sie können an jedes Programm nach Namen oder PID anfügen, spawnen oder starten. Die folgende Zeile wird an den ersten Prozess namens rax2 anfügen (führen Sie rax2 - in einem anderen Terminal aus, um diese Zeile zu testen)

root@kitploit:~
$ r2 frida://rax2  # attach to the first process named `rax2`
$ r2 frida://1234  # attach to the given pid

Die Verwendung des absoluten Pfads einer Binärdatei zum Spawnen wird den Prozess spawnen:

root@kitploit:~
$ r2 frida:///bin/ls
[0x00000000]> :dc        # continue the execution of the target program

Funktioniert auch mit Argumenten:

root@kitploit:~
$ r2 frida://"/bin/ls -al"

Für USB-Debugging von iOS/Android-Apps verwenden Sie diese Aktionen. Beachten Sie, dass spawn durch launch oder attach ersetzt werden kann und der Prozessname die Bundle-ID oder die PID sein kann.

root@kitploit:~
$ r2 frida://spawn/usb/         # enumerate devices
$ r2 frida://spawn/usb//        # enumerate apps in the first iOS device
$ r2 frida://spawn/usb//Weather # Run the weather app

Befehle

Dies sind die häufigsten Befehle, also sollten Sie sie lernen und mit ? versehen, um Hilfe zu Unterbefehlen zu erhalten.

root@kitploit:~
:i        # get information of the target (pid, name, home, arch, bits, ..)
.:i*      # import the target process details into local r2
:?        # show all the available commands
:dm       # list maps. Use ':dm|head' and seek to the program base address
:iE       # list the exports of the current binary (seek)
:dt fread # trace the 'fread' function
:dt-*     # delete all traces

Plugins

r2frida-Plugins laufen auf der Agent-Seite und werden mit der r2frida.pluginRegister-API registriert.

Siehe das Verzeichnis plugins/ für weitere Beispiel-Plugin-Skripte.

root@kitploit:~
[0x00000000]> cat example.js
r2frida.pluginRegister('test', function(name) {
  if (name === 'test') {
    return function(args) {
      console.log('Hello Args From r2frida plugin', args);
      return 'Things Happen';
    }
  }
});
[0x00000000]> :. example.js   # load the plugin script

Der Befehl :. funktioniert wie der r2-Befehl ., läuft aber innerhalb des Agents.

root@kitploit:~
:. a.js  # run script which registers a plugin
:.       # list plugins
:.-test  # unload a plugin by name
:.. a.js # eternalize script (keeps running after detach)

Termux

Wenn Sie r2frida nativ auf Android über Termux installieren und verwenden möchten, gibt es einige Fallstricke mit den Bibliotheksabhängigkeiten aufgrund einiger Symbolauflösungen. Der Weg, dies zum Laufen zu bringen, besteht darin, die Umgebungsvariable LD_LIBRARY_PATH so zu erweitern, dass sie vor dem Termux-libdir auf das Systemverzeichnis zeigt.

$ LD_LIBRARY_PATH=/system/lib64:$LD_LIBRARY_PATH r2 frida://...

Fehlerbehebung

Stellen Sie sicher, dass Sie eine moderne Version von r2 verwenden (vorzugsweise die neueste Version oder git).

Führen Sie r2 -L | grep frida aus, um zu überprüfen, ob das Plugin geladen ist. Wenn nichts ausgegeben wird, verwenden Sie die Umgebungsvariable R2_DEBUG=1, um einige Debug-Nachrichten zu erhalten, um den Grund herauszufinden.

Wenn Sie Probleme beim Kompilieren von r2frida haben, können Sie r2env verwenden oder die Release-Builds von der GitHub-Releases-Seite herunterladen. Beachten Sie, dass nur die MAJOR.MINOR-Version übereinstimmen muss, d.h. r2-5.7.6 kann jedes Plugin laden, das mit einer Version zwischen 5.7.0 und 5.7.8 kompiliert wurde.

Design

root@kitploit:~
 +---------+
 | radare2 |     The radare2 tool, on top of the rest
 +---------+
      :
 +----------+
 | io_frida |    r2frida io plugin
 +----------+
      :
 +---------+
 |  frida  |     Frida host APIs and logic to interact with target
 +---------+
      :
  +-------+
  |  app  |      Target process instrumented by Frida with Javascript
  +-------+

Danksagungen

Dieses Plugin wurde von pancake aka Sergi Alvarez (dem Autor von radare2) für NowSecure entwickelt.

Ich möchte Ole André dafür danken, dass er Frida geschrieben und gewartet hat, und dafür, dass er so freundlich war, proaktiv Fehler zu beheben und technische Details zu allem zu besprechen, was nötig war, um diese Vereinigung zum Funktionieren zu bringen. Kudos

Tool herunterladen