mcpField
T
top-web-vulnerabilities

top-web-vulnerabilities

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

top-web-vulnerabilities について

Web の脆弱性をカテゴリ別に整理し、原因、影響、緩和策を示すセキュリティリファレンススキルです。セキュリティ評価と修正計画に活用できます。

主な機能

  1. 01カテゴリ別の脆弱性リファレンス
  2. 02原因と影響の説明
  3. 03緩和策のガイダンス
  4. 04評価・修正チェックリスト

活用シーン

  1. 01Web アプリの脆弱性レビュー
  2. 02特定したセキュリティ問題の修正計画
  3. 03セキュリティ評価チェックリストの作成

インストール

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

$npx skills add https://github.com/zebbern/claude-code-guide --skill top-web-vulnerabilities

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

詳細

トップ100 Web脆弱性リファレンス

目的

カテゴリ別に整理された、最も重大な Web アプリケーション脆弱性100件について、包括的で構造化されたリファレンスを提供します。このスキルにより、Web セキュリティ脅威の全領域にわたって、脆弱性の体系的な特定、影響評価、および是正ガイダンスを行えます。業界標準と実際の攻撃パターンに沿って、15の主要な脆弱性カテゴリに内容を整理しています。

前提条件

  • Web アプリケーションアーキテクチャの基本的な理解(クライアントサーバーモデル、HTTP プロトコル)
  • 一般的な Web 技術(HTML、JavaScript、SQL、XML、API)への精通
  • 認証と認可の概念の理解
  • Web アプリケーションセキュリティテストツール(Burp Suite、OWASP ZAP)へのアクセス
  • 安全なコーディング原則の把握を推奨

出力と成果物

  • 定義、根本原因、影響、および対策を含む完全な脆弱性カタログ
  • 体系的な評価のためのカテゴリ別の脆弱性グループ分け
  • セキュリティテストおよび是正のためのクイックリファレンス
  • 脆弱性評価チェックリストおよびセキュリティポリシーの基盤

コアワークフロー

フェーズ1:インジェクション脆弱性の評価

データ処理コンポーネントを標的とするインジェクション攻撃ベクトルを評価します。

SQLインジェクション(1)

  • 定義:入力フィールドに挿入された悪意のある SQL コードにより、データベースクエリを操作すること
  • 根本原因:入力検証の欠如、パラメータ化クエリの不適切な使用
  • 影響:不正なデータアクセス、データ改ざん、データベースの侵害
  • 対策:パラメータ化クエリ/プリペアドステートメントの使用、入力検証、最小権限のデータベースアカウント

クロスサイトスクリプティング(XSS)(2)

  • 定義:他のユーザーが閲覧する Web ページへの悪意のあるスクリプトの注入
  • 根本原因:出力エンコーディングの不備、入力サニタイズの欠如
  • 影響:セッションハイジャック、認証情報の窃取、Web サイトの改ざん
  • 対策:出力エンコーディング、コンテンツセキュリティポリシー(CSP)、入力サニタイズ

コマンドインジェクション(5、11)

  • 定義:脆弱なアプリケーションを通じた任意のシステムコマンドの実行
  • 根本原因:システムシェルに渡されるサニタイズされていないユーザー入力
  • 影響:システム全体の侵害、データの持ち出し、横展開
  • 対策:シェル実行の回避、有効なコマンドのホワイトリスト化、厳格な入力検証

XMLインジェクション(6)、LDAPインジェクション(7)、XPathインジェクション(8)

  • 定義:悪意のある入力による XML/LDAP/XPath クエリの操作
  • 根本原因:クエリ構築時における入力の不適切な処理
  • 影響:データの露出、認証のバイパス、情報漏えい
  • 対策:入力検証、パラメータ化クエリ、特殊文字のエスケープ

