yamory Blog

OWASPとは?Top 10, ZAPについてもまとめて紹介

「OWASP」をご存知ですか?セキュリティについてを調べていると「OWASP Top 10」や「OWASP ZAP」という単語が出てくることも多いですね。
これらを簡潔に解説すると以下の通りとなります。

  • OWASP
    Webアプリケーションセキュリティに関する組織名
  • OWASP Top 10
    「OWASP」が発表しているWebアプリケーションのセキュリティに関する脅威をまとめた資料
  • OWASP ZAP
    「OWASP」のプロジェクトの一つであり、オープンソースソフトウェア(OSS)のWebサービス脆弱性簡易チェックツール
  • OWASP ASVS
    「OWASP」が アプリケーションの設計、開発、脆弱性診断などにおいて必要となるセキュリティ要件の標準や基準を確立することを目的に活動しているプロジェクト

本記事では「OWASP」「OWASP Top 10」「OWASP ZAP」「OWASP ASVS」について、サイバーセキュリティの観点からそれぞれ解説していきます。

「OWASP」 とは

読み方は「オワスプ」です。正式には「Open Web Application Security Project(国際ウェブセキュリティ標準機構)」の略であり、組織名となります。
アメリカ合衆国のメリーランド州に本部を持つ非営利組織であり、Webアプリケーションのセキュリティに関する研究や、ガイドラインの作成、脆弱性診断ツールの開発、イベント開催等の多岐に渡る活動を行っています。世界各地でチャプター(支部)が存在し、日本にも「OWASP Japan」が存在します。

「OWASP Top 10」とは

「OWASP Top 10」はWebアプリケーションのセキュリティに関する脅威や危険性のトレンドをまとめた資料です。
先述の「OWASP」がWebに関する脆弱性やリスク、攻撃手法、事例、情報漏洩、悪性ファイルやスクリプト、攻撃コードやマルウェアなどを研究し、その結果、ウェブセキュリティ上で多発する脅威の中で、その危険度が最も高いと判断された10個のトピックを「OWASP Top 10」として発表しています。

「OWASP Top 10」では、「悪用のしやすさ」「弱点の蔓延度」「弱点の検出のしやすさ」「技術面への影響」「ビジネスへの影響」の観点でそれぞれに点数をつけ、リスクの高さを可視化し、危険度の高い10種類の脆弱性を整理しています。

具体的にはそれぞれの指針を3段階で評価し、「悪用のしやすさ」「蔓延度」「検出のしやすさ」の平均を求め、その数値と「技術面への影響」の数値の積を求めたものを総得点としています。

さらに、各トピックに対して「脆弱性発見のポイント」「防止方法」「攻撃シナリオの例」「参考資料」など具体的なリスクの発見方法や対策につながる情報を得ることもできます。

「OWASP Top 10」は通常2〜3年周期で発表されます。
現在の最新版は2017年に発表された「OWASP Top 10 2017」となります。

この「OWASP Top 10」はWebアプリケーションに対する最新のサイバー攻撃の傾向を把握するのに非常に有用です。
新たに発見された攻撃のトレンドを知っていると、その攻撃と似ている他の攻撃にも早く、戦略的に対応できるようになるからです。
また「OWASP Top 10」は、専門技術を共有した全世界のセキュリティ専門家たちがオープンに意見を交わし作成されるため、新たなWebアプリケーションやWebサービスを開発する際のサイバー攻撃への対応の指針として利用されることもあります。

「OWASP Top 10」は専門技術を共有した全世界のセキュリティ専門家たちが、オープンに意見を交わし、作成されるため、非常に重要度の高い資料です。
各公的機関においても「OWASP Top 10」をWebセキュリティにおける重要なガイドライン/指標として捉えています。
「OWASP Top 10」に取り上げられたトピックに対応できていない場合、セキュアな開発を実施するベストプラクティスを実施していないとみなされることもあります。
日本国内では「IPA」や「JPCERT」が「OWASP Top 10」をWebセキュリティの指標やガイドラインとして、度々言及や参考資料などを公開しています。

「OWASP ZAP」とは

「OWASP ZAP (OWASP Zed Attack Proxy)」は、Webアプリケーション/Webサービスの脆弱性を簡易検索するチェックツールです。公式サイトからダウンロードできます。
無料で使えるOSS(オープンソースソフトウェア)としてGitHub上にソースコードが公開されています。
主な利用シーンとしては「Webアプリケーションの開発者が開発時に簡易的に脆弱性診断を実施する」ことを意識して作られています。

OWASP ZAPが検査可能な主な脆弱性は以下のとおりです。

  • HTTPヘッダインジェクション
  • SQLインジェクション
  • パストラバーサル
  • オープンリダイレクタ
  • クロスサイトスクリプティング
  • オートコンプリート機能の有効
  • アプリケーションエラーの開示
  • X-Content-Type-Options ヘッダの未設定
  • X-Frame-Options ヘッダの未設定
  • HttpOnly 属性が付与されていないCookieの利用

