更新日:2026年6月3日

13分で読めます

2025年版OWASP Top 10が示す新たな脅威と対応策

新たなサプライチェーンリスクとエラー処理リスク、順位の変動、全10カテゴリの対応策を解説します。

OWASPファウンデーションは、2025年版「セキュリティリスク Top 10」の第8版を公開しました。アプリケーションセキュリティの変化を反映した大幅な改訂となっています。175,000件以上のCVE(Common Vulnerabilities and Exposures)レコードの分析と、世界中のセキュリティ実務者からのフィードバックをもとに、現代の攻撃ベクトルに対応した内容に更新されています。何が変わり、なぜ重要で、どうシステムを守るべきか——押さえておくべきポイントをまとめました。

💡 2月18日開催のGitLab Transcend日本開催版では、エージェント型AIがソフトウェアデリバリーをどう変革するかをご紹介します。お客様の事例を聞き、自社のモダナイゼーションを加速するヒントを得てください。今すぐ登録する

2025年版の新機能

2021年版(直近の公開)から2025年版への移行は、単なる微調整ではなく、アプリケーションセキュリティの根本的な転換を意味しています。 まったく新しい2つのカテゴリが追加され、1つのカテゴリが別カテゴリに統合されました。これは、従来のテストでは見落とされがちな新たなリスクの台頭を示しています。

こうした変更点は、以下の図で確認できます:

OWASP Top 10 - 2021年から2025年への変更

2つの新カテゴリ

  • A03:ソフトウェアサプライチェーンの障害:2021年版の「脆弱で古いコンポーネント」カテゴリを拡張し、依存関係、ビルドシステム、配布インフラを含むソフトウェアサプライチェーン全体を対象とします。テストデータにおける発生件数は最も少ないものの、CVEのエクスプロイトスコアと影響スコアの平均は最高水準にあります。
  • A10:例外状態の不適切な処理:不適切なエラー処理、ロジックエラー、フェイルオープンのシナリオに着目したカテゴリです。異常な状況に対してシステムがどう応答するかを問います。

主な順位変動

  • セキュリティ設定ミスが5位(2021年)から2位(2025年)に急上昇し、テスト済みアプリケーションの3%に影響。
  • サーバーサイドリクエストフォージェリ(SSRF)はA01:アクセス制御の不備に統合。
  • 暗号化の失敗が2位から4位に下落。
  • インジェクションが3位から5位に後退。
  • 安全でない設計が4位から6位に移動。

これらの変更が行われた理由

OWASPの方法論は、データ駆動分析とコミュニティの知見を組み合わせたものです。2025年版では589件のCWE(Common Weakness Enumeration)を分析しており、2021年版の約400件から大幅に増加しています。 これは、現代のソフトウェアシステムの複雑化と、新たな脅威を捉える必要性を反映したものです。

コミュニティサーベイには、テストデータが本質的に「過去を見ている」という根本的な課題への対応という意味があります。 セキュリティ研究者がテスト手法を開発し、自動化ツールに組み込むまでには、数年かかることもあります。コミュニティ投票で選ばれた2つのカテゴリは、最前線の実務者が把握している新興リスクを、自動化テストのデータにまだ表れていない段階から反映するためのものです。

セキュリティ設定ミスの台頭は、設定ベースのセキュリティへの業界シフトを示しており、ソフトウェアサプライチェーンの障害は、侵害されたパッケージを標的とした高度な攻撃の増加を認識したものです。

GitLab Ultimateを使った脆弱性検出と管理

GitLab Ultimateは、OWASP Top 10 2025の全カテゴリにわたるリスクを検出する包括的なセキュリティスキャンを提供します。エンドツーエンドのプラットフォームとして、プロジェクトのソースコード、依存関係、インフラ定義ファイルを分析します。また、高度な静的アプリケーションセキュリティテスト(Advanced SAST)によりソースコード内のインジェクションの欠陥、暗号化の失敗、安全でない設計パターンを検出します。Infrastructure as Code(IaC)スキャンはデプロイ定義内のセキュリティ設定ミスを発見します。シークレット検出は認証情報の漏洩を防ぎ、依存関係スキャンはソフトウェアサプライチェーン内の既知の脆弱性を持つライブラリを検出します。これは新しいA03カテゴリ「ソフトウェアサプライチェーンの障害」への直接的な対応です。