サーバーサイドテンプレートインジェクション(SSTI)(13)

  • 定義:テンプレートエンジンへの悪意のあるコードの注入
  • 根本原因:ユーザー入力がテンプレート式に直接埋め込まれること
  • 影響:リモートコード実行、サーバーの侵害
  • 対策:テンプレートエンジンのサンドボックス化、テンプレートへのユーザー入力の使用回避、厳格な入力検証
フェーズ 2: 認証とセッションのセキュリティ

認証メカニズムの脆弱性を評価します:

セッション固定化 (14)

  • 定義: 攻撃者が認証前に被害者のセッション ID を設定する
  • 根本原因: ログイン後にセッション ID が再生成されない
  • 影響: セッションハイジャック、不正なアカウントアクセス
  • 対策: 認証時にセッション ID を再生成し、安全なセッション管理を使用する

ブルートフォース攻撃 (15)

  • 定義: 自動化ツールを使用した体系的なパスワード推測
  • 根本原因: アカウントロックアウト、レート制限、または CAPTCHA の欠如
  • 影響: 不正アクセス、認証情報の漏えい
  • 対策: アカウントロックアウトポリシー、レート制限、MFA、CAPTCHA

セッションハイジャック (16)

  • 定義: 攻撃者が有効なセッショントークンを盗む、または予測する
  • 根本原因: 脆弱なセッショントークン生成、安全でない通信
  • 影響: アカウントの乗っ取り、不正アクセス
  • 対策: 安全な乱数によるトークン生成、HTTPS、HttpOnly/Secure Cookie フラグ

クレデンシャルスタッフィングと使い回し (22)

  • 定義: 流出した認証情報を使用して、複数のサービスにまたがってアカウントにアクセスする
  • 根本原因: ユーザーによるパスワードの使い回し、侵害検知の欠如
  • 影響: 大規模なアカウントの侵害、データ侵害
  • 対策: MFA、漏えいパスワードのチェック、一意の認証情報の要求

安全でない「ログインしたままにする」機能 (85)

  • 定義: 永続的な認証トークンの実装が脆弱である
  • 根本原因: 予測可能なトークン、不十分な有効期限の管理
  • 影響: 不正な永続的アクセス、セッションの侵害
  • 対策: 強力なトークン生成、適切な有効期限の設定、安全な保存

CAPTCHA バイパス (86)

  • 定義: ボット検知の仕組みを回避する
  • 根本原因: CAPTCHA アルゴリズムの脆弱性、不適切な検証
  • 影響: 自動化された攻撃、クレデンシャルスタッフィング、スパム
  • 対策: reCAPTCHA v3、多層的なボット検知、レート制限
フェーズ 3: 機密データの露出

データ保護の不備を特定します:

IDOR - 安全でない直接オブジェクト参照 (23, 42)

  • 定義: ユーザーが指定した参照を介して内部オブジェクトに直接アクセスする
  • 根本原因: オブジェクトアクセスに対する認可チェックの欠如
  • 影響: 不正なデータアクセス、プライバシー侵害
  • 対策: アクセス制御の検証、間接参照マップ、認可チェック

データ漏えい (24)

  • 定義: 機密情報の意図しない開示
  • 根本原因: 不十分なデータ保護、脆弱なアクセス制御
  • 影響: プライバシー侵害、規制当局による罰則、評判の低下
  • 対策: DLP ソリューション、暗号化、アクセス制御、セキュリティ教育

暗号化されていないデータの保存 (25)

  • 定義: 機密データを暗号化せずに保存する
  • 根本原因: 保存時の暗号化の未実装
  • 影響: ストレージが侵害された場合のデータ漏えい
  • 対策: フルディスク暗号化、データベース暗号化、安全な鍵管理

情報漏えい (33)

  • 定義: エラーメッセージや応答を通じたシステムの詳細情報の露出
  • 根本原因: 詳細すぎるエラー処理、本番環境でのデバッグ情報の残存
  • 影響: さらなる攻撃のための偵察、認証情報の露出
  • 対策: 汎用的なエラーメッセージ、デバッグモードの無効化、安全なログ記録
Phase 4: セキュリティ設定ミス

