OWASP ZAP でWebアプリの脆弱性の検出 その2

こんにちは、罰金担当の高橋です。

今回はOWASP ZAPで実際にWebアプリに攻撃を行い、脆弱性の検出を行います。 攻撃されるためのWebアプリをインストールし、自動で脆弱性を検出する方法を説明します。

1.攻撃用のWebアプリのインストール

攻撃されるためのサイトを構築します。今回は公開されているOWASP Mutillidaeという 攻撃されるためのWebアプリを使用します。

  1. Apache+MySQLが動作する環境を作成します。Windowsであればhttps://www.apachefriends.org/jp/index.htmlからXAMPPを導入するのが一番手軽です。

  2. http://sourceforge.net/projects/mutillidae/からOWASP Mutillidaeをダウンロードします。

  3. 2.でダウンロードしたファイルを解凍し、webrootに配備します。

  4. ブラウザでインストールしたアプリにアクセスします。アクセスすると下記の画面が表示されるので、【OPT OUT】のボタンをクリックします f:id:takahashih1234:20150328012447p:plain

  5. 下記の画面が表示されてればインストール成功です f:id:takahashih1234:20150328014243p:plain

2.攻撃方法

攻撃をする際には、以下の手順で設定を行います。

  • 攻撃するサイトを選択する
  • 攻撃するサイトのURLを取得する
  • サイトに対して攻撃を行う

OWASP ZAPの設定手順は以下の通りです。

  1. 下記の記事を参考に、OWASP ZAPとFoxyProxyをインストールします。 tech.sanwasystem.com

  2. FirefoxでOWASP Mutillidaeにアクセスします。

  3. 画面左のサイトタブでMutilldaeのディレクトリを選び、右クリック「Include in Context」 ⇒ 「New context」をクリックします。これで、Mutillidaeが攻撃対象のサイトとして設定されました。 f:id:takahashih1234:20150328155414p:plain

  4. セッションプロパティのダイアログが表示されたら「OK」をクリックします。

  5. 画面左のサイトタブでmutilldaeのディレクトリを選び、右クリック「攻撃」⇒ 「サイトをスパイダー検索」をクリックします。スパイダーが実行されると下記の画面のようになります。

  6. スパイダー検索が完了したら、「攻撃」⇒ 「サイトの動的スキャン」をクリックし、動的スキャンタブのプログレスバーが100%になるのを待ちます。 f:id:takahashih1234:20150328180609p:plain

※スパイダー検索および、サイトの動的スキャンはそれなりにサーバーに負荷をかけるので、実施するタイミングは気をつけてください。

3.攻撃結果の確認方法

攻撃タブの左側にチェック結果にスキャン結果が表示されます。左側のウィンドウに表示されている警告をクリックすると、右側に脆弱性の説明と、その時に送信したデータが表示されます。結果のRiskがHighのものは、必ず対応したほうがよい脆弱性となっているようです。また、この結果ですが誤検知もあるようです。検知した結果については、説明を確認しながら本当に問題があるか検証する必要があります。 f:id:takahashih1234:20150329152213p:plain

OWASP ZAPを使用すると、脆弱性のチェック方法に詳しくなくても、簡単に脆弱性のチェックができます。 次回は結果の確認方法や、OWASP ZAPが実行しているチェックの内容を書きます。