さらに:

  • 動的アプリケーションセキュリティテスト(DAST)は、攻撃ベクトルをシミュレートしてデプロイ済みアプリケーションの壊れたアクセス制御、認証の失敗、インジェクションの脆弱性を調査します。
  • APIセキュリティテストはAPIエンドポイントの入力検証の弱点と認証バイパスを調査します。
  • Web APIファズテストは予期しない入力を生成することでアプリケーションの例外状態への対応を調べます。これはA10「例外状態の不適切な処理」への直接的な対応です。

セキュリティスキャンはCI/CDパイプラインにシームレスに統合され、フィーチャーブランチからコードがプッシュされた際に実行されるため、開発者は本番環境に到達する前に脆弱性を修正できます。セキュリティの検出結果は脆弱性レポートに集約され、セキュリティチームはトリアージ、分析、修正追跡を一元的に行えます。また、GitLab Duo Agent Platformで利用可能なSecurity Analyst AgentなどのAIエージェントを活用して、最も深刻な脆弱性を素早く特定し、対処方法を判断することも可能です。

マージリクエスト承認ポリシーパイプライン実行ポリシーを通じて追加の制御を適用し、組織全体でセキュリティスキャンが一貫して実行されるよう強制できます。GitLabのカスタマーサクセスおよびプロフェッショナルサービスチームが、GitLab投資からの価値創出を適切なタイミングでサポートします。

開発者がすでに使っているプラットフォームでセキュリティテストを行い、安全なソフトウェアをより速く届けましょう。 詳細はアプリケーションセキュリティテストソリューションサイトをご覧ください。

OWASP Top 10 2025:完全解説

A01:アクセス制御の不備

概要

ユーザーが意図された権限の範囲外で行動することを防ぐポリシーの適用に失敗し、不正アクセスにつながる問題です。

システムへの影響
  • 不正な情報開示
  • データの完全な破壊または改ざん
  • 権限昇格(ユーザーが管理者権限を取得)
  • 他ユーザーのアカウントの閲覧または編集
  • 未認可・非信頼ソースからのAPIアクセス
主なCWE

A02:セキュリティ設定ミス

概要

セキュリティの観点から不適切に設定されたシステム、アプリケーション、またはクラウドサービスです。

システムへの影響
  • エラーメッセージを通じた機密情報の漏洩
  • デフォルトアカウントによる不正アクセス
  • 不要なサービスや機能の有効化
  • セキュリティパッチの未適用
  • セキュリティヘッダーやディレクティブが送信されないサーバー
主なCWE

A03:ソフトウェアサプライチェーンの障害

概要

依存関係、ツール、ビルドプロセスにおける脆弱性や悪意ある変更を通じて、ソフトウェアのビルド・配布・更新プロセスが侵害される問題です。

システムへの影響:
  • バックドアを仕込んだ侵害パッケージ
  • ビルドプロセス中に注入される悪意あるコード
  • アプリケーション全体に波及する脆弱な依存関係
  • 本番環境での信頼できないソースのコンポーネント使用
  • サプライチェーン内の変更が追跡されていない
主なCWE

A04:暗号化の失敗

概要

暗号化の欠如、不十分な強度の暗号化、暗号鍵の漏洩、および関連するエラーに起因する問題です。

システムへの影響:
  • 機密データの露出(パスワード、クレジットカード、医療記録)
  • 中間者攻撃
  • 弱い暗号化によるデータ侵害
  • 鍵の侵害によるシステム全体への影響
  • 法令遵守違反(GDPR、PCI DSS)
主なCWE

A05:インジェクション

概要

攻撃者が悪意あるコードやコマンド(SQL、NoSQL、OSコマンド、LDAPなど)をプログラムに挿入できるシステムの欠陥です。

システムへの影響
  • SQLインジェクションによるデータ損失または破損
  • データベースの完全な侵害
  • コマンドインジェクションによるサーバー乗っ取り
  • クロスサイトスクリプティング(XSS)攻撃
  • 情報漏洩
  • サービス拒否
主なCWE

A06:安全でない設計

概要

設計上の弱点として表れるさまざまな問題で、コントロール設計の欠如または非効率として現れます。実装のバグではなくアーキテクチャ上の欠陥です。