設定上の弱点を評価します:

セキュリティヘッダーの欠落 (26)

  • 定義: CSP、X-Frame-Options、HSTS などの保護用 HTTP ヘッダーが存在しないこと
  • 根本原因: サーバー設定の不備
  • 影響: XSS 攻撃、クリックジャッキング、プロトコルダウングレード
  • 対策: CSP、X-Content-Type-Options、X-Frame-Options、HSTS を実装する

デフォルトパスワード (28)

  • 定義: システムやアプリケーションでデフォルトの認証情報が変更されていないこと
  • 根本原因: ベンダーのデフォルト設定を変更していないこと
  • 影響: 不正アクセス、システムの侵害
  • 対策: パスワードの変更を必須化し、強力なパスワードポリシーを適用する

ディレクトリリスティング (29)

  • 定義: Web サーバーがディレクトリの内容を公開していること
  • 根本原因: サーバーの不適切な設定
  • 影響: 情報漏えい、機密ファイルの露出
  • 対策: ディレクトリインデックスを無効化し、既定のインデックスファイルを使用する

保護されていない API エンドポイント (30)

  • 定義: 認証や認可が不足している API
  • 根本原因: API ルートにセキュリティ制御が欠けていること
  • 影響: 不正なデータアクセス、API の悪用
  • 対策: OAuth/API キー、アクセス制御、レート制限を導入する

開いているポートとサービス (31)

  • 定義: 不要なネットワークサービスが公開されていること
  • 根本原因: 攻撃対象領域を最小化していないこと
  • 影響: 脆弱なサービスの悪用
  • 対策: ポートスキャンによる監査、ファイアウォールルール、サービスの最小化

CORS の設定ミス (35)

  • 定義: Cross-Origin Resource Sharing ポリシーが過度に許可されていること
  • 根本原因: ワイルドカードのオリジン、不適切な CORS 設定
  • 影響: クロスサイトリクエスト攻撃、データの窃取
  • 対策: 信頼できるオリジンをホワイトリスト化し、CORS ヘッダーを検証する

未パッチのソフトウェア (34)

  • 定義: 古く脆弱なソフトウェアを実行しているシステム
  • 根本原因: パッチ管理の怠慢
  • 影響: 既知の脆弱性の悪用
  • 対策: パッチ管理プログラム、脆弱性スキャン、自動アップデートを導入する
Phase 5: XML 関連の脆弱性

XML 処理のセキュリティを評価します:

XXE - XML 外部エンティティインジェクション (37)

  • 定義: XML パーサーを悪用してファイルや内部システムにアクセスすること
  • 根本原因: 外部エンティティの処理が有効になっていること
  • 影響: ファイルの漏えい、SSRF、サービス拒否
  • 対策: 外部エンティティを無効化し、安全な XML パーサーを使用する

XEE - XML エンティティ展開 (38)

  • 定義: 過剰なエンティティ展開によりリソースが枯渇すること
  • 根本原因: エンティティの展開数が無制限に許可されていること
  • 影響: サービス拒否、パーサーのクラッシュ
  • 対策: エンティティ展開を制限し、パーサーの制約を設定する

XML ボム (Billion Laughs) (39)

  • 定義: ネストしたエンティティを含み、リソースを消費するよう細工された XML
  • 根本原因: 再帰的なエンティティ定義
  • 影響: メモリの枯渇、サービス拒否
  • 対策: エンティティ展開の上限設定、入力サイズの制限

XML サービス拒否 (65)

  • 定義: 細工された XML により過剰な処理が発生すること
  • 根本原因: 制限のない複雑なドキュメント構造
  • 影響: CPU/メモリの枯渇、サービスの停止
  • 対策: スキーマ検証、サイズ制限、処理タイムアウトの設定
フェーズ 6: 壊れたアクセス制御

認可の強制を評価します:

