【オワスプトップテン】

OWASP Top 10 とは?

💡 Webアプリの「危険度ランキング」! まず押さえるべきセキュリティの急所10選
📌 このページのポイント
OWASP Top 10(2021年版) A01 アクセス制御の不備 Broken Access Control A02 暗号化の失敗 Cryptographic Failures A03 インジェクション Injection A04 安全でない設計 Insecure Design A05 セキュリティ設定ミス Security Misconfiguration A06 脆弱なコンポーネント Vulnerable Components A07 認証の不備 Auth Failures A08 整合性の不具合 Integrity Failures A09 ログ・監視の不備 Logging Failures A10 SSRF Server-Side Request Forgery バーの長さ = 危険度の高さ(実際のインシデント発生頻度・影響度に基づく)
OWASP Top 10のイメージ
ひよこ ひよこ

OWASP Top 10って何なの?

ペンギン先生 ペンギン先生

Webアプリケーションで特に危険なセキュリティリスクを10個選んでランキングにしたリストだよ。OWASPという世界的なセキュリティコミュニティが、実際の被害データを分析して数年ごとに発表しているんだ。

ひよこ ひよこ

どんなリスクがランクインしているの?

ペンギン先生 ペンギン先生

2021年版だと、1位は「アクセス制御の不備」で、本来見えちゃいけないデータが見えてしまう問題だね。2位は「暗号化の失敗」、3位は「インジェクション」で、SQLインジェクションXSSが含まれるよ。

ひよこ ひよこ

昔と比べて変わったりするの?

ペンギン先生 ペンギン先生

かなり変わるよ。2017年版ではインジェクションが1位だったけど、2021年版では3位に下がったんだ。代わりに「安全でない設計」や「ソフトウェアの整合性の不具合」といった新カテゴリが追加されて、設計段階からのセキュリティ対策が重視されるようになったね。

ひよこ ひよこ

開発者はこれを全部覚えないといけないの?

ペンギン先生 ペンギン先生

全部暗記する必要はないけど、一通り目を通しておくのは大事だよ。多くの企業ではコードレビューセキュリティテストの基準としてOWASP Top 10を採用しているし、セキュリティ研修の教材としても定番なんだ。

ひよこ ひよこ

テストとかで自動的にチェックできるの?

ペンギン先生 ペンギン先生

できるよ。OWASP自体がZAP(Zed Attack Proxy)という無料の脆弱性スキャナーを提供していて、Top 10の項目を自動チェックできるんだ。CI/CDパイプラインに組み込んで、デプロイ前に自動スキャンする企業も多いよ。

ひよこ ひよこ

Top 10に対応しておけば安全ってこと?

ペンギン先生 ペンギン先生

いい質問だね。Top 10はあくまで「最低限押さえるべきライン」であって、これだけで万全というわけじゃないよ。でもTop 10をカバーするだけで、Webアプリの脆弱性の大部分に対処できるとも言われている。セキュリティは「ここまでやれば完璧」がない世界だから、まずTop 10から始めて段階的に強化するのが現実的だね。

ひよこ ひよこ

まずは10個から始めればいいんだね!

ペンギン先生 ペンギン先生

そうだね。ちなみにOWASPにはTop 10以外にも、APIセキュリティ向けの「API Security Top 10」やモバイル向けの「Mobile Top 10」もあるよ。自分が開発しているプラットフォームに合わせたリストを参照するのがベストだね。

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
OWASP Top 10」って出てきたら「Webアプリの危険な脆弱性ワースト10リスト」と思えればだいたいOK!
📖 おまけ:英語の意味
「OWASP Top 10」 = OWASP 脆弱性トップ10
💬 OWASPはOpen Worldwide Application Security Projectの略で、そこが発表する「最も気をつけるべき脆弱性ベスト10」のリストだよ
← 用語集にもどる