システムへの影響
  • 脆弱なパスワードリセットフロー
  • 認可ステップの欠如
  • バイパスを許すビジネスロジックの欠陥
  • 不十分な脅威モデリングによるブラインドスポット
  • 攻撃シナリオで失敗する設計パターン
主なCWE

A07:認証の失敗

概要

攻撃者がシステムをだまして無効または誤ったユーザーを正規のものとして認識させる脆弱性です。

システムへの影響
  • アカウント乗っ取りとクレデンシャルスタッフィング
  • セッションハイジャック
  • ブルートフォース攻撃の成功
  • 脆弱なパスワード回復メカニズムの悪用
  • 多要素認証のバイパス
主なCWE

A08:ソフトウェアまたはデータの整合性の失敗

概要

無効または信頼できないコード・データが信頼済みのものとして扱われるのを防げない、コードおよびインフラの問題です。

システムへの影響
  • 悪意あるコードインジェクションを許す未署名の更新
  • リモートコード実行につながる安全でないデシリアライゼーション
  • CI/CDパイプラインの侵害
  • 悪用される自動更新メカニズム
  • 改ざんされたソフトウェアアーティファクト
主なCWE

A09:セキュリティロギングおよびアラートの失敗

概要

ロギングとモニタリングが不十分で、アラートが適切に機能しないため、迅速な対応が困難になる問題です。

システムへの影響
  • 攻撃が長期間検出されない
  • 侵害の調査が不可能になる
  • 監査証跡の欠如によるコンプライアンス違反
  • インシデント対応の遅延
  • 侵害の範囲を特定できない
主なCWE

A10:例外状態の不適切な処理

概要

予期しない異常な状況の防止・検出・対応に失敗し、クラッシュ、予期しない動作、または脆弱性につながるプログラムの問題です。

システムへの影響
  • 詳細なエラーメッセージによる情報開示
  • 未処理の例外によるサービス拒否
  • 不適切なエラー処理による状態の破損
  • レースコンディションの悪用
  • フェイルオープン(閉じる代わりに開いた状態で失敗)
  • 機密データを露出するアプリケーションクラッシュ
主なCWE

予防と修正のベストプラクティス

GitLabは、OWASP Top 10の脆弱性を素早く発見・修正するだけでなく、本番システムへの混入を防ぐためのツールを提供します。以下のベストプラクティスに従うことで、セキュリティ態勢を強化・維持できます:

すべてのリポジトリで自動セキュリティスキャンを実施する

  • SASTスキャンを実施して、コードレビュー時に平文パスワードの保存、不十分なエラー処理、暗号化の欠如などの安全でない設計パターンを検出し、開発ライフサイクルの早い段階で設計上の欠陥を捉えます。
  • シークレット検出を実施して、設定ファイル、環境変数、コード内の認証情報を特定します。平文パスワードの保存を防ぎ、GitLabのCI/CD変数のマスキングと暗号化を通じてシークレットが適切に管理されるようにします。
  • DASTスキャンを実施して、壊れたアクセス制御の脆弱性を検出します。
  • 依存関係スキャンを実施して、プロジェクトの依存関係を脆弱性データベースと照合し、複数のパッケージマネージャー(npm、pip、Mavenなど)にわたる直接・間接依存関係の既知のCVEを特定します。
  • コンテナスキャンを実施して、Dockerイメージの脆弱なベースレイヤーとパッケージを分析し、デプロイ前にコンテナサプライチェーンのセキュリティを確保します。
  • IaCスキャンを実施して、インフラ定義ファイルの既知の脆弱性を確認します。
  • APIセキュリティツールを活用して、WebAPIを不正アクセス、不正使用、攻撃から保護します。
  • Web APIファズテストを実施して、他のQAプロセスでは見逃す可能性のあるバグや潜在的な脆弱性を発見します。

マージリクエストのセキュリティ結果

フィーチャーブランチからメインブランチへの差分とともに、マージリクエストで検出された脆弱性を確認できます。

セキュリティ態勢を把握する

  • ソフトウェア部品表(SBOM)を生成して、依存関係の完全な可視性とコンプライアンス要件を満たします。
  • 脆弱性レポートを活用して、コードベースで検出されたセキュリティ脆弱性の統合ビューからトリアージを行います。
  • 詳細な修正ガイダンスリスク評価データを使って脆弱性に迅速に対処します。
  • Security Inventoryを使って保護が必要なアセットを可視化し、セキュリティ改善に必要なアクションを把握します。
  • Compliance Centerを活用して、コンプライアンス基準の遵守状況レポート、違反レポート、コンプライアンスフレームワークを管理します。

