Webアプリケーションの脆弱性は、不正アクセスや情報漏えいなどのセキュリティインシデントにつながる可能性があります。こうしたリスクを把握するための手段の一つが、Webアプリケーションを対象とした脆弱性診断です。
現在ではさまざまなWebアプリケーション診断サービスが提供されていますが、「脆弱性診断」という名称が同じでも、診断対象や確認項目、診断方法などがすべて同じとは限りません。
そのため、Webアプリケーション診断を選定する際には、価格や診断期間だけでなく、「何を基準として、どのような観点から診断するのか」を確認することも重要です。
Webアプリケーションのセキュリティを検証するための代表的な基準の一つに、OWASPが公開している「OWASP Application Security Verification Standard(ASVS)」があります。
本記事では、ASVSとはどのような基準なのか、よく知られているOWASP Top 10とは何が違うのか、そしてWebアプリケーション診断にASVSを活用することにどのような意味があるのかを解説します。
OWASP ASVSとは?
OWASP Application Security Verification Standard(ASVS)は、Webアプリケーションのセキュリティを検証するための要件を体系的にまとめたオープンスタンダードです。
ASVSを公開しているOWASP(Open Worldwide Application Security Project)は、ソフトウェアセキュリティの向上を目的として活動する非営利団体です。Webアプリケーションにおける代表的なセキュリティリスクをまとめた「OWASP Top 10」など、アプリケーションセキュリティに関するさまざまなプロジェクトを公開しています。
ASVSでは、認証やアクセス制御、データ保護、APIなど、Webアプリケーションのセキュリティを検証するための要件が幅広く整理されています。
OWASPはASVSについて、Webアプリケーションのセキュリティを評価するための「物差し」として利用できるほか、セキュリティ対策を実装する際のガイダンスや、調達時にセキュリティ検証要件を指定するための基準としても位置付けています。
つまりASVSは、単に既知の脆弱性を一覧化したものではありません。Webアプリケーションにどのようなセキュリティ要件が求められ、それをどのような観点から検証するのかを整理した共通の基準と捉えると分かりやすいでしょう。
ASVSの3つのVerification Level
ASVSでは、Webアプリケーションのセキュリティを検証するための要件が、Level 1からLevel 3までの3段階のVerification Level(検証レベル)に分けられています。
それぞれのLevelでは、セキュリティリスクの低減効果や要件を実装するための負荷などを踏まえて、求められる要件が段階的に設定されています。
|
Verification Level |
概要 |
|
Level 1 |
アプリケーションのセキュリティを確保するうえで基本となる要件を扱うレベル |
|
Level 2 |
多くのWebアプリケーションが目標とするレベル |
|
Level 3 |
より高いセキュリティ水準を目指すWebアプリケーション向けのレベル |
どのLevelを目標とするかは一律に決まるものではありません。Webアプリケーションの用途や扱う情報、想定されるリスクなどを踏まえて、組織が適切なLevelを判断します。
重要なのは、単純に「Levelが高いほどよい」ということではありません。自組織のWebアプリケーションに求めるセキュリティ水準を踏まえて、適切なLevelを選択することが重要です。
OWASP Top 10とASVSは何が違う?
OWASPが公開する代表的なプロジェクトとして、「OWASP Top 10」をご存じの方も多いのではないでしょうか。
OWASP Top 10は、Webアプリケーションにおける重大なセキュリティリスクをまとめたものです。代表的なリスクを把握し、Webアプリケーションセキュリティへの理解を深めるために広く活用されています。
一方、ASVSは、Webアプリケーションに求められるセキュリティ要件を体系化し、それらを検証するための基準を提供するものです。
両者は同じOWASPが公開していますが、目的や役割が異なります。
|
OWASP Top 10 |
ASVS |
|
|
主な目的 |
重大なWebアプリケーションセキュリティリスクへの理解を深める |
Webアプリケーションのセキュリティを検証するための基準を提供する |
|
内容 |
代表的なセキュリティリスクを整理 |
セキュリティ要件と検証項目を体系的に整理 |
|
主な活用方法 |
代表的なリスクの把握やセキュリティ対策の啓発 |
セキュリティ要件の策定や検証、Webアプリケーション診断など |
つまり、OWASP Top 10は「どのようなセキュリティリスクに注意すべきか」を理解するために役立つのに対し、ASVSは「Webアプリケーションのセキュリティをどのような項目で検証すべきか」を明確にするために活用できます。
そのため、Webアプリケーション診断において幅広いセキュリティ要件を体系的に確認するという観点では、ASVSを基準として活用することに意味があります。
なぜWebアプリケーション診断でASVSを活用するのか?
ここまでASVSの概要やOWASP Top 10との違いを紹介してきました。では、Webアプリケーション診断にASVSを活用することで、どのようなメリットがあるのでしょうか。
診断内容を明確にしやすい
Webアプリケーション診断は、サービスによって診断対象や確認項目、診断方法などが異なります。そのため、「脆弱性診断を実施する」というだけでは、具体的に何をどこまで確認するのか判断しにくい場合があります。
ASVSでは、Webアプリケーションに求められるセキュリティ要件と検証項目が体系的に整理されています。ASVSのような公開された基準を活用することで、どのような項目を確認する診断なのかを明確にしやすくなります。
幅広いセキュリティ要件を体系的に確認できる
Webアプリケーションには、認証やアクセス制御の不備、SQLインジェクションやXSSといった攻撃につながる脆弱性など、さまざまなセキュリティリスクがあります。
そのため、Webアプリケーション診断では、特定の脆弱性だけでなく、幅広い観点からセキュリティ上の問題を確認する必要があります。代表的な確認項目のイメージを以下に示します。

