Strix は AI を活用したオープンソースのペネトレーションテストツールで、Ubuntu 上で Docker と LLM を組み合わせて、ローカルの API エンドポイントに対して自動脆弱性診断を実行できます。

🐧 Ubuntu へのインストール
Strix は Python 3.12+ と Docker が必要です。Ubuntu へのインストールは公式スクリプトを使うのが最も簡単です 。
# 1. Docker がインストールされ、起動していることを確認
docker ps
# 2. 公式インストールスクリプトを実行
curl -sSL https://strix.ai/install | bash
# 3. インストールを確認
strix --version
インストール後、初回実行時に約 2GB の Docker サンドボックスイメージが自動的にダウンロードされます 。
⚙️ LLM プロバイダーの設定
Strix は AI エージェントを動かすため、LLM API キーが必要です。環境変数で設定します 。
# 例: OpenAI を使う場合
export STRIX_LLM="openai/gpt-5"
export LLM_API_KEY="sk-..."
# 例: ローカル LLM (Ollama) を使う場合
export STRIX_LLM="openai/deepseek-v3"
export LLM_API_BASE="http://localhost:11434"
export LLM_API_KEY="ollama" # ローカルではダミー値でOKな場合が多い
設定は初回実行後に ~/.strix/cli-config.json へ自動保存されるため、2 回目以降は環境変数を設定する必要はありません 。
🔍 ローカル API エンドポイントの脆弱性診断
Strix は OpenAPI/Swagger 仕様書や Postman コレクションをターゲットに指定でき、API の表面を仕様書に基づいて網羅的にテストします 。
基本的な実行コマンド:
strix -n --target http://localhost:8080 \
--instruction "Focus on IDOR and authentication bypass in /api/users endpoints"
API 仕様書を指定する場合 (OpenAPI/Swagger):
仕様書ファイルと、実際に稼働しているベース URL を両方指定します。これにより、Strix は仕様書からエンドポイントを読み取り、実際のホストに対してテストを実行できます 。
strix -n \
--target ./openapi.yaml \
--target http://localhost:8080 \
--instruction "Focus on OWASP API Security Top 10, especially BOLA"
Postman コレクションを指定する場合:
export POSTMAN_API_KEY="your-postman-key"
strix -n --target "postman://<collection-uuid>?env=<environment-uuid>"
認証が必要な API の場合:
--instruction オプションで認証情報やトークンを渡します 。
strix -n --target http://localhost:8080 \
--instruction "Use API key header: X-API-Key: abc123. Focus on rate limiting bypass."
📊 結果の確認
スキャン結果は実行ディレクトリの strix_runs/<run-name>/ に保存されます 。
vulnerabilities.json/vulnerabilities.csv: 発見された脆弱性の一覧findings.sarif: SARIF 形式のレポート (CI 連携用)- 各脆弱性ごとの Markdown ファイル: PoC (概念実証) を含む詳細
💡 実用的なヒント
- スキャンモード:
--scan-mode quickで高速チェック、deepで徹底診断 - コスト管理:
--max-budget 5のように USD 単位で上限を設定可能 - 指示の活用:
--instructionで「特定のエンドポイントだけ」「IDOR に注目」など、スコープを絞ると効率的 - ローカル LLM: Ollama や LMStudio を使えば API コストを抑えられるが、複雑な診断ではホスト型モデルの方が安定する傾向がある
注意: Strix は実際にリクエストを送信して PoC を試みるため、必ず自分が所有する、または明示的な許可を得たシステムにのみ実行してください 。
コメント