不適切な認可 (40)

  • 定義: アクセス制御を適切に強制できないこと
  • 根本原因: 弱い認可ポリシー、チェックの欠落
  • 影響: 機密リソースへの不正アクセス
  • 緩和策: RBAC、集中型 IAM、定期的なアクセスレビュー

権限昇格 (41)

  • 定義: 意図された権限を超えて昇格したアクセスを得ること
  • 根本原因: 誤設定された権限、システムの脆弱性
  • 影響: システムの完全な侵害、データの改ざん
  • 緩和策: 最小権限の原則、定期的なパッチ適用、権限の監視

強制ブラウジング (43)

  • 定義: 制限されたリソースにアクセスするための直接的な URL 操作
  • 根本原因: 弱いアクセス制御、予測可能な URL
  • 影響: ファイルやディレクトリへの不正アクセス
  • 緩和策: サーバーサイドのアクセス制御、予測不可能なリソースパス

関数レベルのアクセス制御の欠如 (44)

  • 定義: 管理用または特権の機能が保護されていないこと
  • 根本原因: UI レベルでのみ認可を行っていること
  • 影響: 不正な機能の実行
  • 緩和策: すべての機能に対するサーバーサイドの認可、RBAC
フェーズ 7: 安全でないデシリアライゼーション

オブジェクトのシリアライゼーションのセキュリティを評価します:

デシリアライゼーションによるリモートコード実行 (45)

  • 定義: 悪意のあるシリアライズ済みオブジェクトを通じて任意のコードが実行されること
  • 根本原因: 検証なしで信頼できないデータをデシリアライズしていること
  • 影響: システムの完全な侵害、コードの実行
  • 緩和策: 信頼できないデータのデシリアライズを避ける、整合性チェック、型の検証

データの改ざん (46)

  • 定義: シリアライズ済みデータの不正な変更
  • 根本原因: 整合性検証の欠如
  • 影響: データの破損、権限の操作
  • 緩和策: デジタル署名、HMAC 検証、暗号化

オブジェクトインジェクション (47)

  • 定義: デシリアライズ中に悪意のあるオブジェクトがインスタンス化されること
  • 根本原因: 安全でないデシリアライゼーションの実践
  • 影響: コードの実行、不正アクセス
  • 緩和策: 型の制限、クラスのホワイトリスト化、安全なライブラリの使用
フェーズ 8: API セキュリティ評価

API 固有の脆弱性を評価します:

安全でない API エンドポイント (48)

  • 定義: 適切なセキュリティ制御がない API
  • 根本原因: 不適切な API 設計、認証の欠如
  • 影響: データ漏えい、不正アクセス
  • 緩和策: OAuth/JWT、HTTPS、入力検証、レート制限

API キーの露出 (49)

  • 定義: 漏えいまたは公開された API 認証情報
  • 根本原因: キーのハードコーディング、安全でない保管
  • 影響: 不正な API アクセス、悪用
  • 緩和策: 安全なキーの保管、ローテーション、環境変数

レート制限の欠如 (50)

  • 定義: API リクエストの頻度に対する制御がないこと
  • 根本原因: スロットリング機構の欠如
  • 影響: DoS、API の悪用、リソースの枯渇
  • 緩和策: ユーザーまたは IP ごとのレート制限、スロットリング、DDoS 対策

不適切な入力検証 (51)

  • 定義: 検証されていないユーザー入力を受け付ける API
  • 根本原因: サーバーサイドの検証の欠如
  • 影響: インジェクション攻撃、データの破損
  • 緩和策: 厳密な検証、パラメータ化クエリ、WAF

API の悪用 (75)

  • 定義: 悪意のある目的で API の機能を悪用すること
  • 根本原因: クライアントの入力に対する過度な信頼
  • 影響: データの窃取、アカウントの乗っ取り、サービスの悪用
  • 緩和策: 強力な認証、振る舞い分析、異常検知
Phase 9: 通信セキュリティ

トランスポート層の保護を評価します:

