
Reines Python-Assembler-Werkzeugset zum Erstellen von Shellcode, dynamischen Patchen von Binärdateien und Instrumentieren von Firmware-Images für Debugging und Fuzzing auf ARM-, PPC-, RISC-V- und IA-32-Architekturen.
Flopz ist ein Assembler-Toolkit, das in reinem Python geschrieben ist. Verwenden Sie es, um:
Wenn Sie eine weitere implementierte Architektur sehen möchten, zögern Sie nicht, uns jederzeit zu kontaktieren – wir machen das gerne!
Anstatt nur Assembler-Strings in Bytes umzuwandeln, zielt Flopz darauf ab, das interaktive Patchen und Instrumentieren von Firmware zu erleichtern. Dazu bietet es eine Low-Level-API für Anweisungen und Register, die es Ihnen ermöglicht, Shellcode, Module und Funktionen direkt in Python zu erstellen, ohne sich mit Zeichenketten der Assembler-Syntax befassen zu müssen.
Beim Testen der Sicherheit eingebetteter Systeme ist kein Gerät wie das andere: Aus diesem Grund bieten wir einen objektorientierten Ansatz zur Definition benutzerdefinierter Ziele, sodass so viele Komponenten wie möglich über Projekte hinweg wiederverwendet werden können, die verschiedene Geräte und Prozessorarchitekturen umfassen.
Da Flopz von Grund auf in reinem Python geschrieben wurde, unterstützt es möglicherweise nicht so viele Architekturen wie andere Tools (wie z. B. solche, die auf Clang/LLVM basieren). Unser Ziel ist es jedoch, genau die Architekturen abzudecken, die für Sicherheitsexperten im Bereich eingebetteter Systeme wichtig sind und die möglicherweise nicht von anderen Tools abgedeckt werden. Außerdem wird die Erweiterung von Flopz durch einen gepflegten Satz von Unit-Tests und eine Code-Dokumentation weniger herausfordernd.
Flopz soll mit anderen Tools zusammenarbeiten. Insbesondere gibt es eine Ghidra-Erweiterung, die Ihnen hilft, Firmware direkt in Ghidra zu instrumentieren.
Die bereitgestellte Dokumentation erleichtert die Arbeit mit Flopz und die Verwendung seiner Schnittstelle in Ihren Projekten.