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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
ツール/GitHubGitHub/szybnev/cve-2026-7482
脆弱性分析エクスプロイトファジングバイナリ解析論文と研究
GitHubszybnev/cve-2026-7482

CVE-2026-7482

CVE-2026-7482のOllama GGUF読み込みおよび量子化におけるヒープ領域外読み取りを再現し、量子化されたアーティファクトの差分解析を通じてOOBの影響を実証します。

リポジトリを見る
1134ヶ月前未レビュー

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2026-7482: Ollama GGUF ヒープ領域外読み取りの再現

このリポジトリには、脆弱性のある Ollama GGUF 読み込みおよび量子化パスにおけるヒープ領域外読み取り(CVE-2026-7482)のローカル再現スクリプトが含まれています。

この作業で重要な結果は限定的です。ヒープ領域外(OOB)状態を確実に発生させ、OOB の影響を受けた量子化 GGUF アーティファクトを生成することはできました。しかし、平文シークレットの確実な復元や、生成されたアーティファクトからのカナリア文字列の直接抽出など、明確なブラックボックス的な影響を示すことはできませんでした。

この PoC が行うこと

exp.py は2つの GGUF ファイルを作成します:

  • ファイルに実際に含まれるバイト数よりも多くのバイトを宣言するテンソルを持つ、悪意のある切り詰められた GGUF
  • 同じ宣言テンソル形状を持つ、完全にゼロ埋めされた対照用 GGUF

両方のファイルをローカルの Ollama API を通じて脆弱性のある Ollama インスタンスにアップロードし、/api/create で量子化をトリガーし、生成された GGUF ブロブをローカルの Docker コンテナからコピーし、悪意のある出力とゼロ対照出力を比較します。

差分比較が有用なのは、脆弱性のある量子化パスが、元の悪意のある GGUF ファイルに存在しなかったバイトを使用したことを示すためです。私のテストでは、この動作は Ollama 0.17.0 で安定しており、修正版の 0.17.1 パスでは拒否されました。

要件

  • requests を備えた Python 3
  • 脆弱性のある Ollama コンテナへの Docker アクセス
  • ローカル API ポートで公開された Ollama 0.17.0
  • 脆弱性のあるテストコンテナ名(例: ollama-old-test)
  • ラボターゲットの例:

    root@kitploit:~
    docker run -d --name ollama-old-test -p 11435:11434 ollama/ollama:0.17.0
    

    使用方法

    唯一の Python 依存関係をインストールします:

    root@kitploit:~
    python3 -m pip install requests
    

    http://localhost:11435 とコンテナ ollama-old-test に対してデフォルトテストを実行します:

    root@kitploit:~
    python3 exp.py
    

    明示的な引数:

    root@kitploit:~
    python3 exp.py http://localhost:11435 ollama-old-test Q4_K_M F16
    python3 exp.py http://localhost:11435 ollama-old-test Q8_0 F16
    python3 exp.py http://localhost:11435 ollama-old-test Q8_0 F32
    

    スクリプトは以下のようなローカルアーティファクトを書き出します:

    • malicious_model.gguf
    • control_model.gguf
    • quantized_model.gguf
    • control_quantized_model.gguf
    • q8_dequantized_f32.bin
    • q8_pseudo_f16.bin
    • q8_pseudo_f16.txt

    調査結果

    私のローカルテストでは、脆弱性のある Ollama バージョンは、悪意のある GGUF ファイルにそれらのバイトが含まれていないにもかかわらず、悪意のあるテンソルペイロードがゼロ対照テンソルと異なる量子化出力を作成しました。

    これは OOB の影響を受けたアーティファクトを示すには十分です。実用的なブラックボックス的なデータ開示を主張するには不十分です。

    また、同時モデルプロンプトでカナリアスタイルのデータをテストし、生成されたアーティファクト、Q8_0 逆量子化 float32 バイト、および疑似 F16 再構築出力を検索しました。正確なカナリアや意味のある平文断片を復元することはできませんでした。

    その理由はおそらく、バイトが生のヒープメモリとしてコピーされないためです。それらはモデル変換および量子化パイプラインを通過します:

    root@kitploit:~
    ヒープバイト -> F16/F32 テンソル値として解釈 -> 変換/量子化 -> GGUF テンソル出力
    

    このパスは、特に Q4_K_M などの量子化形式では損失が大きくなります。Q8_0 は Q4_K_M よりも多くの数値情報を保持しますが、それでも私のブラックボックス的なテストでは信頼性の高い平文復元は生成されませんでした。

    範囲と制限

    これはローカルラボでの再現およびアーティファクト分析の補助ツールです。

    信頼性の高いリモートシークレット流出プリミティブを提供するものではありません。また、Ollama が生成したブロブをテストコンテナからコピーするためにローカルの Docker アクセスが必要なため、分析ステップは純粋なリモートブラックボックスワークフローではありません。

    私のテストからの実用的な結論は次のとおりです:

    • ヒープ OOB 動作は再現可能です。
    • OOB の影響を受けた量子化アーティファクトは観察可能です。
    • 明確なブラックボックス的な平文への影響は実証されていません。

    参照

    • NVD エントリ: https://nvd.nist.gov/vuln/detail/CVE-2026-7482
    • Ollama 修正コミット: https://github.com/ollama/ollama/commit/88d57d0483cca907e0b23a968c83627a20b21047

    関連作業

    0x0OZ による別の PoC リポジトリもあります:

    https://github.com/0x0OZ/CVE-2026-7482-PoC

    その実装は、生成されたモデルアーティファクトを管理されたレジストリにプッシュすることで、より強力なホワイトボックス的なワークフローを実証しています。私の PR によるレジストリアップロードフローの修正により、ローカルラボで正常に完了します:

    https://github.com/0x0OZ/CVE-2026-7482-PoC/pull/1

    そのより優れたエンドツーエンドのアーティファクト収集パスがあっても、同じデータ品質の注意点が重要であり続けます: 出力は量子化/モデル変換されたデータであり、直接の生のヒープダンプではありません。

    免責事項

    このリポジトリは、許可された脆弱性研究および防御的な再現のみを目的としています。所有しているシステム、または評価する明示的な許可を得たシステムに対してのみテストしてください。

    ツールをダウンロード