中間者攻撃 (Man-in-the-Middle Attack) (52)

  • 定義: 当事者間の通信の傍受
  • 根本原因: 暗号化されていないチャネル、侵害されたネットワーク
  • 影響: データ窃取、セッションハイジャック、なりすまし
  • 緩和策: TLS/SSL、証明書ピンニング、相互認証

不十分なトランスポート層セキュリティ (Insufficient Transport Layer Security) (53)

  • 定義: 転送中のデータに対する弱い、または古い暗号化
  • 根本原因: 古いプロトコル (SSLv2/3)、弱い暗号スイート
  • 影響: トラフィックの傍受、認証情報の窃取
  • 緩和策: TLS 1.2以上、強力な暗号スイート、HSTS

安全でないSSL/TLS設定 (Insecure SSL/TLS Configuration) (54)

  • 定義: 暗号化設定の不適切な構成
  • 根本原因: 弱い暗号スイート、前方秘匿性(PFS)の欠如
  • 影響: トラフィックの復号、MITM攻撃
  • 緩和策: 最新の暗号スイート、PFS、証明書検証

安全でない通信プロトコル (Insecure Communication Protocols) (55)

  • 定義: 暗号化されていないプロトコル (HTTP、Telnet、FTP) の使用
  • 根本原因: レガシーシステム、セキュリティ意識の欠如
  • 影響: トラフィックのスニッフィング、認証情報の露出
  • 緩和策: HTTPS、SSH、SFTP、VPNトンネル
Phase 10: クライアントサイドの脆弱性

ブラウザ側のセキュリティを評価します:

DOMベースのXSS (DOM-based XSS) (56)

  • 定義: クライアントサイドのJavaScriptの操作によるXSS
  • 根本原因: ユーザー入力を用いた安全でないDOM操作
  • 影響: セッション窃取、認証情報の収集
  • 緩和策: 安全なDOM API、CSP、入力のサニタイズ

安全でないクロスオリジン通信 (Insecure Cross-Origin Communication) (57)

  • 定義: クロスオリジンリクエストの不適切な処理
  • 根本原因: 緩和されたCORS/SOPポリシー
  • 影響: データ漏えい、CSRF攻撃
  • 緩和策: 厳格なCORS、CSRFトークン、オリジンの検証

ブラウザキャッシュポイズニング (Browser Cache Poisoning) (58)

  • 定義: キャッシュされたコンテンツの改ざん
  • 根本原因: 弱いキャッシュ検証
  • 影響: 悪意のあるコンテンツの配信
  • 緩和策: Cache-Controlヘッダー、HTTPS、整合性チェック

クリックジャッキング (Clickjacking) (59, 71)

  • 定義: 隠された要素をユーザーにクリックさせるUIリドレス攻撃
  • 根本原因: フレーム保護の欠如
  • 影響: 意図しない操作、認証情報の窃取
  • 緩和策: X-Frame-Options、CSP frame-ancestors、フレーム破り

HTML5のセキュリティ問題 (HTML5 Security Issues) (60)

  • 定義: HTML5 API (WebSocket、ストレージ、位置情報) の脆弱性
  • 根本原因: API の不適切な使用、不十分な検証
  • 影響: データ漏えい、XSS、プライバシー侵害
  • 緩和策: API の安全な使用、入力検証、サンドボックス化
Phase 11: サービス拒否の評価

可用性に対する脅威を評価します:

DDoS - 分散型サービス拒否攻撃 (Distributed Denial of Service) (61)

  • 定義: 複数の送信元からのトラフィックによるシステムの過負荷
  • 根本原因: ボットネット、増幅攻撃
  • 影響: サービスの利用不可、収益の損失
  • 緩和策: DDoS防御サービス、レート制限、CDN

アプリケーション層のDoS (Application Layer DoS) (62)

  • 定義: リソースを枯渇させるためにアプリケーションロジックを狙う攻撃
  • 根本原因: 非効率なコード、リソース負荷の高い処理
  • 影響: アプリケーションの利用不可、パフォーマンスの低下
  • 緩和策: レート制限、キャッシュ、WAF、コードの最適化

