Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help


title: “Web Pentest チェックリスト(原案)” version: “0.1-draft”

Web Pentest チェックリスト(原案)

本チェックリストは、Web アプリケーションに対する Pentest の観点を整理するための原案である。
詳細な分類やテスト手順については OWASP ASVS / WSTG を参照しつつ、本書の Part 2〜3 に沿って更新していく。

認証・セッション管理

  • 認証フローが強固であり、パスワードリスト攻撃やブルートフォースに対する防御がある
  • ログイン直後にセッション ID が再発行される(Session Fixation 対策)
  • セッション Cookie に Secure / HttpOnly / 適切な SameSite が設定されている
  • パスワードリセット・アカウントロック・多要素認証の実装が適切である

アクセス制御

  • 認可チェックがサーバサイドで実装されており、UI だけに依存していない
  • ID 変更やパラメータ改変により、他者リソースへのアクセスが発生しない(IDOR/BOLA)
  • 管理機能エンドポイントへのアクセス制御が適切である(直接 URL アクセスの検証)

入力値検証・出力エスケープ

  • すべての外部入力に対して、型・長さ・フォーマットの検証が行われている
  • 出力時にコンテキストに応じたエスケープが行われている(HTML / 属性 / JavaScript / JSON)
  • SQL インジェクション対策として、プレースホルダ付きクエリが利用されている
  • コマンドインジェクションやファイルパス操作時に、ホワイトリスト等の対策がある

セキュリティ設定・エラーハンドリング

  • エラーメッセージに過度な内部情報(スタックトレース、SQL 文等)が含まれない
  • HTTP セキュリティヘッダ(CSP、X-Frame-Options 等)が適切に設定されている
  • 管理用インタフェースやデバッグエンドポイントが公開されていない

ログ・監査

  • 重要操作(ログイン、パスワード変更、権限変更等)がログに記録されている
  • ログに機密情報(パスワード、完全なカード番号等)が含まれていない
  • ログの保存期間と保護が適切に設計されている