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
qualcomm_baseband_scripts — Sammlung von Skripten zum Reverse Engineering von Qualcomm-Hexagon-Basisband-/Modem-Firmware | Kitploit
Tools/GitHubGitHub/mzakocs/qualcomm_baseband_scripts
Embedded-System-SicherheitReverse EngineeringMobile SicherheitBinäranalyseFirmware-Analyse
GitHubmzakocs/qualcomm_baseband_scripts

qualcomm_baseband_scripts

Sammlung von Skripten zum Reverse Engineering von Qualcomm-Hexagon-Basisband-/Modem-Firmware

Repository anzeigen
191244vor 3 JahrenVon 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

qualcomm_baseband_scripts

Sammlung von Skripten zum Reverse Engineering der Qualcomm-Baseband-/Modem-Firmware

Alle Offsets/Adressen in den Skripten wurden auf die Pixel-5-März-Firmware aktualisiert und müssen geändert werden, wenn du eine andere Version verwendest.

Zusammenführen

merge_modem_firmware.py führt alle modem.b**-Dateien (modem.b00, modem.b01, usw.) zu einer einzigen monolithischen Binärdatei namens modem.bin zusammen. Das macht es viel einfacher, sie in IDA und Ghidra zu laden.

Dekomprimierung

clade_extractor und dlpage_extractor dekomprimieren die mit CLADE und Delta komprimierten Abschnitte.

clade_extractor wird für x86 (oder deine native Architektur) kompiliert und gibt den dekomprimierten Abschnitt in eine Datei aus. Meines Wissens gibt es abgesehen vom Patent keine öffentlich verfügbaren Informationen oder veröffentlichten Code zur Qualcomm-CLADE-Kompression. CLADE hat q6zip als Hauptkomprimierungsmethode für Benutzermodule abgelöst und ist mühsam zu reversen, da es größtenteils in Hardware implementiert ist.

dlpage_extractor wird für Hexagon kompiliert und in QEMU emuliert (wie in früheren Arbeiten). Der dekomprimierte Speicher muss dann in GDB ausgedumpt werden. Es gibt hier auch Code für die alte q6zip-Komprimierungsmethode, die bei neueren Modem-Binärdateien allerdings nicht mehr verwendet wird. Der Delta-Abschnitt enthält nur ein paar Diag-Befehlshandler-Strukturen, daher steckt der meiste Inhalt im CLADE-komprimierten Abschnitt. Ich würde mir das bei neueren Binärdateien gar nicht erst antun; das ist nur für ältere gedacht.

Erneut zusammenführen

Sobald du den dekomprimierten CLADE-Abschnitt hast, kannst du add_decompressed_section_to_modem_bin.py ausführen, um ihn zu modem.bin hinzuzufügen. Das kann manuell in IDA und Ghidra erledigt werden, aber dieses Skript erleichtert das Laden und Sichern der finalen Binärdateien.

Reverse Engineering

qshrink4_qdb_ghidra_script.py dekodiert alle Aufrufe von msg_v4_send* in die jeweiligen Debug-Zeichenketten. Es fügt am Anfang jeder Funktion, die diese verwendet, einen Kommentar hinzu. Diese Debug-Zeichenketten sind beim Reverse Engineering unglaublich nützlich, da sie immer den Dateinamen und etwas Kontext für die Funktion liefern. Noch besser: Sie enthalten manchmal Funktionsnamen, Variablennamen und mehr. Sieh dir den Dateipfad an, der geöffnet wird, um Hilfe beim Abrufen der qdb-Datei aus der Pixel-5-Firmware-Datei zu erhalten. Extrahiere einfach weiter mit binwalk, bis du bekommst, was du brauchst.

diag_handler_locator_ghidra_script.py findet alle Diag-Befehlshandlerfunktionen und benennt sie nach dem Schema <op1>_<op2>_diag_cmd_handler um, damit sie in Ghidra leichter zu durchsuchen sind.

Danksagung

Einige der Skripte enthalten Code aus anderen Quellen. Ich habe versucht, alles zu würdigen, aber ich könnte das eine oder andere vergessen haben. Bitte lass es mich wissen, falls ich deinen Code verwendet und vergessen habe, dich zu erwähnen.

Falls dir dieses Repo geholfen hat, gib ihm bitte einen ⭐!

Tool herunterladen