Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
binaryninja-ollama — Binary Ninja用プラグイン。ローカルのOllamaモデルを統合し、逆コンパイルされたHLILコード内の関数と変数をリネームします。解析を完全にローカルかつオフラインで行うことで、プライバシーを保護します。 | Kitploit
ツール/GitHubGitHub/ahaggard2013/binaryninja-ollama
コード分析リバースエンジニアリングプライバシーバイナリ解析機械学習AI支援リバースエンジニアリング
GitHubahaggard2013/binaryninja-ollama

binaryninja-ollama

Binary Ninja用プラグイン。ローカルのOllamaモデルを統合し、逆コンパイルされたHLILコード内の関数と変数をリネームします。解析を完全にローカルかつオフラインで行うことで、プライバシーを保護します。

リポジトリを見る
831191年前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

"Buy Me A Coffee"

Binary Ninja Ollama (v1.0.9)

著者: Austin Haggard

Binary Ninja Ollama は、ローカルでホストされた ollama サーバーと統合し、AI を使用して関数と変数の名前を変更します

説明:

Ollama は、オープンソースの AI モデルを取得してローカルで実行できるツールです。 一部のモデルは高い計算能力を必要としますが、他のモデルは個人のラップトップでも実行できます。 結果は、選択するモデルによって大きく異なります :)

sidekick/openai ではなく、これを使う理由は?

  1. 無料で、ローカルに簡単にセットアップできます。
  2. 無料だと言いましたか?
  3. インターネットなしでどこでも実行できます!
  4. データはあなたと ollama サーバー間だけで保持され、第三者には渡りません。

機能

このプラグインは、Binary Ninja に Ollama を統合し、以下のアクションをサポートします:

  • Binary Ninja が ollama への接続に使用するサーバー/ポートを設定します。
    • (非常に)高性能なゲーミング PC をお持ちですか? それを ollama のホストに使い、binja を llama3:70b/gemma2:27b に向けましょう。
    • ラップトップで実行しますか? ローカルにホストし、localhost に設定して gemma2:latest/llama3:latest を実行しましょう。
    • 他にも試すべきモデルはたくさんありますが、主に llama3/gemma2 のバリエーションでテストしており、まずまずの結果が得られています。
  • ローカルにホストされた ollama サーバーに照会して、特定の関数が何を行うかを判断します。
    • これを使用して、すべての関数を一括で、または個別にターゲットとした関数の名前を変更できます。
  • ユーザーが ollama を使用して HLIL 内の変数の名前を変更できるようにします。
    • これを使用して、命令内の個々の変数の名前を変更できます。
    • これを使用して、関数内のすべての変数の名前を変更できます。

インストール

スタンドアロンのプラグインとしてインストールする場合は、Binary Ninja のプラグインパスに配置(またはシンボリックリンク)できます。 デフォルトのパスは Vector 35 のドキュメント に詳しく記載されています。

依存関係

  • Python 3.10+
  • pip3 install ollama でインストールされた ollama

Ollama サーバー

これには、ollama サーバーにアクセスできるか自分でホストし、使用したいモデルをプルダウンしておく必要があります。

https://ollama.com の指示に従ってサーバーをセットアップし、試したいモデルをプルダウンしてください。 これが完了すると、サーバーが自動的に起動され、localhost:11434 でアクセスできるようになります。

使用方法

関数内のすべての変数の名前を変更

関数内のすべての変数の名前を変更オプションは、関数内のすべての変数を解析し、次のプロンプトに基づいて名前の変更を試みます:

root@kitploit:~
prompt = (
             f"In one word, what should the variable '{variable}' be named in the below Function? "
             f"The name must meet the following criteria: all lowercase letters, usable in Python code"
)

変数名変更前 変数名変更後

すべての関数の名前を変更

すべての関数の名前を変更オプションは、binaryview 内のすべての関数を小さい順から大きい順にループし、プロンプトに基づいて名前を変更します:

root@kitploit:~
prompt = (
    f"Given the following HLIL decompiled code snippet, provide a Python-style function name that describes what the code is doing. "
    f"The name must meet the following criteria: all lowercase letters, usable in Python code, with underscores between words. "
    f"Only return the function name and no other explanation or text data included."
)

関数名変更前 関数名変更後 関数名変更後

ターゲット関数の名前を変更

ターゲット関数の名前変更は、すべての関数の名前変更と同じプロンプトを使用しますが、プラグインをトリガーする際に選択した関数に限定します。

ターゲット関数内の変数の名前を変更

ターゲット変数の名前変更は、すべての変数の名前変更と同じプロンプトを使用しますが、プラグインをトリガーする際に選択した関数に限定します。

設定

設定は、Binary Ninja が最初に起動されたときに最初の名前変更操作が呼び出された際、または手動でトリガーした際に表示されます。適用された設定は、Binary Ninja セッション内で保持されます。

設定ウィンドウでは、ollama 内で使用する IP、ポート、モデルを設定できます。選択できるのはダウンロード済みのモデルのみです。

プラグイン設定オプション プラグイン接続オプション プラグインモデルオプション

既知の問題

  • より大きな関数では、AI がプロンプトを無視して、関数を説明する大きなテキストブロックを返すことがあります。これは、戻り値を無視して "関数の名前を変更できません' ログを出力することで軽減されていますが、さらに調査される可能性があります。
  • 選択したサーバーが存在しない場合の処理は、より適切にできる可能性があります。

機能リクエスト

  • 含まれていないもので、興味があるものはありますか?

    • Issue を開いてください!
    • プルリクエストを作成してください。
  • アイデア:

    • 1 行内のすべての変数ではなく、単一の変数の名前変更をターゲットにする
    • コードを説明する AI コメントを生成する
    • 構造体の復元 (Structure Recovery)

ライセンス

このプラグインは MIT ライセンスの下でリリースされています。

ツールをダウンロード