リソース枯渇 (Resource Exhaustion) (63)

  • 定義: CPU、メモリ、ディスク、またはネットワークリソースの枯渇
  • 根本原因: 非効率なリソース管理
  • 影響: システムのクラッシュ、サービスの低下
  • 緩和策: リソースクォータ、監視、ロードバランシング

Slowloris攻撃 (Slowloris Attack) (64)

  • 定義: 部分的なHTTPリクエストで接続を開いたままにする攻撃
  • 根本原因: 接続タイムアウトの未設定
  • 影響: Webサーバーのリソース枯渇
  • 緩和策: 接続タイムアウト、リクエスト数の制限、リバースプロキシ
Phase 12: Server-Side Request Forgery

SSRF の脆弱性を評価します:

SSRF - Server-Side Request Forgery (66)

  • 定義: サーバーを操作して、内部リソースへのリクエストを行わせること
  • 根本原因: 検証されていないユーザー制御の URL
  • 影響: 内部ネットワークへのアクセス、データの窃取、クラウドメタデータへのアクセス
  • 対策: URL のホワイトリスト化、ネットワークのセグメンテーション、エグレスフィルタリング

Blind SSRF (87)

  • 定義: 直接的なレスポンスが確認できない SSRF
  • 根本原因: SSRF と同様だが、検出がより困難
  • 影響: データの持ち出し、内部偵察
  • 対策: 許可リスト、WAF、ネットワーク制限

Time-Based Blind SSRF (88)

  • 定義: レスポンスの時間から SSRF の成否を推測すること
  • 根本原因: リクエストの結果を示す処理遅延
  • 影響: 長期的な悪用、検知の回避
  • 対策: リクエストのタイムアウト、異常検知、タイミングの監視
Phase 13: Additional Web Vulnerabilities
#VulnerabilityRoot CauseImpactMitigation
67HTTP Parameter PollutionInconsistent parsingInjection, ACL bypassStrict parsing, validation
68Insecure RedirectsUnvalidated targetsPhishing, malwareWhitelist destinations
69File Inclusion (LFI/RFI)Unvalidated pathsCode exec, disclosureWhitelist files, disable RFI
70Security Header BypassMisconfigured headersXSS, clickjackingProper headers, audits
72Inadequate Session TimeoutExcessive timeoutsSession hijackingIdle termination, timeouts
73Insufficient LoggingMissing infrastructureDetection gapsSIEM, alerting
74Business Logic FlawsInsecure designFraud, unauthorized opsThreat modeling, testing
Phase 14: Mobile and IoT Security
#VulnerabilityRoot CauseImpactMitigation
76Insecure Mobile StoragePlain text, weak cryptoData theftKeychain/Keystore, encrypt
77Insecure Mobile TransmissionHTTP, cert failuresTraffic interceptionTLS, cert pinning
78Insecure Mobile APIsMissing auth/validationData exposureOAuth/JWT, validation
79App Reverse EngineeringHardcoded credsCredential theftObfuscation, RASP
80IoT Management IssuesWeak auth, no TLSDevice takeoverStrong auth, TLS
81Weak IoT AuthenticationDefault passwordsUnauthorized accessUnique creds, MFA
82IoT VulnerabilitiesDesign flaws, old firmwareBotnet recruitmentUpdates, segmentation
83Smart Home AccessInsecure defaultsPrivacy invasionMFA, segmentation
84IoT Privacy IssuesExcessive collectionSurveillanceData minimization
Phase 15: Advanced and Zero-Day Threats
#VulnerabilityRoot CauseImpactMitigation
89MIME SniffingMissing headersXSS, spoofingX-Content-Type-Options
91CSP BypassWeak configXSS despite CSPStrict CSP, nonces
92Inconsistent ValidationDecentralized logicControl bypassCentralized validation
93Race ConditionsMissing syncPrivilege escalationProper locking
94-95Business Logic FlawsMissing validationFinancial fraudServer-side validation
96Account EnumerationDifferent responsesTargeted attacksUniform responses
98-99Unpatched VulnerabilitiesPatch delaysZero-day exploitationPatch management
100Zero-Day ExploitsUnknown vulnsUnmitigated attacksDefense in depth

