Zum Inhalt

Akheron Proxy Cheatsheet

Akheron Proxy Cheatsheet

Überblick

Akheron Proxy ist ein Open-Source-Kommunikationsproxy-Tool für serielle Kommunikation, entwickelt von Rapid7. Es wurde entwickelt, um Datenverkehr von eingebetteten Geräten zu erfassen, zu dekodieren, zu fuzzen und wiederzugeben. Es wurde auf dem Black Hat USA 2025 Arsenal vorgestellt.

Hauptmerkmale

  • Serieller Kommunikationsproxy: Abfangen und Analysieren serieller Kommunikation zwischen eingebetteten Geräten.
  • Verkehrserfassung: Erfassen und Protokollieren aller über die serielle Verbindung übertragenen Daten.
  • Protokoll-Dekodierung: Dekodieren und Zerlegen verschiedener serieller Protokolle.
  • Fuzzing: Senden fehlerhafter Daten zum Testen von Schwachstellen in der Firmware des Geräts.
  • Replay-Angriffe: Wiedergabe aufgezeichneten Datenverkehrs zum Testen von Replay-Schwachstellen.
  • Erweiterbar: Kann mit benutzerdefinierten Protokoll-Decodern und Fuzzing-Modulen erweitert werden.

Funktionsweise

Akheron Proxy positioniert sich zwischen zwei eingebetteten Geräten (oder einem Gerät und einem Hostcomputer) und fängt die serielle Kommunikation zwischen ihnen ab. Es ermöglicht Ihnen, die Daten in Echtzeit zu betrachten, zu modifizieren und wiederzugeben.

Installation

# (Note: Specific installation instructions will be available in the official repository)

# Example installation (replace with actual commands)
git clone https://github.com/rapid7/akheron-proxy.git
cd akheron-proxy
pip install -r requirements.txt

Verwendung

# Example usage (replace with actual commands)

# Start the proxy and listen on two serial ports
python akheron-proxy.py --port1 /dev/ttyUSB0 --port2 /dev/ttyUSB1

# Capture traffic to a file
python akheron-proxy.py --port1 /dev/ttyUSB0 --port2 /dev/ttyUSB1 --capture-file traffic.pcap

# Fuzz a device with a specific fuzzing module
python akheron-proxy.py --port1 /dev/ttyUSB0 --port2 /dev/ttyUSB1 --fuzz-module my_fuzzer

Häufige Anwendungsfälle

  • Sicherheitsaudits für eingebettete Geräte: Bewertung der Sicherheit von IoT und anderen eingebetteten Geräten.
  • Schwachstellenforschung: Entdecken neuer Schwachstellen in Firmware eingebetteter Geräte.
  • Hardware-Hacking: Analyse und Manipulation serieller Kommunikation für Hardware-Hacking-Projekte.
  • Protokoll-Reverse-Engineering: Reverse-Engineering unbekannter serieller Protokolle.

Erstellen benutzerdefinierter Module

Akheron Proxy ist so konzipiert, dass es erweiterbar ist. Sie können eigene Python-Module schreiben, um Unterstützung für neue Protokolle hinzuzufügen oder benutzerdefinierte Fuzzing-Logik zu erstellen.

# my_decoder.py (example protocol decoder)

from akheron.protocol import Protocol

class MyProtocol(Protocol):
    def decode(self, data):
        # Your decoding logic here
        return decoded_data

Zusätzliche Ressourcen