※本図はWebアプリケーション診断における確認項目の一例を示したものであり、ASVSのカテゴリ構成を示すものではありません。
ASVSでは、こうしたWebアプリケーションのセキュリティ要件がカテゴリごとに体系化されています。そのため、特定の脆弱性だけに着目するのではなく、幅広いセキュリティ要件を整理したうえで検証できます。
診断サービスを選定する際の判断材料になる
Webアプリケーション診断を選定する際には、価格や診断期間、診断方法など、さまざまな比較ポイントがあります。それに加えて確認したいのが、「どのような基準に基づき、何をどこまで診断するのか」という点です。
診断の基準が明確であれば、診断で確認する範囲や内容を把握しやすくなります。また、ASVSのように公開された共通の基準を用いることで、診断内容を理解し、サービスを選定する際の判断材料として活用できます。
Webアプリケーション診断は、単に「実施すること」だけでなく、自組織が必要とするセキュリティ水準に対して、適切な内容の診断を実施できるかという視点で選ぶことが重要です。
ASVSを基準としたNVCのWebアプリケーション診断
NVCでは、OWASP Top 10やASVSなどの国際的な基準に基づいたWebアプリケーション診断を提供しています。ツールによる診断に加えて、専門家による手動診断を組み合わせることで、Webアプリケーションに潜むセキュリティリスクを多角的に確認します。
特に、認証やアクセス制御、業務ロジックなどは、アプリケーションの仕様や利用方法を踏まえた確認が必要になる場合があります。NVCのWebアプリケーション診断では、こうした自動診断だけでは判断が難しい領域も専門家が確認します。
また、すべての画面や機能を一律に診断するのではなく、扱う情報や機能の重要度、脆弱性が悪用された場合の影響などを踏まえて、リスクの高い箇所を優先して診断することも可能です。
ASVSなどの基準を活用した診断に、ツールと専門家による診断を組み合わせることで、Webアプリケーションのセキュリティリスクを把握し、優先すべき対策の検討につなげます。
まとめ:Webアプリケーション診断は「診断基準」にも注目
Webアプリケーション診断は、実施すること自体が目的ではありません。Webアプリケーションに潜むセキュリティリスクを把握し、必要な対策につなげることが重要です。
ASVSは、Webアプリケーションに求められるセキュリティ要件と検証項目を体系的に整理した基準であり、診断内容を確認する際の一つの判断材料として活用できます。
NVCでは、OWASP Top 10やASVSなどの国際的な基準に基づき、ツールと専門家による手動診断を組み合わせたWebアプリケーション診断を提供しています。
Webアプリケーションのセキュリティに不安がある方や、どのような診断を実施すべきかお悩みの方は、お気軽にご相談ください。








