OWASP BWA(Broken Web Applications Project)は、複数の脆弱なWebアプリケーションを一つの仮想マシンに統合したセキュリティ学習用のプラットフォームです。
本記事では、OWASP BWAの特徴や収録アプリを紹介した上で、VirtualBoxを使ってOWASP BWAのインストール手順をステップバイステップで解説しています。
- OWASP BWAのOVAファイルをダウンロード
- OVAファイルをインポート
- ネットワークアダプターの設定
- 仮想マシン(VM)を起動
- 固定IPアドレスの割り当て
- ブラウザからアクセス
スクリーンショット付きで解説しているので、初めての方でも迷わずに進めることができます。
OWASP BWA(Broken Web Applications Project)とは
OWASP BWA(Broken Web Applications Project)とは、脆弱なWebアプリケーションを一つの仮想マシン(VM)にまとめたセキュリティ教育および検証用のやられアプリです。

OWASP(Open Worldwide Application Security Project)が提供しており、セキュリティエンジニアやホワイトハッカーにとって、実践的なトレーニングやツールの検証を行う上で極めて有用なリソースとなっています。
特徴
OWASP BWAには、意図的に脆弱性を含んだ複数のWebアプリケーションがプリインストールされており、SQLインジェクション、クロスサイトスクリプティング(XSS)、認証不備、セッション管理の不備など、OWASP Top 10に代表される主要な脆弱性を再現できるよう設計されています。
OWASP BWAは、脆弱性を含んだWebアプリケーションとして利用されており、同様に脆弱なミドルウェアを組み込んだ環境としてはMetasploitable2も広く利用されています。
対象としている脆弱性の違い
OWASP BWA | SQLインジェクション、クロスサイトスクリプティング(XSS)、セッションハイジャック など |
Metasploitable2 | 弱い認証方式、バックドア、古いプロトコル、ミドルウェアの脆弱性、OS設定不備 など |
メリット
OWASP BWAの最大のメリットは、実運用環境に影響を与えることなく、ローカルの仮想環境上で安全に脆弱性の発見・分析・対策手法を試すことができる点です。特に、ペネトレーションテストの訓練や、セキュリティツール(例:Burp Suite、OWASP ZAP など)の効果検証などを行う際に最適です。
配布形式
仮想マシン(VM)のOVA形式で配布されているため、VirtualBoxやVMwareなどの仮想化ソフトウェア上に容易に展開でき、OSやWebサーバ、データベースの初期設定を個別に行う必要がありません。こうした点からも、導入コストが低く、すぐにセキュリティ学習に取り組めるため、セキュリティ初学者に広く利用されています。
OWASP BWAに含まれるWebアプリケーション
OWASP BWA(Broken Web Applications Project)には、セキュリティ教育や脆弱性診断のトレーニングに活用できる複数の脆弱なWebアプリケーションがあらかじめインストールされています。
- トレーニング用アプリケーション
- OWASP WebGoat
- OWASP WebGoat.NET
- OWASP ESAPI Java SwingSet Interactive
- OWASP Mutillidae II
- OWASP RailsGoat
- OWASP Bricks
- OWASP Security Shepherd
- Ghost
- Magical Code Injection Rainbow
- bWAPP
- Damn Vulnerable Web Application
- 現実的で意図的に脆弱なアプリケーション
- OWASP Vicnum
- OWASP 1-Liner
- Google Gruyere
- Hackxor
- WackoPicko
- BodgeIt
- Cyclone
- Peruggia
- 実際のアプリケーションの古い(脆弱な)バージョン
- WordPress
- OrangeHRM
- GetBoo
- GTD-PHP
- Yazd
- WebCalendar
- Gallery2
- Tiki Wiki
- Joomla
- AWStats
- テストツール用アプリケーション
- OWASP ZAP-WAVE
- WAVSEP
- WIVET
- デモページ/小規模アプリケーション
- OWASP CSRFGuard Test Application
- Mandiant Struts Forms
- Simple ASP.NET Forms
- Simple Form with DOM Cross Site Scripting
- OWASPデモアプリケーション
- OWASP AppSensor Demo Application
これらのWebアプリケーションは、実際の攻撃シナリオを再現可能な形で構築されており、業務においてWebアプリケーションのセキュリティリスクを理解する上で極めて有用です。
この記事で使用するインストール環境
この記事では、Windows上に構築した仮想環境にOWASP BWAをインストールします。
インストール環境
OS | Windows10 Pro 22H2(64bit) |
---|---|
CPU | Intel Core i7 |
メモリ | 32GB |
仮想化ソフト | Oracle VirtualBox 7.1.4 |
OWASP BWAのOVAファイルをダウンロード
OWASP BWAの仮想マシン(VM)は、SourceForgeのプロジェクトページからダウンロードできます。
2025年4月22日現在、週あたり2,091回のダウンロードが継続しており、今なおセキュリティ演習の環境として根強く利用されています。
本記事では、VirtualBoxへのインストールを前提としているため、OVAファイルをダウンロードします。
OWASP_Broken_Web_Apps_VM_1.2.ova(2.6 GB)
OVA形式は、仮想マシンの構成とディスクイメージをひとまとめにしたファイルであり、複雑なセットアップを省略して、迅速に仮想マシンを構築できるという利点があります。
以降のセクションでは、このOVAファイルをVirtualBoxにインポートし、仮想マシン(VM)として起動する手順について解説します。
VirtualBoxにOWASP BWAをインストール
OVAファイルをインポート
仮想アプライアンスのインポート
まず、VirtualBoxを起動し、メニューバーの「ファイル」から「仮想アプライアンスのインポート」を選択します。

