システムの納品のときに「脆弱性対策は実施済みです」と言われたら、何を確認すればよいのでしょうか。
「脆弱性」とはソフトウェアの作りや設定の中にある、攻撃に悪用されうる弱点のことです。弱点の種類は多く、「対策済み」の一言だけでは何をどこまでやったのかが分かりません。
この記事では、OWASP(Webの安全性を扱う国際的な団体)が公開している「OWASP Top 10」の2025年版と、日本のIPA(情報処理推進機構)の資料を根拠に、代表的な脆弱性を整理します。
OWASP Top 10とは
OWASP Top 10は、Webアプリケーションの安全性に関する、最も重大なリスクを10個にまとめた一覧です。2025年版は8回目の改訂にあたります [V1]。
過去の統計データ(約280万のアプリケーションのデータ)をもとにしつつ、データだけに頼らず、現場の実務者へのアンケートも使って、10のうち2つの項目を選んでいます。
データだけでは、すでに見つかった過去の問題しか表現できないため、新しい傾向を取りこぼす可能性があるからです [V1]。
OWASPは、個別の弱点ではなく根本の原因を重視して項目を分けたと説明しています [V1]。
2025年版の10項目
| 順位 | 項目名(英語) | ひとことで言うと |
| A01 | Broken Access Control | 権限のない人が、見てはいけないものを見たり、してはいけないことをしたりできてしまう(詳細②) |
| A02 | Security Misconfiguration | 設定の誤りや、初期設定のまま使うことによる弱点(詳細②) |
| A03 | Software Supply Chain Failures | 使っている部品や、作る・配る仕組みを通じて入り込む問題(詳細③) |
| A04 | Cryptographic Failures | 暗号の使い方の誤りで、大切な情報が漏れる(詳細②) |
| A05 | Injection | 入力された文字が、命令として実行されてしまう(詳細①) |
| A06 | Insecure Design | そもそもの設計に、安全面の考慮が足りない(詳細②) |
| A07 | Authentication Failures | 本人確認の仕組みの弱点(詳細②) |
| A08 | Software or Data Integrity Failures | ソフトウェアやデータが、改ざんされていないかを確かめていない(詳細③) |
| A09 | Security Logging & Alerting Failures | 記録と、異常を知らせる仕組みが足りない(詳細④) |
| A10 | Mishandling of Exceptional Conditions | エラーなどの、普段と違う状況の扱いに失敗する(詳細④) |
注記:項目名の日本語での説明は、私が付けたものです。公式の日本語訳ではありません。
OWASPは日本語版のページも公開しています。
2025年版での大きな変化
- 設定ミス(A02)が5位から2位に上昇:ソフトウェアの動きが、設定で決まる部分が増えているためです [V1]
- サプライチェーンの問題(A03)が、新しい形で3位に:以前の「古い部品の問題」を広げて、作る仕組みや配る仕組みまで複合して新設されました [V1]
- 例外の扱い(A10)が、新しく追加:エラー処理の誤りなどを扱います [V1]
- SSRFはA01に統合:Webサーバーに、意図しない場所へアクセスさせる弱点の一種です [V1]
日本の資料:IPAの「安全なウェブサイトの作り方」
IPAは、届け出を受けた脆弱性の情報をもとに、届出の件数が多かった脆弱性や攻撃による影響が大きい脆弱性を取り上げて、Webサイトの開発者や運営者に向けて「安全なウェブサイトの作り方」という資料を公開しています。
2021年3月に改訂第7版の第4刷が公開されました [V5]。
第1章では、以下の11の脆弱性を取り上げています。
- SQLインジェクション
- OSコマンド・インジェクション
- パス名パラメータの未チェック(ディレクトリ・トラバーサル)
- セッション管理の不備
- クロスサイト・スクリプティング(XSS)
- クロスサイト・リクエスト・フォージェリ(CSRF)
- HTTPヘッダ・インジェクション
- メールヘッダ・インジェクション
- クリックジャッキング
- バッファオーバーフロー
- アクセス制御や認可制御の欠落
「Top 10対応済み」と言われたら
OWASP Top 10は、リスクを整理した「一覧」であり、このリストのすべてに対応すれば安全が保証されるわけではありません。OWASP自身も、データに基づきつつ、データだけには頼らないと説明しています [V1]。
発注の場面では、次のように聞き返すと具体的になります。
- 10項目のそれぞれについて、「何を」「どのように」対策したのか
- 第三者による診断を、いつ、どの範囲で行ったか(詳細④)
- 運用が始まったあとに見つかる、新しい弱点への対応の仕組みがあるか(詳細③)
注記:この3点は、各資料の内容から整理した確認項目です。
資料がこの形のチェックリストを示しているわけではありません。
また、あくまで代表的なトップ10であり、これ以外にも項目はたくさんあります。
そして、それらは確認する必要が無い、というわけではありません。
用語
| 言葉 | 意味 |
| CVE | 個別の脆弱性に付く、世界共通の識別番号。MITREが運営するcve.orgなどで検索できる [V3] |
| CWE | 弱点の「種類」を分類した一覧。OWASP Top 10は、複数のCWEを、1つの項目にまとめている [V1] |
| SBOM | ソフトウェアの「部品表」。どんな部品(ライブラリ)を、どのバージョンで使っているかの一覧 [V3] |
参照元
[V1] OWASP, Top 10:2025 — Introduction — https://owasp.org/Top10/2025/0x00_2025-Introduction/
[V3] OWASP, Top 10:2025 — A03 Software Supply Chain Failures — https://owasp.org/Top10/2025/A03_2025-Software_Supply_Chain_Failures/
[V5] IPA(情報処理推進機構), 安全なウェブサイトの作り方 — https://www.ipa.go.jp/security/vuln/websecurity.html

コメント