OWASP Top 10 (2025)

OWASP の Top 10:2025 を取得して読み、理解した内容を自分の言葉で書いたもの。 2021年版の URL は 2025年版へ転送されるようになっている。

位置づけ

これはチェックリストでも準拠基準でもなく、認識のための文書。 「これを全部潰したから安全」という使い方はしない。

2025年版は症状ではなく根本原因で分類する方向に寄せられている。 対象 CWE は2017年の約30個から 248個 に増え、1カテゴリあたり平均25個(上限40個)になった。

10項目

ID名前何を指すか
A01Broken Access Control認可の破れ。SSRF がここに統合された
A02Security Misconfiguration設定の不備。2021年の5位から2位へ上昇
A03Software Supply Chain Failures新規。 「脆弱なコンポーネント」を供給網全体へ拡張したもの
A04Cryptographic Failures暗号の失敗。2位から4位へ
A05Injectionインジェクション。3位から5位へ
A06Insecure Design設計そのものが安全でない
A07Authentication Failures認証の失敗(旧「Identification and Authentication Failures」から改称)
A08Software or Data Integrity Failuresソフトウェア/データの完全性の失敗
A09Security Logging & Alerting Failuresログとアラートの失敗(旧「Logging and Monitoring」から改称)
A10Mishandling of Exceptional Conditions新規。 例外条件の扱いの誤り。エラー処理と論理的な破綻

2021年版からの変化が意味すること

順位の入れ替わりよりも、新規2項目と改称2項目の方に情報がある。

  • A03(供給網)の新設 — 「使っているライブラリに既知の脆弱性がある」だけでなく、 ビルド、配布、署名まで含めた経路全体が対象になった。 依存関係の「信頼性の検証」が、ここに接続する
  • A10(例外条件)の新設 — エラー処理の穴が独立したカテゴリになった。 バグの「エラー時」の観点と同じ領域
  • A09 が Monitoring から Alerting へ記録するだけでは足りず、 気づける状態になっているかが問われるようになった。 可観測性と同じ問題意識
  • SSRF が A01 に統合 — 単独の脆弱性ではなく認可の問題として扱う分類になった

順位の決まり方

8カテゴリはデータ分析から、2カテゴリはコミュニティの投票から選ばれている。

投票枠がある理由は、実務者が現場で見ているが、まだ自動テストに落ちていないリスクを 拾うため。データだけだと、ツールが検出できるものに偏る。

順位付けの指標は3つ。

Prevalence(発生率)  テストしたアプリのうち、その弱点を1つ以上含む割合
Exploitability       CVE データから取った CVSS の悪用スコアの平均
Impact               同じデータセットから取った CVSS の技術的影響スコアの平均

攻撃側の資料との対応

このリポジトリの security 配下は攻撃者の動きを追う資料でできている。 Top 10 は守る側の分類なので、対応させて読むと穴が見える。

攻撃側の記述対応する Top 10
侵入 のパスワード利用A07 Authentication Failures
リモートからの攻撃 の Web サイトの脆弱性A01 / A05
他のシステムへの移動A01 Broken Access Control
侵入の検知A09 Security Logging & Alerting Failures
攻撃準備 の事前調査・スキャンA02 Security Misconfiguration

関連