インポートファイルを指定
フォルダアイコンをクリックして、先ほどダウンロードしたOWASP BWAのOVAファイルを指定します。

構成情報を変更
設定タブを選択すると、仮想マシンの構成情報(マシン名、CPU数、メモリ容量など)が表示されます。

メモリの割り当てについては、デフォルト設定(1024MB)で動作に支障はありませんが、ホストマシンのリソースに余裕がある場合は2048MB以上に設定することで快適に操作できます。
設定例
設定項目 | 初期値 | 推奨値 | 備考 |
---|---|---|---|
名前 | VM | OWASP BWA | わかりやすい名前に変更 |
RAM | 1024MB | 2048MB | ホストマシンのリソースに余裕があれば |
インポート開始
完了ボタンをクリックし、OVAファイルをインポートを開始します。

インポート中

インポート終了
インポートが終了すると、OWASP BWAの仮想マシンがVirtualBoxマネージャー画面に追加されます。

以上で、VirtualBoxへのOWASP BWAのインポート作業は完了です。
次のステップでは、仮想マシンのネットワークアダプターを設定し、ブラウザからOWASP BWAへアクセスできるようにします。
仮想マシンのネットワークアダプターを設定
VirtualBoxのネットワークモードには、「NAT」「ブリッジアダプター」「ホストオンリーアダプター」などがありますが、OWASP BWAの動作環境において最も推奨されるのは「ホストオンリーアダプター」です。
インストール直後の初期設定では、NATが選択されているため、ホストオンリーアダプターに変更します。
ホストオンリーネットワークを確認
VirtualBoxのメニューバー「ファイル」-「ツール」-「ネットワークマネージャー」から、ホストオンリーネットワーク用のアダプターを確認します。※ここで確認したネットワークアダプターは後述の設定で使用します。

新たなネットワークセグメントを作成する場合、作成アイコンをクリックして、アダプター情報を設定します。

DHCPサーバーを有効にする
OWASP BWAの初期設定では、IPアドレスが動的に割り当てられるよう構成されています。そのため、DHCPサーバーから自動的にIPアドレスを取得できるようにしておきます。

仮想マシンのネットワーク設定を変更
インポートした仮想マシンをクリックして、設定アイコンをクリックします。

ネットワーク設定画面を開く
設定画面が開いたら、Expertタブを選択し、ネットワークを指定します。

ネットワークアダプターを変更する
インストール直後の初期状態では、アダプター1の割り当てがNATになっていますが、ホストオンリーアダプターに変更し、先ほど確認したネットワークアダプターを選択します。

この設定により、仮想マシンとホストマシンが同一ネットワーク上に存在することとなり、仮想マシンのIPアドレスを指定することで、ホストマシンのブラウザからOWASP BWAのトップページに直接アクセスできるようになります。
次のステップでは、この仮想マシンを実際に起動し、ホストマシンのブラウザからOWASP BWAにアクセスできるかを確認します。
OWASP BWAを起動
仮想マシン(VM)を起動
OWASP BWAのインストールが完了したら、次はVirtualBox上で仮想マシン(VM)を起動します。まず、インポートした仮想マシンを選択して、起動アイコンをクリックします。

しばらくすると、別ウィンドウが立ち上がり、Ubuntuベースのコンソール画面が表示され、複数の脆弱なWebアプリケーションが自動起動します。仮想マシンの起動が完了すると、画面上にowaspbwa login:
というプロンプトが表示されます。

