title: “API Security チェックリスト(原案)” version: “0.1-draft”
API Security チェックリスト(原案)
本チェックリストは、REST API を中心とした API セキュリティの観点を整理するための原案である。
OWASP API Security Top 10 を参考に、本書の Part 4〜6 に沿って更新する。
認証・認可
- すべての保護対象 API に対して認証が必須となっている(不要な匿名アクセスがない)
- オブジェクトレベルのアクセス制御が実装されており、ID 変更による BOLA が発生しない
- 機能レベルのアクセス制御(管理 API 等)が適切に実装されている
- JWT 等のトークンについて、署名・
iss・aud・exp等のクレーム検証が行われている
入力・出力・データ最小化
- リクエストボディやクエリに対する入力検証が行われている
- レスポンスに不要なフィールドや内部情報が含まれていない(データ最小化)
-
fields/include等のパラメータで非公開情報を取得できない
Rate Limit / リソース保護
- 認証エンドポイントやワンタイムコード検証に対して適切なレート制限がある
- 重いバッチ処理やレポート生成 API に対して DoS を防ぐ制限がある
- API キーやトークンの誤用検知(異常なアクセスパターン)が行われている
API 管理・ミスコンフィグ
- 不要な古いバージョンの API が公開されたままになっていない
- ステージング・デバッグ用のエンドポイントが本番環境に露出していない
- CORS 設定が適切であり、認証付き API に対して
Access-Control-Allow-Origin: *が設定されていない