Security Inventory

Security Inventoryで有効なセキュリティスキャナーと脆弱性を確認できます。

予防策を設定し、ドキュメントを維持する

  • セキュリティポリシーを設定して、依存関係に深刻な脆弱性が検出された場合にマージやデプロイをブロックし、セキュリティ基準を自動的に適用します。
  • コンプライアンスフレームワークを使用して、暗号化要件、認証情報管理のプラクティス、セキュアなワークフロー実装が遵守されているかを検証する自動ポリシーチェックにより、組織のセキュリティ基準を強制します。
  • GitLab Wikiとリポジトリドキュメントを、セキュリティ設計原則、承認済みパターン、アーキテクチャ決定記録の維持に活用し、セキュア・バイ・デザインの実装に向けて開発者を導きます。
  • 認証、認可、暗号化、または機密データ処理を含む機能についてセキュリティアーキテクトのレビューを必須とするマージリクエスト承認ルールを実装し、設計レベルのセキュリティ検証を確保します。
  • ファイルパスの入力検証とアローリストアプローチを検証するテストを作成します。
  • GitLab IssuesとEpicsを使って設計フェーズでセキュリティ要件と脅威モデルを文書化し、セキュリティ上の決定の追跡可能な記録を作成して、実装前にセキュリティ上の考慮事項が確実に対処されるようにします。

セキュリティポリシーダッシュボード

インスタンス、グループ、プロジェクトをスコープとしたセキュリティポリシーを確認・設定できます。

AIを活用する

  • Code Suggestionsを使って開発中に積極的なガイダンスを受け、適切なパスワードハッシュ(bcrypt、Argon2)、暗号化ストレージメカニズム、機密情報を漏洩しない適切なエラー処理といった安全な設計パターンを提案します。
  • Security Analyst Agentを使って検出された安全でない設計の脆弱性をコンテキストとともにレビューし、アーキテクチャ上の影響を説明して、アプリケーションの脅威モデルに基づいてリスクを評価し、症状だけでなく根本的な設計上の欠陥に対処する修正戦略を提供します。
  • AIによるコードレビューを活用して、プロジェクト全体で一貫したコードレビュー基準を確保します。

GitLab Security Analyst Agent

Security Analyst Agentを活用してセキュリティ脆弱性を素早くトリアージ・評価できます。

開発チームへの主なポイント

  • サプライチェーンセキュリティは必須:A03の追加と高いインパクトスコアにより、ソフトウェアサプライチェーンの保護はもはや任意ではありません。パイプライン全体でSBOMトラッキング、依存関係スキャン、整合性検証を実施してください。
  • 設定の重要性はこれまで以上:2位への上昇は、設定ベースのセキュリティが今や主要な攻撃ベクトルであることを示しています。設定検証を自動化し、セキュリティを組み込んだIaCを実装しましょう。
  • 従来の脅威は依然として存在:インジェクションと暗号化の失敗は順位が下がりましたが、依然として重大な問題です。リスト上の順位が下がったからといって優先度を下げないでください。
  • エラー処理はセキュリティの問題:新しいA10カテゴリは、アプリケーションが失敗にどう対処するかがセキュリティ上の懸念事項であることを強調しています。最初から安全なエラー処理を実装してください。
  • テストは進化が必要:CWEカバレッジの拡大(589件 対 2021年版の400件)は、テスト戦略を包括的にする必要があることを意味します。効果的なカバレッジのためにSAST、DAST、ソースコード分析、手動ペネトレーションテストを組み合わせましょう。

GitLab セキュリティおよびガバナンスソリューションセキュリティスキャンドキュメントを参照して、 今日からセキュリティ態勢の強化を始めてください。

ご意見をお寄せください

このブログ記事を楽しんでいただけましたか?ご質問やフィードバックがあればお知らせください。GitLabコミュニティフォーラムで新しいトピックを作成してあなたの声を届けましょう。

フィードバックを共有する

今すぐ開発をスピードアップ

DevSecOpsに特化したインテリジェントオーケストレーションプラットフォームで実現できることをご確認ください。