Quick Reference

脆弱性カテゴリの概要
CategoryVulnerability NumbersKey Controls
Injection1-13Parameterized queries, input validation, output encoding
Authentication14-23, 85-86MFA, session management, account lockout
Data Exposure24-27Encryption at rest/transit, access controls, DLP
Misconfiguration28-36Secure defaults, hardening, patching
XML37-39, 65Disable external entities, limit expansion
Access Control40-44RBAC, least privilege, authorization checks
Deserialization45-47Avoid untrusted data, integrity validation
API Security48-51, 75OAuth, rate limiting, input validation
Communication52-55TLS 1.2+, certificate validation, HTTPS
Client-Side56-60CSP, X-Frame-Options, safe DOM
DoS61-65Rate limiting, DDoS protection, resource limits
SSRF66, 87-88URL whitelisting, egress filtering
Mobile/IoT76-84Encryption, authentication, secure storage
Business Logic74, 92-97Threat modeling, logic testing
Zero-Day98-100Defense in depth, threat intelligence
重要なセキュリティヘッダー
Content-Security-Policy: default-src 'self'; script-src 'self'
X-Content-Type-Options: nosniff
X-Frame-Options: DENY
X-XSS-Protection: 1; mode=block
Strict-Transport-Security: max-age=31536000; includeSubDomains
Referrer-Policy: strict-origin-when-cross-origin
Permissions-Policy: geolocation=(), microphone=()
OWASP Top 10 との対応
OWASP 2021Related Vulnerabilities
A01: Broken Access Control40-44, 23, 74
A02: Cryptographic Failures24-25, 53-55
A03: Injection1-13, 37-39
A04: Insecure Design74, 92-97
A05: Security Misconfiguration26-36
A06: Vulnerable Components34, 98-100
A07: Auth Failures14-23, 85-86
A08: Data Integrity45-47
A09: Logging Failures73
A10: SSRF66, 87-88

制約と制限事項

  • 脆弱性の定義は一般的なパターンを表しており、具体的な実装は製品ごとに異なります
  • 軽減策は、使用している技術スタックとアーキテクチャに合わせて調整する必要があります
  • 新たな脆弱性は絶えず出現するため、このリファレンスは更新する必要があります
  • 一部の脆弱性は複数のカテゴリにまたがります(例:IDOR は複数の文脈に現れます)
  • 軽減策の有効性は、適切に実装されているかどうかに依存します
  • 自動化されたスキャナーでは、すべての脆弱性タイプを検出できるわけではありません(特にビジネスロジックの脆弱性)

トラブルシューティング

一般的な評価時の課題
ChallengeSolution
False positives in scanningManual verification, contextual analysis
Business logic flaws missedManual testing, threat modeling, abuse case analysis
Encrypted traffic analysisProxy configuration, certificate installation
WAF blocking testsRate adjustment, IP rotation, payload encoding
Session handling issuesCookie management, authentication state tracking
API discoverySwagger/OpenAPI enumeration, traffic analysis
脆弱性検証の手法
Vulnerability TypeVerification Approach
InjectionPayload testing with encoded variants
XSSAlert boxes, cookie access, DOM inspection
CSRFCross-origin form submission testing
SSRFOut-of-band DNS/HTTP callbacks
XXEExternal entity with controlled server
Access ControlHorizontal/vertical privilege testing
AuthenticationCredential rotation, session analysis

参考資料

  • OWASP Top 10 Web Application Security Risks
  • CWE/SANS Top 25 Most Dangerous Software Errors
  • OWASP Testing Guide
  • OWASP Application Security Verification Standard (ASVS)
  • NIST Cybersecurity Framework
  • Source: Kumar MS - Top 100 Web Vulnerabilities

コメント