Kali Linux チームが、外部 SaaS に一切依存しない完全ローカルの AI ペンテスト支援環境の構築ガイドを公式ブログで公開した。Ollama でローカル LLM を動かし、MCP(Model Context Protocol)経由で nmap などの Kali ツールを自然言語から操作する構成だ。
構成要素
| コンポーネント | 役割 | アーキテクチャ上の位置づけ |
|---|---|---|
| Ollama | ローカル LLM サーバー。llama.cpp のラッパーとしてモデルのダウンロード・サービングを簡素化 | 推論エンジン(脳) |
| mcp-kali-server | Flask ベースの MCP サーバー(127.0.0.1:5000)。nmap, gobuster, nikto, hydra, sqlmap 等の Kali ツールを MCP 経由で公開 | ツールサーバー(手足) |
| 5ire | デスクトップ AI アシスタント兼 MCP クライアント。ユーザー入力を LLM に送り、LLM の応答からツール呼び出しを検出し、MCP 経由でツールを実行し、結果を LLM に戻すループを回す | AI エージェント(オーケストレーター) |
この構成で「エージェント」に相当するのは 5ire だ。LLM(Ollama)は推論を担うだけであり、ツールサーバー(mcp-kali-server)は呼ばれるのを待つだけ。ユーザーの意図を解釈し、LLM とツールの間を仲介して自律的にループを回す 5ire こそがエージェントの役割を果たしている。Claude Code に例えると、Ollama は API の向こう側の Claude モデル、mcp-kali-server は MCP サーバー、5ire は Claude Code 本体に相当する。
対応モデルは以下の 3 つ(いずれも Tools 機能対応が必須):
llama3.1:8b(4.9 GB)llama3.2:3b(2.0 GB)qwen3:4b(2.5 GB)— ガイドのメインデモで使用
セットアップの流れ
- NVIDIA GPU の有効化 — プロプライエタリドライバ + CUDA 12.4 をインストールし
nvidia-smiで確認 - Ollama 導入 — ランタイムをインストールし、使用するモデルを
ollama pullで取得 - mcp-kali-server 起動 —
kali-server-mcpをバックグラウンドで起動(127.0.0.1:5000) - 5ire の設定 — AppImage をダウンロードし、LLM プロバイダに Ollama、MCP サーバーに mcp-kali-server を登録
- 自然言語でツール実行 — 「scanme.nmap.org のポート 80, 443, 21, 22 を TCP スキャンして」のようなプロンプトで nmap が実行される
なぜローカル完結が重要なのか
ペネトレーションテストでは、対象システムの IP アドレス、発見された脆弱性、認証情報の候補など機密性の高い情報を扱う。これを外部の LLM API に送信するのはセキュリティポリシー上の問題がある。
ローカル完結構成であれば:
- データが外部に一切送信されない
- エアギャップ環境でも運用可能
- コストはハードウェアと電気代のみ(サブスクリプション不要)
トレードオフとして NVIDIA GPU(最低 GTX 1060 6GB VRAM)が必要になるが、ペンテスト用マシンには十分な GPU を搭載していることが多い。
CLI からエージェントへ
従来の Kali Linux 運用は CLI 中心だった。ツールごとにオプションを覚え、出力を目視で解析する。この構成では LLM が自然言語 → コマンド変換 → 結果の構造化を担うため、ワークフローが根本的に変わる。
ただし現時点の小型モデル(3B〜8B パラメータ)では、複雑な攻撃チェーンの自律的な組み立てまでは難しい。あくまで「個別ツールの実行を自然言語で支援する」レベルであり、人間のペンテスターの判断を置き換えるものではない。
MCP エコシステムの広がり
Kali 公式が MCP を採用した点は注目に値する。MCP はもともと Anthropic が提唱したプロトコルだが、セキュリティツールチェーンにまで浸透し始めている。mcp-kali-server が公開している ツール一覧 には nmap, gobuster, dirb, nikto, enum4linux-ng, hydra, john, metasploit, sqlmap, wpscan が含まれ、主要なペンテストツールをカバーしている。
参考
- Kali & LLM: Completely local with Ollama & 5ire — Kali 公式ブログ
- mcp-kali-server — Kali Tools
- MCP-Kali-Server (GitHub)
- Mr.Rabbit 氏のツイート — 日本語での解説