OWASP Top 10 2025(RC)まとめ:生成AI時代に押さえたいWebセキュリティの要点
OWASP TOP 10のRelease Candidate(リリース候補版) が2025年11月6日にでました。こちら、Webアプリの代表的なセキュリティリスクをまとめた「10大リスク」リスト。
Webアプリ開発に携わる人にとって大事なセキュリティ指標のひとつです。
個人的な印象としては 「やっぱり生成AI時代だからこそ、確かにここは大事!」 というもの。
生成AIコーディングや最新のWebセキュリティに関心ある方は、ぜひ続きを読んでくださいね。
2021年度版と2025年度版の違い
OWASP Top 10 はおよそ 3〜4年ごとに見直しが行われます。前回は 2021 年に発表されました。
2021 → 2025 の変化を見ることで、「2025年時点で何に重点を置くべきか」 が見えてきます。まず2021 年版はこちら。
【2021年度OWASP TOP10】
| 番号 | 英語名称 | 日本語名称 |
|---|---|---|
| A01:2021 | Broken Access Control | アクセス制御の不備 |
| A02:2021 | Cryptographic Failures | 暗号化の不備 |
| A03:2021 | Injection | インジェクション |
| A04:2021 | Insecure Design | 設計上の不備 |
| A05:2021 | Security Misconfiguration | セキュリティ設定ミス |
| A06:2021 | Vulnerable and Outdated Components | 脆弱性のある/古いコンポーネント |
| A07:2021 | Identification and Authentication Failures | 認証・識別の不備 |
| A08:2021 | Software and Data Integrity Failures | ソフトウェア/データ完全性の不備 |
| A09:2021 | Security Logging and Monitoring Failures | ログ・監視の不備 |
| A10:2021 | Server-Side Request Forgery(SSRF) | SSRF(サーバー側リクエストフォージェリ) |
次に2025年度版(RC)はこちら。
※色は「2021 との比較に基づく位置変動」を示したものです
🟩 前回と同じ位置
🟥 前方へ移動
🟦 後方へ移動
🟨 新規追加
【2025年度OWASP TOP10】
| 色 | 番号 | 英語名称 | 日本語名称 |
|---|---|---|---|
| 🟩 | 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 | Logging & Alerting Failures | ログ・アラートの不備 |
| 🟨 | A10 | Mishandling of Exceptional Conditions | 例外処理/異常条件の取り扱いミス |
今回新たにできた項目
Software Supply Chain Failures(A03)
ソフトウェアの依存ライブラリやサードパーティ製コンポーネントに問題があった場合、アプリケーション全体が危険にさらされるリスク。
これ 悪い人からしたら、非常に効率的かつ魅力的 です。下記のような攻撃が可能となります。
・人気のあるライブラリに脆弱性を見つける(または仕込む)
・そのライブラリを使っている企業を一斉に攻撃する
一つの脆弱性で、何千・何万もの企業を同時に攻撃できちゃう。 効率がいいだけに、今後も増加が予想されます。
*A06(2021)の「古いコンポーネント問題」を含みつつ、より広く体系化された新設カテゴリです。
Mishandling of Exceptional Conditions(A10)
こちらは例外条件の誤処理。
対策としては、エラーが起こった時に 「安全に失敗する(fail securely)」ように設計する ことです。たとえばtry-catchの処理を適切にいれておくなど。
生成AIコーディングは、「動くこと」に重点が置かれます。
生成AI任せにせず、適切な例外処理は開発者が意識すべき部分だと感じます。
前回からアップした項目
Security Misconfiguration(A02)
セキュリティ設定ミスは、2021 では A05、今回は A02 の位置に移動しています。デフォルトのアカウントやパスワードがそのまま変わっていないといった、初歩的なリスクも該当します。
こちら、 バイブコーディングで最も注意が必要な項目 じゃないかと思います。
特に「だれでもWebアプリが作れる」バイブコーディング系のクラウドツールでは、開発中のコードが、そのまま本番用に公開されるものもあります。デプロイしやすい一方、設定ミスまで本番に持ち込まれてしまう危険性 があります!
とはいえ、テストしたWebアプリのすべてが、何らかの形で、この脆弱性リスクをもっていた と判断されたそうです。
単純なミスが命取りになる可能性があり、今後ますます注意が必要な領域だと感じます。
さいごに
ざっくり見てきましたが、自分のブログでは、詳しくひとつずつの項目解説しています。Laravel開発での注意点と対策・生成AIコーディングでのポイント なども書いております。
ご興味あれば、下記も見てくださいね。
Discussion