CodeZine(コードジン)

特集ページ一覧

組み込んだOSSコンポーネントの更新漏れを可視化する「OWASP Dependency Check」

OWASPでビルトイン・セキュリティ 第7回

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2016/09/06 14:00

目次

OWASP Dependency Checkの動作原理

 以下の図は、OWASP Dependency Check実行時の処理を示したものです。調査対象のアプリケーションに対し、OWASP Dependency Checkがスキャンを実行し、特にコンポーネントなどへの依存関係について解析します。その収集情報と、NVDという脆弱性関連情報と比較し、レポートを出力するという流れです。

図2 OWASP Dependency Checkにおけるスキャン実行時の処理
図2 OWASP Dependency Checkにおけるスキャン実行時の処理

 このNVD(National Vulnerability Database)とはNIST(米国国立標準技術研究所)が運営する脆弱性データベースです。OWASP Dependency CheckがダウンロードしているNVDのデータには製品情報であるCPE(※1)と脆弱性情報であるCVE(※2)が含まれています。

※1 CPE(Common Platform Enumeration):共通プラットフォーム一覧

 CPE は情報システムを構成する、ハードウェア、ソフトウェアなどのプラットフォームを識別する共通の名称基準を目指し、米国政府の支援を受けた非営利団体の MITRE 社を中心に策定された仕様です。

 以下のような形式で記述されるCPE名でプラットフォームを識別します。

cpe:/{種別}:{ベンダ名}:{製品名}:{バージョン}:{アップデート}:{エディション}:{言語}

※2 CVE(Common Vulnerabilities and Exposures)共通脆弱性識別子

 CVEは個別製品中の脆弱性を対象として、MITRE社が採番している識別子です。プログラム上のセキュリティ問題を一意に識別するために、脆弱性に対して「CVE-西暦-連番」という構成の識別子が付与されています。

 アプリケーションへのスキャン実行時にNVDデータのダウンロードを行うため、利用時にはインターネット接続できる環境が必要です。デフォルトでは、NVDデータのダウンロード時点から次回のスキャン実行時の期間が4時間以上経過している場合に自動アップデートを行います。なお、拡張オプションを利用することでProxyサーバを経由して脆弱性情報をダウンロードすることなども可能です。

 NVDデータのダウンロード完了後、指定したプロジェクトファイルの依存関係について情報収集を行います。その後、収集した情報を元にダウンロードしたNVDのデータと照合を行い、依存ファイルのCPE名を特定します。最後に特定したCPE名と関連するCVE番号の脆弱性情報をレポートに情報を出力します。

 上記のような流れで、ウェブアプリケーションにおける依存関係を解析し、最新の脆弱性情報と比較することで、脆弱性が報告されているコンポーネントがアプリケーションの中に含まれているかどうかについてのレポートを取得できるというわけです。


  • LINEで送る
  • このエントリーをはてなブックマークに追加

バックナンバー

連載:OWASPでビルトイン・セキュリティ

もっと読む

著者プロフィール

  • 洲崎 俊(OWASP Japan)(スザキ シュン)

    OWASP Japan Promotion Teamに所属する「とある診断員」。2006年よりセキュリティベンダに入社し、NW及びWebアプリケーションの脆弱性診断を中心としたセキュリティソリューションサービスの提供に携わる。現在はユーザ企業内のセキュリティチームにて、セキュリティエンジニアとしてセ...

あなたにオススメ

All contents copyright © 2005-2021 Shoeisha Co., Ltd. All rights reserved. ver.1.5