12 ポイント 投稿者 GN⁺ 2025-03-28 | 1件のコメント | WhatsAppで共有
  • ghidraMCP は、大規模言語モデル(LLM)がアプリケーションを自律的にリバースエンジニアリングできるよう支援する Model Context Protocol (MCP) サーバー
  • Ghidra の中核機能を MCP クライアントに公開し、LLM が分析ツールを直接活用できるようにする
  • 既存の手動分析プロセスを自動化することで、リバースエンジニアリングの速度と効率の向上に貢献
  • AI ベースのセキュリティ分析、マルウェア解析、バイナリデバッグなど、さまざまな分野で活用可能

主な機能

  • MCP サーバーおよび Ghidra プラグイン構成
    • LLM と Ghidra 間の接続インターフェースを提供
    • Ghidra の機能を API 形式で MCP プロトコルに公開
  • バイナリのデコンパイルと解析
    • Ghidra を通じて ELF、PE などさまざまな形式の実行ファイルをデコンパイルし、解析を実行
  • メソッド名およびデータ名の自動命名
    • 難読化されている、または名前のないメソッドやデータに意味のある名前を自動付与
    • コードの可読性と解析速度を向上
  • コード構造の参照機能
    • メソッド、クラス、import および export の一覧を抽出
    • コードフローおよび依存関係の分析に有用

1件のコメント

 
GN⁺ 2025-03-28
Hacker Newsの意見
  • いつか、あらゆるプロプライエタリなバイナリをソースコードに変換できるツールが生まれてほしいという意見がある。すべてのゲームの「オープンソース」版を持てたら面白そうだ

    • 現在も OpenGothicopenage のようなプロジェクトはあるが、これはコミュニティによる長年の努力を必要とする
  • LLMがコードを扱うにはASTネイティブであるべきだと思う。コードはツリー構造なのに、私たちはそれを線形のままモデルに入力している

    • 今日のモデルは反復性や真の記憶力が不足しており、階層構造を効果的に推論できない
  • 現在MCPを呼び出せるツールについての質問がある。ClaudeのデスクトップアプリケーションがMCPをローカルで使えることを知った

    • リモートでMCPを使えるチャットインターフェースがあるのか気になっている
    • ChatGPT、Claude、GeminiのWebインターフェースでMCPエンドポイントと機能を指定し、サーバーをリモートで呼び出せるようになってほしい
  • GhidraとLLMの以前の統合に関する良い動画があった

    • Malimite — iOSおよびmacOSデコンパイラに関する情報がある
    • 彼女のYouTubeチャンネルを見たことがないなら、ぜひ確認してみることを勧める。技術的な内容だけでなく、レトロOSグラフィックで編集されていて面白い
  • radare2に関する情報もある

  • GhidraからLLMへコピー&ペーストするだけの体験はうまくいかなかった。この種のものについてベンチマークがあるとよい

  • MCPサーバーに、プログラムの任意読み取りや書き込みのような、より多くの機能があるとよいという意見がある

    • たとえば、XORされた命令を使う自己アンパッキングCTFチャレンジに取り組んでいた。XORされたアドレスの値を読めるとよい
  • すべてのバイナリを即座に完全リバースエンジニアリングできるとしたら、セキュリティがどう変わるかという思考実験がある

  • MCPサーバーの「カタログ」を作っている人がいるのか気になっている。GitHubで検索するのは、これを見つける最善の方法ではない