脆弱性テスト・学習用Webアプリケーションのメモ

脆弱性スキャンツールのテストあるいは脆弱性内容の学習を目的として、意図的に脆弱性が作り込まれたWebアプリケーションをいろいろ調べた結果のメモ。

Badstore

f:id:inaz2:20151127233710p:plain

この手のアプリケーションの元祖であり、現在はメンテナンスされていない。 ショッピングカートを模したつくりになっている。 また、ISOイメージとして配布されている。

BodgeIt Store

f:id:inaz2:20151127234738p:plain

(The image is taken from The BodgeIt Store Part 1 - InfoSec Resources)

Badstore同様にショッピングカートを模したつくり。 やはりメンテナンスは止まっている。 Java Tomcatで動作。

Damn Vulnerable Web Application (DVWA)

f:id:inaz2:20151127233722p:plain

ショッピングカートではなく、脆弱性の種類ごとにページが分けられているタイプ。 PHP + MySQLで動作。

OWASP Bricks

f:id:inaz2:20151127233812p:plain

学習用途を想定。 見た目はきれいだが、内容がSQLインジェクションに偏っており他と比べると物足りない感じがある。 PHP + MySQLで動作。

bWAPP

f:id:inaz2:20151127233824p:plain

非常に多くの脆弱性の種類をカバーしている点が特長。 PHP + MySQLで動作。ただし、VMイメージ版を利用しないと確認できない脆弱性もある。

OWASP WebGoat

f:id:inaz2:20151127235252p:plain

Damn Vulnerable Web Application同様、脆弱性の種類ごとにページが分けられているタイプ。 J2EEまたは.NETで動作。

NOWASP (Mutillidae)

f:id:inaz2:20151127234101p:plain

OWASP Top 10およびHTML5脆弱性に対応している。 PHP + MySQLで動作。

OWASP Broken Web Applications (BWA)

f:id:inaz2:20151127234231j:plain

上で紹介したもののうちBadstore以外すべてに加え、古いバージョンのWordpressなどがセットになったVMイメージ。

Magical Code Injection Rainbow (MCIR)

f:id:inaz2:20151208123357p:plain

SQLiやRFIXPath/OS command/PHPインジェクションについて、種々の制約をかけたページを生成し実際に実行できるかどうか試すことができる。 また、攻撃可能な暗号・乱数を生成するページもある。 PHP + MySQLで動作。

所感

サイトの構造・内容およびメンテナンス状態を考えると、テスト用ならDamn Vulnerable Web Application、学習用ならOWASP WebGoatを使うのがよさそう。

関連リンク