mcpField
A
api-security-testing

api-security-testing

github.com/sickn33セキュリティ48.7k891 回インストール1 日前に更新
リポジトリ

api-security-testing について

api-security-testingは、許可を得たRESTおよびGraphQL APIのセキュリティ評価向けワークフロースキルです。発見、認証、認可、入力検証、レート制限、GraphQL、エラー処理の段階に分け、範囲と確認の要件を定めています。

主な機能

  1. 01APIテストを7段階に整理
  2. 02認証と認可のチェック
  3. 03入力検証とレート制限の評価
  4. 04GraphQLとエラー処理のテスト
  5. 05範囲、証拠、安全確認の要件

活用シーン

  1. 01許可を得たREST API評価の計画
  2. 02認証とアクセス制御のレビュー
  3. 03承認範囲内でのGraphQLエンドポイント評価
  4. 04APIの発見事項と未テスト領域の記録

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/sickn33/agentic-awesome-skills --skill api-security-testing

インストール後、Claude Code で/api-security-testingを入力して読み込まれたか確認します。

詳細

⚠️ 許可された用途に限ります このスキルは、教育目的または許可を得たセキュリティ評価のみに使用してください。 このツールを使用する前に、システム所有者から明示的な書面による許可を得る必要があります。 このツールの不正使用は違法であり、固く禁じられています。

必須の確認ゲート 対象を調査、悪用、変更、永続化、データ抽出するコマンド、または対象の認証情報へのアクセスを試みるコマンドを実行する前に、必ず次の手順を実施してください。

  1. ユーザーに、正確な対象 URL、IP アドレス、アカウント、またはリソースを明示するよう求めます。
  2. 書面による許可と許可された範囲を確認するようユーザーに求めます。
  3. 正確なコマンドを提示し、想定される影響を説明します。
  4. 現在の会話内で明示的な確認が得られるまで待ちます。

その確認が得られるまでは読み取り専用にとどめ、防御に関するガイダンスのみを提供してください。サンドボックス、使い捨て VM、または管理されたラボを優先してください。

API セキュリティテストのワークフロー

概要

認証、認可、レート制限、入力検証、API 固有の脆弱性を含む、REST API および GraphQL API のセキュリティテストに特化したワークフローです。

このワークフローを使用する場合

次の場合にこのワークフローを使用します。

  • REST API のセキュリティをテストする
  • GraphQL エンドポイントを評価する
  • API 認証を検証する
  • API のレート制限をテストする
  • バグバウンティで API をテストする

範囲と証拠

承認済みのフェーズとテスト用アカウントを選択し、列挙されたすべてのスキルを自動的に実行しないでください。破壊的なメソッド、インジェクション、ブルートフォース、リソース枯渇、深いまたは複雑な GraphQL リクエストには、所有するテスト用データを使用してください。テスト前に、リクエスト数、同時実行数、バイト数、実行時間の上限、停止条件、クリーンアップを定義してください。テストに第三者のシステムや実際の顧客データを含めないでください。公開スキーマ、ヘッダーの欠落、HTTP の成功応答だけでは、認可の欠陥や悪用可能な制限回避の証明にはなりません。すべてのエンドポイントをテストしたと決めつけてチェックするのではなく、未テストのエンドポイントと観測された影響を記録してください。

ワークフローのフェーズ

フェーズ 1:API の発見
呼び出すスキル
  • api-fuzzing-bug-bounty - API ファジング
  • scanning-tools - API スキャン
アクション
  1. エンドポイントを列挙する
  2. API メソッドを文書化する
  3. パラメーターを特定する
  4. データフローをマッピングする
  5. ドキュメントを確認する
コピー&ペースト用プロンプト
Use @api-fuzzing-bug-bounty to discover API endpoints
フェーズ 2:認証テスト
呼び出すスキル
  • broken-authentication - 認証テスト
  • api-security-best-practices - API 認証
アクション
  1. API キーの検証をテストする
  2. JWT トークンをテストする
  3. OAuth2 フローをテストする
  4. トークンの有効期限をテストする
  5. リフレッシュトークンをテストする
コピー&ペースト用プロンプト
Use @broken-authentication to test API authentication
フェーズ 3:認可テスト
呼び出すスキル
  • idor-testing - IDOR テスト
アクション
  1. オブジェクトレベルの認可をテストする
  2. 機能レベルの認可をテストする
  3. ロールベースのアクセスをテストする
  4. 権限昇格をテストする
  5. マルチテナントの分離をテストする
コピー&ペースト用プロンプト
Use @idor-testing to test API authorization
フェーズ 4:入力検証
呼び出すスキル
  • api-fuzzing-bug-bounty - API ファジング
  • sql-injection-testing - インジェクションテスト
アクション
  1. パラメーターの検証をテストする
  2. SQL インジェクションをテストする
  3. NoSQL インジェクションをテストする
  4. コマンドインジェクションをテストする
  5. XXE インジェクションをテストする
コピー&ペースト用プロンプト
Use @api-fuzzing-bug-bounty to fuzz API parameters
フェーズ 5:レート制限
呼び出すスキル
  • api-security-best-practices - レート制限
アクション
  1. レート制限ヘッダーをテストする
  2. ブルートフォース対策をテストする
  3. リソース枯渇をテストする
  4. 回避手法をテストする
  5. 制限事項を文書化する
コピー&ペースト用プロンプト
Use @api-security-best-practices to test rate limiting
フェーズ 6:GraphQL テスト
呼び出すスキル
  • api-fuzzing-bug-bounty - GraphQL ファジング
アクション
  1. イントロスペクションをテストする
  2. クエリの深さをテストする
  3. クエリの複雑さをテストする
  4. バッチクエリをテストする
  5. フィールド候補の提示をテストする
コピー&ペースト用プロンプト
Use @api-fuzzing-bug-bounty to test GraphQL security
フェーズ 7:エラー処理
呼び出すスキル
  • api-security-best-practices - エラー処理
アクション
  1. エラーメッセージをテストする
  2. 情報漏えいを確認する
  3. スタックトレースをテストする
  4. ログ記録を検証する
  5. 調査結果を文書化する
コピー&ペースト用プロンプト
Use @api-security-best-practices to audit API error handling

API セキュリティチェックリスト

  • 認証が機能している
  • 認可が適用されている
  • 入力が検証されている
  • レート制限が有効になっている
  • エラーがサニタイズされている
  • ロギングが有効になっている
  • CORS が設定されている
  • HTTPS が適用されている

品質ゲート

  • すべてのエンドポイントがテストされている
  • 脆弱性が文書化されている
  • 修正方法が提示されている
  • レポートが生成されている

関連するワークフローバンドル

  • security-audit - セキュリティ監査
  • web-security-testing - ウェブセキュリティ
  • api-design-principles - API コントラクトの設計

制限事項

  • このスキルは、タスクが上記の説明にある範囲に明確に当てはまる場合にのみ使用してください。
  • 出力を、環境固有の検証、テスト、または専門家によるレビューの代替として扱わないでください。
  • 必要な入力、権限、安全上の境界、または成功基準が不足している場合は、作業を中断して確認してください。

コメント