2026/03/14
OWASP(Open Worldwide Application Security Project)
Web アプリケーションのセキュリティ向上を目的としたオープンコミュニティ
中立的な立場で、ガイドライン・ツール・ドキュメントを無償で公開している
開発者や Web アプリケーションセキュリティのための標準的なドキュメントを提供
OWASP が提供する主なもの
├ OWASP Top 10 : Webアプリの重大脆弱性トップ10
├ OWASP ASVS : セキュリティ検証の標準要件一覧
├ OWASP ZAP : 脆弱性診断ツール(OSS)
└ OWASP Cheat Sheet : 実装ガイドのまとめ集
OWASP Top 10
Webアプリケーションに対する最も重大なセキュリティリスクについて広く合意された内容を示す標準的なドキュメント
実際のデータをもとに3〜4年ごとに更新される
OWASP Top 10 2025 一覧
| # | カテゴリ | 概要 |
|---|---|---|
| A01 | アクセス制御の不備 | 権限のないユーザーが他人のデータや管理機能にアクセスできてしまう |
| A02 | セキュリティの設定ミス | クラウド・アプリのセキュリティ設定の不備 |
| A03 | ソフトウェアサプライチェーンの失敗 | 依存ライブラリ・CI/CDパイプラインへの攻撃 |
| A04 | 暗号化の失敗 | 弱い暗号化・HTTPSの未使用などで機密データが漏洩する |
| A05 | インジェクション | SQLインジェクション・XSSなど、悪意ある入力でシステムを操作される |
| A06 | 安全でない設計 | 設計段階でセキュリティが考慮されていない構造的な問題 |
| A07 | 認証・認可の失敗 | 脆弱なパスワード管理・セッション管理の不備 |
| A08 | ソフトウェアとデータの整合性の不具合 | CI/CDパイプラインや依存関係の整合性が検証されていない |
| A09 | ログ・アラートの失敗 | 攻撃を検知・記録・通知できていない状態 |
| A10 | 例外処理の失敗 | エラー・例外の不適切な処理による情報漏洩やシステム停止 |
ASVS(Application Security Verification Standard)
「Web アプリケーションがどの程度セキュアか」を検証するための要件一覧
Top 10 が「何が危険か」を示すのに対して、ASVS は「どうなっていれば安全といえるか」の基準を示す
3つのレベルで構成されており、アプリケーションのリスクに応じて適用レベルを選ぶ
セキュリティ制御テストの基盤を提供する
※ OWASP Application Security Verification Standard 5.0.0 English (PDF) - Application Security Verification Levels 参照
| レベル | 概要 |
|---|---|
| Level 1 | 最低限の基本的なセキュリティ要件 |
| Level 2 | 標準的なセキュリティ要件(多くの業務アプリが対象) |
| Level 3 | 最も厳格なセキュリティ要件 |
実務での活用例
├ セキュリティレビューのチェックリストとして使う
├ 開発チームとセキュリティ要件を共通認識として持つ
└ セキュリティ制御テストの基準として使う
https://owasp.org/www-project-application-security-verification-standard/
https://github.com/OWASP/ASVS?tab=readme-ov-file
ZAP(Zed Attack Proxy)
Web アプリケーションの脆弱性を自動で診断する OSS ツール
プロキシとして動作し、実際の HTTP 通信を解析してインジェクションや認証の不備などを検出する
主な機能
├ アクティブスキャン :実際に攻撃リクエストを送って脆弱性を検出
├ パッシブスキャン :通常の通信を傍受して問題を検出
├ スパイダー :サイトを自動クロールして診断対象URLを収集
└ API スキャン :OpenAPI / Swagger 定義をもとに API を診断
Cheat Sheet Series
具体的な実装レベルのセキュリティ対策をまとめたリファレンス集
認証・SQL インジェクション対策・CSRF 対策・パスワード保存など、テーマ別に整理されており実装時に参照できる
https://cheatsheetseries.owasp.org
CVE/CVSS との連携
CVE/CVSS と組み合わせて使うことで実務上の意思決定に役立てられる
| 名称 | 役割 | 使い所 |
|---|---|---|
| OWASP Top 10 | 「どんな種類の脆弱性が危険か」を示す | 開発・レビュー時の指針 |
| CVE | 発見された脆弱性に一意の ID を付与するカタログ | 特定の脆弱性を識別・追跡する |
| CVSS | 脆弱性の深刻度を0.0〜10.0でスコア化 | 対応優先度の判断基準にする |
実務での活用フロー
① 開発フェーズ
OWASP Top 10・Cheat Sheet を参照しながら実装する
→「この入力はインジェクション(A03)のリスクがないか? etc.」
② コードレビュー・テストフェーズ
OWASP ASVS のチェックリストで要件を満たしているか確認する
OWASP ZAP で自動診断を実施する
③ 脆弱性情報の監視フェーズ
使用しているライブラリに CVE が発行されていないか定期確認する
→ CVE が発行された場合、CVSS スコアで深刻度を確認して対応優先度を決める
④ 対応判断フェーズ(例)
CVE が発見された
→ CVSS スコア:10.0(最大)
→ OWASP Top 10 分類:XXX
→ 即時対応が必要と判断・パッチ適用を優先するなど
参考
- OWASP:https://owasp.org
- OWASP Top 10 2025:https://owasp.org/Top10/2025/
- ASVS:https://owasp.org/www-project-application-security-verification-standard/
- ZAP:https://www.zaproxy.org
- Cheat Sheet:https://cheatsheetseries.owasp.org
- CVE:https://www.cve.org
- CVSS:https://www.first.org/cvss/