「OWASP ZAP」の使い方

「OWASP ZAP」はGUI(グラフィカルインターフェース)を備えており、以下の簡易な脆弱性診断だけであれば、検索対象のWebアプリケーション/サービスのURLを入力し、実行ボタンをクリックするだけで、簡単に実行可能です。

スパイダー機能
特定のURLをスタートにし、オートクローリング(自動でスタート地点のURLにぶら下がり診断対象のリンクを辿り、存在するURLを洗い出す)を実施する機能
動的スキャン機能
クローリングして明らかになった任意のURLに対し「OWASP ZAP」が準備している脆弱性診断用の検査文字列を利用し、脆弱性診断を実施する機能。

その他、ローカルプロキシとしてOWASP ZAPを動作させ手動で脆弱性診断を行うことや、簡易のレポートを作成する機能なども存在します。

しかしながら、あくまで簡易的な脆弱性診断が実施できるチェックツールという位置付けであり、OWASP 自体も「OWASP ZAP」ですべてのWebアプリケーションの脆弱性対策を実施することを推奨していません。

「OWASP ASVS」とは

「OWASP ASVS(OWASP Application Security Verification Standard : OWASPアプリケーションセキュリティ検証標準)」はOWASPによる推進されているWebアプリケーションのセキュリティの標準などの情報を整備・提供するプロジェクトです。
主に以下の2つの情報を提供しています。

Webアプリケーションの技術的なセキュリティが管理できているかをテスト、検証するための基準
安全な開発を実現するための要件リストを含めた開発者向けの標準(スタンダード)

OWASP ASVSの主な目的はWebアプリケーションの設計、開発、テスト、脆弱性診断や脆弱性対策などにおいて必要とされる各セキュリティ要件の標準を確立することです。
開発者やベンダーはこの標準を使用・準拠することで、Webアプリケーションのセキュリティに対する信頼度を高めることが可能です。
OWASP ASVSは具体的には以下のような用途を想定して作られています。

メトリックとしての利用(評価手法や基準などの体系)
開発者と所有者がWebアプリケーションの信頼度を評価するための基準としての利用が可能です。

ガイダンス としての利用
セキュリティ要件を満たすためにWebアプリケーションのセキュリティに組み込む機能等について、セキュリティ機能開発者やセキュリティ管理者がガイダンスとしての利用が可能です。

調達/契約過程での利用
Web アプリケーションの発注等において、調達や契約過程でのセキュリティ検証要件を指定するための基準としての利用が可能です。

上記の内容がOWASP ASVSよりドキュメントの形式でまとめられ一般に提供されています。
最新版は OWASP ASVS 4.0.1 であり、OWASPの公式サイトのOWASP ASVSページからダウンロードが可能です。

「OWASP Top 10」の実際の脆弱性対策への活用方法

先述の通り「OWASP Top 10」は最新のサイバー攻撃のトレンドに対策を講じるために大変重要な資料です。
しかしながらWebアプリケーション/Webサービスに関する全ての脅威が記載されているわけではありません。
「OWASP Top 10 2017」の「導入」セクションには以下のような記載がなされています。

OWASP Top10の主要な目的は、開発者、デザイナー、アーキテクト、マネージャ、組織に、最も一般的かつ最も重要なWebアプ リケーションセキュリティの弱点の影響について教育することです。また、これらのリスクの高い問題のある領域を守るための基本的なテクニックを提供し、現時点からどこへ進めるべきなかについてのガイダンスを提供します。

OWASP Top 10 - 2017(日本語版) より引用

「OWASP Top 10」は最新のサイバー攻撃において一般的に発見される脅威を提示しています。しかし本資料記載された脅威にすべて対処したとしても、資料内に該当しない脆弱性に対するサイバー攻撃のリスクは残存したままとなります。
例えば「OWASP Top 10 - 2014」において取り上げられていた4つの脅威(A4-安全でないオブジェクト直接参照、A7-機能レベルアクセス制御の欠落、A8-クロスサイトリクエストフォージェリ (CSRF) 、A10-未検証のリダクレクトとフォワード)
が「OWASP Top 10-2017」では除外、またはマージされていますが、以下のように言及されています。

"統合、引退。ただし、忘れて良いという意味ではない"

あくまで、その時点での最新のトレンドであり、注視すべきセキュリティ上の脅威に対する啓発であることを覚えておきましょう。
またサイバー攻撃の手法や脆弱性は今この瞬間も新たに発見されています。
このようなサイバーセキュリティの攻撃に対処するためにも、最新の情報を取得し、セキュリティツールや脆弱性自動管理ツールなどを利用することで、サイバーセキュリティ対策を効率的にかつ安全に行えるようになります。

オープンソース脆弱性管理ツール yamory

  • 利用中のOSSを抽出し
    脆弱性を自動スキャン
  • 脆弱性への対応優先度を自動で分類
  • 組織規模に合わせたプランを選択可能
お問い合わせ

お気軽にお問い合わせください。
担当者よりご連絡いたします。