この記事ではLLMに特化して解説します。LLM全般は LLMとは?仕組みからローカル実行まで徹底解説【2026年完全ガイド】 をご覧ください。
CAI(Cybersecurity AI)とは何か
CAI(Cybersecurity AI)は、Alias Roboticsが開発するオープンソースのAIセキュリティフレームワークだ。GitHub上で8,000スター以上を獲得しており、LLMを活用したペネトレーションテスト自動化、CTF(Capture The Flag)解法、バグバウンティハンティングのプラットフォームとして注目を集めている。2026年現在、AI活用のサイバーセキュリティは最もホットな研究・実務領域の一つであり、CAIはその中心にいるオープンソースプロジェクトだ。
従来のサイバーセキュリティツールが想定してきた「攻撃者は人間」「脅威はコード/ネットワーク層」という前提は、AIシステムの普及により大きく変わりつつある。LLMベースのチャットボット、自律ロボット、MLパイプラインには、従来のセキュリティ手法では検出できない固有のリスクが存在する:
- プロンプトインジェクション: ユーザー入力を通じてLLMのシステムプロンプトや動作を書き換える攻撃
- モデル汚染(データポイズニング): 学習データに悪意のあるサンプルを混入させてモデル挙動を変える
- モデル盗難(Model Extraction): APIへのプロービングを通じてモデルの挙動を模倣したコピーを作成
- 敵対的入力(Adversarial Inputs): モデルを意図的に誤分類させるよう設計された入力
CAIはこれらAI固有の脅威に対応するため、LLMベースのエージェントが自律的にセキュリティ評価を実行するアーキテクチャを採用している。
CAIは「AIを使って攻撃・防御する」プラットフォームだ。セキュリティプロフェッショナルが300以上のセキュリティツールをLLMエージェントに渡し、ターゲットシステムへの脆弱性探索、CTFチャレンジ解法、セキュリティ評価を半自律的に実行できる。研究論文8本がarXivで公開されており、学術的な根拠も整備されている。
技術アーキテクチャ:8つの構成要素
CAIのアーキテクチャは8つの基本要素で構成されている。
Human-in-the-Loop
Ctrl+C介入"] B --> C["Agents
ReACTモデル
推論+行動"] C --> D["Handoffs
エージェント間委譲"] D --> E["Tools
300+セキュリティツール
偵察/エクスプロイト/横展開"] C --> F["Patterns
階層型/群れ型
逐次/オークション"] C --> G["Guardrails
プロンプトインジェクション防御
危険コマンドブロック"] C --> H["Tracing
OpenTelemetry
Phoenixフレームワーク"] H --> I["観測・ログ・分析"] E --> J["ターゲットシステム
脆弱性評価対象"]
1. Agents(エージェント)
ReACT(Reasoning and Action)モデルに基づく自律エージェントだ。LLMが「現状の推論→実行するアクション→観察→次の推論」というサイクルを繰り返し、セキュリティタスクを自律的に進める。
対応LLMは300以上(LiteLLM経由)で、主要なものは以下の通り:
- Anthropic Claude 3.7/3.5/3.0 Opus
- OpenAI O1/O3 Mini/GPT-4o/GPT-4.5
- DeepSeek V3/R1
- Ollama経由: Qwen2.5(72B/14Bバリアント)
- Azure OpenAI、OpenRouter統合
2. Tools(ツール)
300以上のセキュリティツールが統合されており、偵察・エクスプロイト・権限昇格・横展開の全フェーズをカバーする。nmap、Metasploit、Burp Suite互換ツール等の外部ツールもラッパーとして組み込まれており、エージェントが必要に応じて呼び出す。
3. Handoffs(委譲)
複数のスペシャリストエージェントが存在する場合、タスクの性質に応じて適切なエージェントへ委譲する仕組みだ。例えば「ウェブアプリケーション評価エージェント」「ネットワーク偵察エージェント」「レポート生成エージェント」を組み合わせ、それぞれが専門領域を担当する。
4. Patterns(パターン)
エージェント間の協調パターンとして、以下の構造をサポートしている:
- 階層型(Hierarchical): マスターエージェントが子エージェントを指揮
- 群れ型(Swarm): 複数エージェントが並列で探索
- 逐次型(Sequential): フェーズを順番に実行
- オークション型(Auction-based): タスクを競争で割り当て
- 再帰型(Recursive): サブタスクを再帰的に分解・実行
5. Guardrails(ガードレール)
CAI自身のセキュリティ保護機能だ。エージェントがプロンプトインジェクションによって悪用されないよう、多層的な防御を提供する:
- 入力検証:プロンプトインジェクション試行の検出
- Unicode同形文字(Homograph)検出
- 出力検証:リバースシェル、フォークボムなど危険なコマンドのブロック
- Base64/Base32ペイロードのデコードと分析
CAI_GUARDRAILS環境変数でオン/オフ切り替え可能
6. Tracing(トレーシング)
OpenTelemetryベースの可観測性をPhoenixフレームワークで実現している。エージェントの実行ログ、LLMへのリクエスト/レスポンス、ツール呼び出しの詳細をすべてトレースし、攻撃パターンの事後分析やエージェント動作の改善に活用できる。
7. HITL(Human-in-the-Loop)
完全な自律実行ではなく、人間が介入できる設計になっている。実行中にCtrl+Cを押すことで、エージェントの動作を一時停止して指示を上書きできる。「ここから先は自動でやらせず確認を取る」というコントロールが可能だ。
インストール・セットアップ
インストール
# PyPIからのインストール(推奨)
pip install cai-framework
# 開発版のインストール
git clone https://github.com/aliasrobotics/cai
cd cai
pip install -e .
macOSでのインストール
# Homebrewを使用
brew tap aliasrobotics/cai
brew install cai
環境変数の設定
# .env ファイルを作成
cat > .env << 'EOF'
# 使用するLLMのAPIキー(いずれか、または複数)
ANTHROPIC_API_KEY=sk-ant-xxxxx
OPENAI_API_KEY=sk-xxxxx
DEEPSEEK_API_KEY=xxxxx
# CAIの動作設定
CAI_MODEL=claude-3-7-sonnet-20250219 # デフォルトモデル
CAI_MAX_TURNS=50 # エージェントの最大反復回数
CAI_DEBUG=0 # デバッグレベル(0-2)
CAI_STREAM=true # レスポンスストリーミング
CAI_GUARDRAILS=true # ガードレール有効化
CAI_TRACING=false # OpenTelemetryトレーシング
EOF
# 環境変数の読み込み
source .env
基本的な起動
# CAIインタラクティブシェルの起動
cai
# 特定のエージェントで起動
cai --agent pentesting
# 特定のモデルを指定
cai --model gpt-4o
# MCPサーバーを読み込む
cai --mcp-server /path/to/mcp-server.json
CAIはLLMのAPIキーが必要だ。まずAnthropicかOpenAIのAPIキーを取得し、.envファイルに設定してから起動する。OllamaでローカルLLMを使う場合はOLLAMA_BASE_URLを設定し、CAI_MODEL=ollama/qwen2.5:72bのように指定する。
インタラクティブコマンド
CAIシェル内で使用できる主要コマンド:
# エージェント操作
/agent list # 利用可能なエージェント一覧
/agent use pentesting # ペネトレーションテストエージェントに切替
/agent use osint # OSINT(公開情報収集)エージェントに切替
# モデル操作
/model list # 利用可能なモデル一覧
/model use gpt-4o # モデルの切替
# セッション管理
/load session.json # 過去の実行ログを読み込んで再開
/config # 現在の環境変数設定を表示
/help # ヘルプ表示
# MCP(Model Context Protocol)
/mcp sse http://localhost:3000 # SSEエンドポイントのMCPサーバーを接続
/mcp stdio /path/to/server # STDIOのMCPサーバーを接続
実践的ユースケース
1. CTF(Capture The Flag)の自動解法
CAIが特に強みを発揮するのがCTFチャレンジだ。公式データによると、HackTheBoxランキングでスペイン1位・世界500位以内を達成し、「Human vs AI」CTFカテゴリで1位を獲得している。
CAIにCTFのチャレンジ情報を渡すと、偵察→脆弱性探索→エクスプロイト→フラグ取得のプロセスをエージェントが自律的に実行する。
2. バグバウンティの自動化
公開されているバグバウンティプログラムのスコープ内でのセキュリティ評価を自動化できる。CAIのOSINTエージェントがターゲットの公開情報を収集し、攻撃面を整理した後、各エンドポイントへの脆弱性スキャンをエージェントが実行する。
実際の成果:公式ドキュメントによると、自動評価でCVSS 4.3〜7.5の深刻度を持つ脆弱性を複数発見している。
3. LLMアプリケーションのプロンプトインジェクション評価
LLMを組み込んだ社内システムの安全性を評価するユースケースだ。
# CAI Python SDK を使ったプロンプトインジェクション評価例
from cai import CAI, Agent, Tool
# プロンプトインジェクション評価エージェントの設定
agent = Agent(
name="prompt_injection_tester",
model="claude-3-7-sonnet-20250219",
instructions="""
ターゲットのLLMアプリケーションに対してプロンプトインジェクション攻撃を試みる。
各攻撃パターンの成否を記録し、脆弱性をレポートとしてまとめる。
""",
tools=[Tool.http_request, Tool.analyze_response]
)
cai = CAI()
result = cai.run(
agent=agent,
messages=[{"role": "user", "content": "対象URL: https://example.com/chatbot"}]
)
4. OT(Operational Technology)セキュリティ評価
産業用制御システム(ICS/SCADA)や製造ロボットのセキュリティ評価にも対応している。Dragos OT CTF 2025ではトップ10に入り、34チャレンジ中32を完了、人間上位チームと比較して37%の速度優位を達成している。
5. MLパイプラインのサプライチェーン保護
学習データの汚染、モデルの改ざん、依存パッケージの脆弱性を一元的にチェックするセキュリティ監査フローを自動化できる。学習ジョブのログ分析、モデルの整合性チェック、パッケージ依存関係のスキャンをCAIエージェントが実行し、問題のあるモデルがプロダクションに上がることを防止する。
CAIはセキュリティ研究・ペネトレーションテスト・CTF用途に設計されている。許可を得ていないシステムへのペネトレーションテストは違法だ。必ず事前に書面による許可を取得し、スコープを明確にした上で使用すること。CAIの利用者は適用される法律および倫理ガイドラインに従う責任がある。
競合比較
AIセキュリティフレームワーク比較
| 特徴 | CAI | Metasploit | Burp Suite | PentestGPT |
|---|---|---|---|---|
| LLMエージェント統合 | ネイティブ | なし | なし | あり(基本的) |
| 対応LLM数 | 300+ | - | - | 限定的 |
| CTFパフォーマンス | 3,600×(人比) | - | - | 未公開 |
| OTセキュリティ | 対応 | 一部 | なし | なし |
| プロンプトインジェクション防御 | ネイティブ | - | - | 限定的 |
| OpenTelemetryトレーシング | あり | なし | なし | なし |
| オープンソース | Apache 2.0 | BSD-3 | 商用 | 限定公開 |
| マルチエージェントパターン | 5種類 | なし | なし | なし |
| Python SDK | あり | なし | あり | なし |
MetasploitやBurp Suiteは特定の攻撃手法に特化した成熟したツールだ。CAIはこれらのツールをLLMエージェントの「武器庫」として統合し、ターゲットの状況に応じてどのツールをいつ使うかをエージェントが判断する上位レイヤーとして機能する。既存ツールの代替ではなく、それらを自動化する司令塔として位置づけると理解しやすい。
パフォーマンスデータ
公式ドキュメントおよびarXivプレプリント(2504.06017等)に記載されているパフォーマンスデータ:
| ベンチマーク | 結果 |
|---|---|
| CTFパフォーマンス(人間比) | 3,600倍の速度向上 |
| HackTheBox スペイン国内ランキング | トップ30 |
| HackTheBox 世界ランキング | トップ500 |
| Human vs AI CTFカテゴリ | 1位 |
| Dragos OT CTF 2025 | トップ10、34中32チャレンジ完了 |
| OT CTF 速度優位(人間上位チーム比) | 37%速い |
| 自動評価で発見した脆弱性CVSS範囲 | 4.3〜7.5 |
よくある質問
Q: CAIはどのような専門知識が必要ですか?
A: 基本的なLinuxコマンドとネットワークの知識があれば使い始められる。ただし、セキュリティ評価の結果を正しく解釈し、適切な対処を行うためにはセキュリティの基礎知識が必要だ。CAIはツールであり、判断は人間が行う。
Q: 無料で使えますか?
A: CAI自体はオープンソース(Apache 2.0)で無料だ。ただし、LLMのAPIコスト(Anthropic、OpenAIなど)は別途かかる。Professional Edition(月額€350、unlimited tokensのalias1プロバイダー付き)も提供されている。
Q: AIエージェントフレームワークとの違いは何ですか?
A: AIエージェントフレームワーク比較2026でも取り上げているが、汎用AIエージェントフレームワーク(LangChain、AutoGenなど)はドメイン汎用だ。CAIはサイバーセキュリティドメインに特化しており、300以上のセキュリティツール統合、セキュリティ評価パターン、ガードレール、OTセキュリティ対応など、セキュリティ専用の機能が充実している。
Q: ロボティクスのセキュリティ評価にも使えますか?
A: はい、Alias Roboticsはロボティクスセキュリティの専門企業であり、CAIはロボティクス固有の攻撃ベクター(センサ入力の改ざん、ROS/ROS2の脆弱性等)への対応も設計に含まれている。人型ロボットのサイバーセキュリティ攻撃ベクターの研究論文も公開されている。
関連記事: LLMとは?仕組みからローカル実行まで徹底解説【2026年完全ガイド】
まとめ
AIシステムのセキュリティ評価を検討している組織、セキュリティ研究者、CTF参加者にとってCAIは強力なツールになる。ただし、使用にあたっては法的・倫理的な枠組みを必ず守ることが前提だ。
vLLMなどのLLM推論エンジンを使う場合は、そのセキュリティ設定にも注意が必要だ。AIシステム全体のセキュリティアーキテクチャを考える際は、CAIによるペネトレーションテストと並行して、RAGFlowなどのRAGシステムのアクセス制御設定も見直すことを推奨する。
CAIの研究バックグラウンドと学術的根拠
CAIを他のAIセキュリティツールと差別化する要因の一つが、arXivで公開されている8本の査読論文・技術レポートによる学術的裏付けだ。
主要な研究貢献
PentestGPTフレームワークの先駆的研究:CAIチームはLLMを活用したペネトレーションテスト自動化の概念を先駆的に確立した。この研究がCAIの技術的基盤になっている。
自律性レベルのフレームワーク:AIセキュリティシステムの「自律性レベル(Autonomy Levels)」を定義するフレームワークを開発した。完全自律(Level 5)から人間主導(Level 0)までの段階を定義し、現状のCAIがどのレベルに位置するかを明確にしている。公式の立場は「完全自律型サイバーセキュリティシステムは現時点では時期尚早」であり、人間の監督が必要な「半自律(Semi-autonomous)」での運用を推奨している。
マルチレイヤープロンプトインジェクション防御:AIエージェントがペネトレーションテストを実行する際、ターゲットシステムが逆にエージェントをプロンプトインジェクションで操作しようとする攻撃ベクターを研究し、多層防御メカニズムを開発した。
arXiv論文一覧
| 論文ID | 内容 |
|---|---|
| 2504.06017 | CAIフレームワークの基礎設計と性能評価 |
| 2506.23592 | マルチエージェントセキュリティパターン |
| 2508.13588 | OTセキュリティにおけるAIエージェントの活用 |
| 2508.21669 | プロンプトインジェクション防御機構 |
| 2509.14096 | 人間型ロボットの攻撃ベクター研究 |
| 2509.14139 | LLMサイバーセキュリティ性能のベンチマーク |
| 2510.17521 | CTFにおけるAIエージェントの性能分析 |
| 2510.24317 | セキュリティ教育フレームワーク(CAI Fluency) |
CAIのインタラクティブシェル:実践的な操作ガイド
CAIを起動すると対話型のCLIシェルが起動する。実際のペネトレーションテスト作業での使い方を見ていこう。
典型的なセッションの流れ
# CAI起動
$ cai
# ウェルカムメッセージと利用可能なエージェント一覧が表示される
# > と表示されたら入力待ち状態
# 1. ターゲット情報の伝達
> ターゲットは 192.168.1.100 のウェブサーバーです。
HTTPSで動作しており、外部向けのAPIエンドポイントを持っています。
認証されたペネトレーションテストの範囲内です。
# エージェントが自動的に偵察フェーズを開始
# nmapによるポートスキャン → サービスバージョン特定 → 既知脆弱性の確認
# 2. 中間確認(HITL)
# エージェントが次のステップを提案したとき、Ctrl+Cで中断して確認できる
^C
> 確認します。次に何をしようとしていますか?
# エージェントが計画を説明
# > はい、続けてください / > このアプローチではなくXXXを試してください
# 3. 結果の確認
> 発見した脆弱性をまとめてレポートを作成してください
エージェント間の協調(Handoffs)の実際
# マスターエージェントから専門エージェントへの委譲例
# CAIが自動的に行う(ユーザーは意識する必要なし)
# 内部的な委譲フロー:
# OrchestratorAgent → ReconAgent(偵察)
# → WebAppAgent(ウェブアプリ評価)
# → NetworkAgent(ネットワーク評価)
# → ReportAgent(レポート生成)
# /agent コマンドで手動切替も可能
/agent use web_app_pentester
> Login フォームのSQLインジェクションを確認してください
セッションの保存と再開
# セッションログは自動保存される
# 場所: ~/.cai/sessions/session_YYYYMMDD_HHMMSS.json
# 過去のセッションを読み込んで継続
/load ~/.cai/sessions/session_20260418_103022.json
# これにより、前回の評価結果をコンテキストとして引き継ぎ
# エージェントが過去の作業を「記憶」した状態で作業を継続できる
CAI_GUARDRAILS=trueはデフォルトで有効になっており、エージェントが意図せず危険なコマンド(リバースシェル確立、フォークボム実行等)を生成・実行しようとした場合にブロックする。ペネトレーションテスト中にガードレールをオフにする必要がある場合は、スコープと意図を明確にした上で慎重に行うこと。
CAIのエコシステム:競合ツールとのコントラスト
公式READMEによると、CAIチームは25以上のクローズドソース代替製品(Autonomous Cyber、CrackenAGI、ETHIACK、Horizon3等)の存在を把握しており、これらがプロプライエタリなアプローチを取ることで「エンジニアリングリソースの重複が生じている」と指摘している。
CAIのオープンソース戦略の主張:
- 民主化:高度なAIサイバーセキュリティを資金力のある組織だけでなく誰でも使えるようにする
- 透明性:AIのセキュリティ性能についてベンダーの誇張したクレームに対抗し、実証データを公開する
- コラボレーション:学術機関・研究者との協力関係を促進する
CAIを使ったセキュリティ評価レポートの自動生成
CAIエージェントが実行した評価結果をレポート形式でまとめる機能も実装できる:
# CAI SDK を使ったセキュリティ評価レポート自動生成例
from cai import CAI, Agent, Tool
import json
from datetime import datetime
# レポート生成エージェントの設定
report_agent = Agent(
name="security_reporter",
model="claude-3-7-sonnet-20250219",
instructions="""
セキュリティ評価の結果を以下の形式でレポートにまとめる:
1. エグゼクティブサマリー(3行以内)
2. 発見された脆弱性リスト(CVSS スコア付き)
3. 推奨する修正措置(優先度順)
4. 技術的な詳細(付録)
""",
tools=[] # レポート生成のみ、ツール不要
)
# 評価セッションの実行と結果取得
cai = CAI()
result = cai.run(
agent=report_agent,
messages=[{
"role": "user",
"content": f"以下の評価結果からレポートを生成: {json.dumps(evaluation_results)}"
}]
)
# レポートをMarkdownで保存
report_filename = f"security_report_{datetime.now().strftime('%Y%m%d_%H%M%S')}.md"
with open(report_filename, 'w', encoding='utf-8') as f:
f.write(result.messages[-1]["content"])
print(f"レポートを保存しました: {report_filename}")
Professional Editionと商用オプション
CAIにはオープンソース版に加えて、Professional Editionが月額€350で提供されている。
主な違い:
- alias1プロバイダー:Professional Edition専用のLLMプロバイダーで、unlimited tokensが付属
- 優先サポート:Discordでの優先サポートチャンネルへのアクセス
- エンタープライズ機能:大規模組織向けの追加機能
また、Alias RoboticsはPhDリサーチや教育機関との学術連携プログラムも提供しており、大学・研究機関は専用の条件で利用できる。