
ARM、PPC、RISC-V、IA-32アーキテクチャ向けの、シェルコード作成、バイナリの動的パッチ適用、ファームウェアイメージのデバッグ・ファジング用計装を行うための純粋Pythonアセンブラツールキット。
Flopzは純粋なPythonで書かれたアセンブラツールキットです。以下の用途に使用できます:
別のアーキテクチャの実装を希望される場合は、いつでもお気軽にご連絡ください。喜んで対応いたします!
単にアセンブリ文字列をバイトに変換するだけでなく、Flopzはインタラクティブなパッチ適用やファームウェアのインストルメントを容易にすることを目的としています。そのために、低レベルの命令とレジスタAPIを提供し、アセンブリ構文の文字列を扱うことなく、Pythonで直接シェルコード、モジュール、関数を構築できます。
組み込みセキュリティテストでは、デバイスはそれぞれ異なります。そのため、カスタムターゲットを定義するためのオブジェクト指向アプローチを提供し、異なるデバイスやプロセッサアーキテクチャを含むプロジェクト間で可能な限り多くのコンポーネントを再利用できるようにしています。
Flopzは純粋なPythonでゼロから書かれているため、他のツール(Clang/LLVMベースのものなど)ほど多くのアーキテクチャをサポートしていないかもしれません。しかし、私たちの目標は、他のツールではカバーされていない、組み込みセキュリティ関係者にとって重要なアーキテクチャを正確にカバーすることです。また、Flopzの拡張は、メンテナンスされた単体テストとコードドキュメントのセットによって容易になっています。
Flopzは他のツールと連携して動作することを意図しています。特に、Ghidra拡張があり、Ghidra内で直接ファームウェアをインストルメントするのに役立ちます。
提供されているドキュメントにより、Flopzの操作やプロジェクトでのインターフェースの使用が容易になります。