
Ollamaオープンインスタンス向けの大規模偵察、バージョンフィンガープリンティング、CVEテスター、そしてライブ悪用フレームワーク。
公開されたOllamaサーバーを発見し、バージョンを特定し、モデルアクセスを検証するためのモジュラーツールキット。
OllamaHoundは、公開されたOllamaサーバーを発見し、バージョンを特定、CVE露出を分類、テキスト生成が可能かを検証、そして(オプションで)制御されたテスト用の対話型CLIセッションを有効にするための、モジュール式のRedTeam向けツールキットです。
@@@@@@@@@@@@@@@@@@@@@@@@@@@#*#@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@%.-+-:#@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@+--=%@@@@@@@@-.@@@+ #@@@@@@@@@@@@@@@@@ @@@@@@@@@@@= %%+.=@@@%###-.@@@@= %@@@@@@@@@@@@@@@@ @@@@@@@@@@@-.@@@@..--====-.=@@@@.-@@@@@@@@@@@@@@@@ @@@@@@@@@@@# +#+-:*%@@@@@@@@@@@@- +@@@@@@@@@@@@@@@ @@*@@@@@#*+=:::.-*%@@@@@@@@@@@@@@%::%@@@@@@@@@@@@@ @+:-@@*----=***+==-=#@@@@@@@@@@@@@@::@@@@@@@@@@@@@ @*+#@=-==+=%@@@@%#=+:*%%%@@@@#++%@@+ %@@@@@@@@@@@@ +:=@#.+-@#=#@%+++%@:* =++==*@- *@@-.@@@@@@@@@@@@@ %=+@+--*@@*=##+++%#.+::=@#%:+@%@@@@%.=@@@@@@@@@@@@ @@@@#.+-@@%=*@@@@@+.* =-:*@-=@@@@@@@* %@@@@@@@@@@@ @@@@@+:==#*=%@@@@*-=.:--+*-=@@@@@@@@+ %@@@@@@@@@@@ @@@@@@#=----+*++=--=**++*#%@@@@@@@@% =@@@@@@@@@@@@ @@@@@@@@%*-:---.+*%@@@@@@@@@@@@@@@@+-:+@@@@@@@@@@@ @@@@@@@@@@# ==:.%@@@@@@@@@@@@@@@@@@@@%.-@@@@@@@@@@ @@@@@@@@@@#.@@:.#@@@@@@@@@@@@@@#@@@@@@% *@@@@@@@@@ @@@@@@@@@*::--::=%@@@@@@@@@@@@::@@@@@@@ =@@@@@@@@@ @@@@@@@@-.#@@@@@-.@@@@@@@@@@#.-@@@@@@@@*.-@@@@@@@@ @@@@@@@@.-@@@@@%::@@@@@@@@%=.+@@@@@@@@@@%.-@@@@@@@ @@@@@@@@#::++=::+@@@@@@@%=:=%@@@@@%%@@@@@+ @@@@@@@ @@@@@@@@@@=.:: #@@@@@@@=.+@@@@@@%=:*@@@@@= @@@@@@@ @@@@@@@@@@@@%-.%@@@@@@# *@@@@@#-:+@@@@@@% +@@@@@@@ @@@@@@@@@@@@@.=@@@@@@@@=:===---*@@@@@@@@@.=@@@@@@@ @@@@@@@@@@@@@=.%@@@@@@@@#-##%@@@@@@@@@@@@.-@@@@@@@ @@@@@@@@@@@@@@= -%@@@@@@# #@@@@@@@@@@@@@# #@@@@@@@ @@@@@@@@@@@@@@@ .:=*%%@%#..*@@@@@@@@@@@+.+@@@@@@@@ @@@@@@@@@@@@@@@.=@*==- -=*. --==+*#**=:-#@@@@@@@@@ @@@@@@@@@@@@@@@:-@@@@# #@@+ %%##*..++#%@@@@@@@@@@@ @@@@@@@@@@@@@@@::@@@@-.@@@% *@@@@-:@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@*.=++::%@@@@::%@%+ *@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@%***%@@@@@@%=---=%@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@---OllamaHound---@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@---By 7h30th3r0n3---@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
!!! 警告 !!!
⚠️ 法的・倫理的通知
このプロジェクトは許可されたセキュリティ評価(内部ネットワーク、スコープ内の契約、ラボ環境)を目的としています。
自分が所有するシステム、または明示的な書面による許可を得たシステムでのみ使用してください。
本ソフトウェアを使用することにより、あなたは自身の行動に対して単独で責任を負うことに同意したものとみなします。
著者および貢献者は、本ソフトウェアを**「現状のまま」提供し、その誤用、損害、または使用から生じる法的影響について一切の責任を負いません**。
スキャナー大規模非同期探索、バージョンフィンガープリンティング、CVE分類、モデルプロービング。
|
コネクター発見されたOllamaインスタンスと対話するためのリッチUI対話型CLIクライアント。
|
スクレイパーShodanを利用したターゲット収集ツールで、対話的に
|
ナビゲータースキャナーCSVの検索/フィルタリングヘルパー。エクスポートと対話型メニューを備えています。
|
オーケストレータースクレイパー→スキャナー→コネクターをチェーンし、各出力を次のモジュールに引き継ぎます。
|
結果出力は |
/api/tags と /api/generate によるresults/scraper/targets.txtresults/scanner/<prefix>_YYYYMMDD_HHMMSS.csvステップバイステップで実行するか、オーケストレーターを使用して最初の3段階を連鎖させることができます。
asyncio + aiohttp 使用(同時に多数のソケットを処理)rich による(ETA、スループット、完了率)<prefix>_YYYYMMDD_HHMMSS.csvGET /api/version → フォールバック GET /version → フォールバック Server ヘッダー< 0.1.47<= 0.3.14GET /api/tags でモデルを列挙POST /api/generate で生成をテスト/api/generate が HTTP 200 を返すホストが上位に表示--gen-ok-only:/api/generate が動作するホストのみ保持--vuln-only:RCE/DoSと分類されたホストのみ保持--show-unknown:バージョンが不明/解析不能なホストを含めるaiohttprichpackagingrequestsshodan依存関係のインストール:
python3 -m pip install -U aiohttp rich packaging requests shodan
Dockerを使用する場合:
docker build -t ollamahound .
docker run -it --rm ollamahound <ollamahound scripts>
オプションA(最速): スクレイプ → スキャン → 接続
python3 ollamaScraper.py
python3 ollamaScanner.py results/scraper/targets.txt --gen-ok-only
python3 ollamaConnector.py --scan-csv results/scanner/ollama_scan_*.csv
オプションB(一発): オーケストレーターパイプライン
python3 ollamaOrchestrator.py --scan-gen-ok-only
ollamaOrchestrator.py は、スクレイパー、スキャナー、コネクターを順に実行することで、Shodanによる収集から対話型CLIまでを単一コマンドで行えるようにします。スクレイパーとコネクターは対話型のままですが、オーケストレーターがそれらの出力を自動的に連携させます。
python3 ollamaOrchestrator.py --scan-gen-ok-only --scan-vuln-only
results/orchestrator/targets.txt に書き込まれます(--targets で変更可能)。results/scanner/ に保存され、プレフィックスは --scan-output-prefix(デフォルト orchestrator_scan)で指定します。--connector-row を指定すると、コネクター起動時に行を自動選択します。指定しない場合は通常通り対話的に選択します。--skip-scrape、--skip-scan、--skip-connect を使用すると、既存の出力を利用して途中から再開できます(スキャンフェーズをスキップする場合は --scan-csv が必要です)。このセクションの残りの部分は、各モジュールを手動で実行する場合にも適用されます。
スクレイパー:
# 基本的な対話型スクレイピング(Shodan dorkピッカー)
python3 ollamaScraper.py
# カスタム出力フォルダとファイル名
python3 ollamaScraper.py --output-dir results/my-scrape -o targets_acme.txt
スキャナー:
# targets.txtをスキャン(デフォルト11434、同時500、タイムアウト8秒)
python3 ollamaScanner.py results/scraper/targets.txt
# /api/generateが200を返すホストのみ
python3 ollamaScanner.py results/scraper/targets.txt --gen-ok-only
# マルチポートスキャン(スペースとカンマの混合)
python3 ollamaScanner.py results/scraper/targets.txt -p 11434 8080,13871
# 積極的なスイープ(短いタイムアウト+高同時接続)
python3 ollamaScanner.py results/scraper/targets.txt --timeout 3 -c 800
# 脆弱なホスト(RCE/DoS)と不明なバージョンのみ保持
python3 ollamaScanner.py results/scraper/targets.txt --vuln-only --show-unknown
# カスタムCSVプレフィックスと出力ディレクトリ
python3 ollamaScanner.py results/scraper/targets.txt -o scan_acme.csv --output-dir results/scanner_acme
ナビゲーター:
# スキャナーCSVのディレクトリをフィルタリング
python3 ollamaNavigator.py --scan-csv results/scanner --require-gen-ok --vuln rce
# 単一のCSVをフィルタリング、llamaモデルに制限、サイズ7B以上
python3 ollamaNavigator.py --scan-csv results/scanner/scan_20260107_180002.csv \
--model llama --min-params 7
# モデルを除外+キーワード検索
python3 ollamaNavigator.py --scan-csv results/scanner --exclude-model qwen --search france