[Strix]ローカルAPIをセキュリティ検証

AI

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

Strix Cyber Security
Strix Cyber Security delivers offensive security, penetration testing, and AI security for enterprises. Security enginee…

🐧 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 を試みるため、必ず自分が所有する、または明示的な許可を得たシステムにのみ実行してください 。

コメント

タイトルとURLをコピーしました