OWASP BWAにログイン
OWASP BWAの仮想マシン(VM)を起動すると、コンソール画面にUbuntuのログインプロンプトが表示されます。ログインには、デフォルトで設定されている以下の資格情報を使用します。
項目 | 値 |
---|---|
ユーザー名 | root |
パスワード | owaspbwa |
ログイン後、コマンドラインから各種設定や確認が可能になります。
IPアドレスの確認にはip aコマンド
を使用します。VirtualBoxでDHCPサーバーを有効にしている場合、自動的にIPアドレスが割り当てられています。
root@owaspbwa:~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000
link/ether 08:00:27:72:00:f5 brd ff:ff:ff:ff:ff:ff
inet 192.168.10.3/24 brd 192.168.10.255 scope global eth0
inet6 fe80::a00:27ff:fe72:f5/64 scope link
valid_lft forever preferred_lft forever
ブラウザからアクセス
上記で確認した仮想マシンのIPアドレスが192.168.10.3
の場合、以下のURLでアクセスします。
http://192.168.10.3/
このURLを入力すると、OWASP BWAのトップ画面が表示され、WebGoat、Mutillidae、Damn Vulnerable Web Applicationなど、脆弱なWebアプリケーションのリンクが確認できます。

OWASP BWAを固定IPアドレスに変更
動的IPアドレス(DHCP)のデメリット
OWASP BWAをVirtualBox上で稼働させる際、初期状態では動的IPアドレス(DHCP)が設定されています。この場合、DHCPサーバーから割り当てられるIPアドレスが毎回変動する可能性があり、仮想マシン(VM)起動時にIPアドレスを確認する必要があります。
OWASP BWAのようにセキュリティ検証やトレーニング用途で利用する場合、仮想マシンに固定IPアドレスを割り当てておくことを推奨します。特に、ネットワークスキャナや脆弱性診断ツール(例:Nmap、Burp Suite、Nessus等)を複数回にわたって使用する際、IPアドレスが変更されないことにより、作業効率が高まります。
固定IPアドレスを割り当てる
固定IPアドレスの設定は、OWASP BWAが稼働する仮想マシン(VM)で行います。OWASP BWAはUbuntuベースのOS上で動作しているため、ネットワーク設定ファイル/etc/network/interfaces
を編集して、固定IPアドレスを割り当てます。
以下に、VirtualBox上で稼働するOWASP BWAに対し、固定IPアドレスを割り当てる手順を示します。
ホストオンリーアダプターのIPアドレス帯を確認
VirtualBoxのメニューバー「ファイル」-「ツール」-「ネットワークマネージャー」から、該当のホストオンリーアダプターの設定を確認します。


この場合、192.168.10.2
〜192.168.10.254
の範囲で未使用のIPアドレスを選定してOWASP BWAに設定できます。
なお、固定IPアドレスを使用する場合、DHCPサーバーは無効にしてもOKです。

DHCPから固定IPアドレスに変更
仮想マシンにrootユーザーでログインし、ネットワーク設定ファイル/etc/network/interfaces
を編集します。
OWASP BWAでは、初期設定として英語キーボードが設定されています。日本語キーボードとは記号キーの配置が異なります。
日本語キーボードを使用して、仮想マシンのコンソールから直接ログインした場合、記号文字の入力が難しい場合があります。その際は、ホストOSからSSH接続を行い、ネットワーク設定ファイルを編集してください。
変更前
root@owaspbwa:~# cat /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet dhcp
eth0がDHCPになっているので、固定IPアドレス(例.192.168.10.105)に変更します。
変更後
root@owaspbwa:~# cat /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet static
address 192.168.10.105
netmask 255.255.255.0
ネットワークサービスを再起動
設定を保存後、ネットワークサービスを再起動、または仮想マシン自体(OS)を再起動します。
ネットワークサービスを再起動する場合
root@owaspbwa:~# /etc/init.d/networking restart
仮想マシン自体(OS)を再起動する場合
root@owaspbwa:~# shutdon -r now
IPアドレスが反映されたか確認
再起動後にip aコマンド
で正しくIPアドレスが設定されていることを確認します。
root@owaspbwa:~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000
link/ether 08:00:27:72:00:f5 brd ff:ff:ff:ff:ff:ff
inet 192.168.10.105/24 brd 192.168.10.255 scope global eth0
inet6 fe80::a00:27ff:fe72:f5/64 scope link
valid_lft forever preferred_lft forever
ブラウザからアクセス
最後に、ホストOSのブラウザからアクセスできることを確認します。
