【OWASP BWAインストール完全ガイド】VirtualBoxへのインストールからネットワーク設定まで徹底解説!

OWASP BWA(Broken Web Applications Project)は、複数の脆弱なWebアプリケーションを一つの仮想マシンに統合したセキュリティ学習用のプラットフォームです。

本記事では、OWASP BWAの特徴や収録アプリを紹介した上で、VirtualBoxを使ってOWASP BWAのインストール手順をステップバイステップで解説しています。

インストールの流れ
  1. OWASP BWAのOVAファイルをダウンロード
  2. OVAファイルをインポート
  3. ネットワークアダプターの設定
  4. 仮想マシン(VM)を起動
  5. 固定IPアドレスの割り当て
  6. ブラウザからアクセス

スクリーンショット付きで解説しているので、初めての方でも迷わずに進めることができます。

目次

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 BWASQLインジェクション、クロスサイトスクリプティング(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をインストールします。

インストール環境

OSWindows10 Pro 22H2(64bit)
CPUIntel Core i7
メモリ32GB
仮想化ソフトOracle VirtualBox 7.1.4

OWASP BWAのOVAファイルをダウンロード

OWASP BWAの仮想マシン(VM)は、SourceForgeのプロジェクトページからダウンロードできます。

Version 1.2がリリースされて以降、アップデートは行われていません。しかしながら、クロスサイトスクリプティング(XSS)やSQLインジェクション、CSRFといった基本的な脆弱性を学ぶ上では、有用な教材であることに変わりありません。

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ファイルをインポート

STEP

仮想アプライアンスのインポート

まず、VirtualBoxを起動し、メニューバーの「ファイル」から「仮想アプライアンスのインポート」を選択します。

仮想アプライアンスをインポート
STEP

インポートファイルを指定

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

インポートファイルを指定
STEP

構成情報を変更

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

構成情報を変更

メモリの割り当てについては、デフォルト設定(1024MB)で動作に支障はありませんが、ホストマシンのリソースに余裕がある場合は2048MB以上に設定することで快適に操作できます。

設定例

設定項目初期値推奨値備考
名前VMOWASP BWAわかりやすい名前に変更
RAM1024MB2048MBホストマシンのリソースに余裕があれば
STEP

インポート開始

完了ボタンをクリックし、OVAファイルをインポートを開始します。

インポート開始
STEP

インポート中

インポート中
STEP

インポート終了

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

インポート終了

以上で、VirtualBoxへのOWASP BWAのインポート作業は完了です。

次のステップでは、仮想マシンのネットワークアダプターを設定し、ブラウザからOWASP BWAへアクセスできるようにします。

仮想マシンのネットワークアダプターを設定

VirtualBoxのネットワークモードには、「NAT」「ブリッジアダプター」「ホストオンリーアダプター」などがありますが、OWASP BWAの動作環境において最も推奨されるのは「ホストオンリーアダプター」です。

ホストオンリーアダプターの場合、外部ネットワークとは完全に隔離され、仮想マシンとホストOSが専用の仮想ネットワーク上で通信できるため、安全性が高く、セキュリティ学習用途には最適です。(仮想マシン同士の通信も可)

NATはインターネット接続は可能ですが、他のVMやホストOSからの通信ができないため、OWASP BWAの用途には適していません。

インストール直後の初期設定では、NATが選択されているため、ホストオンリーアダプターに変更します。

STEP

ホストオンリーネットワークを確認

VirtualBoxのメニューバー「ファイル」-「ツール」-「ネットワークマネージャー」から、ホストオンリーネットワーク用のアダプターを確認します。※ここで確認したネットワークアダプターは後述の設定で使用します。

ネットワークマネージャーを起動

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

作成アイコンをクリック
STEP

DHCPサーバーを有効にする

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

DHCPサーバーを有効にする
STEP

仮想マシンのネットワーク設定を変更

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

インポートした仮想マシンをクリックして、設定アイコンをクリック
STEP

ネットワーク設定画面を開く

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

ネットワーク設定画面を開く
STEP

ネットワークアダプターを変更する

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

ネットワークアダプターを変更する

この設定により、仮想マシンとホストマシンが同一ネットワーク上に存在することとなり、仮想マシンのIPアドレスを指定することで、ホストマシンのブラウザからOWASP BWAのトップページに直接アクセスできるようになります。

次のステップでは、この仮想マシンを実際に起動し、ホストマシンのブラウザからOWASP BWAにアクセスできるかを確認します。

OWASP BWAを起動

仮想マシン(VM)を起動

OWASP BWAのインストールが完了したら、次はVirtualBox上で仮想マシン(VM)を起動します。まず、インポートした仮想マシンを選択して、起動アイコンをクリックします。

起動アイコンをクリック

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

Ubuntuベースのコンソール画面

DHCPサーバーによって割り当てられたIPアドレスが画面上に表示されます。このIPアドレスは、後ほどブラウザからOWASP BWAにアクセスする際に使用するので、控えておいて下さい。

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のトップ画面

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アドレスを割り当てる手順を示します。

STEP

ホストオンリーアダプターのIPアドレス帯を確認

VirtualBoxのメニューバー「ファイル」-「ツール」-「ネットワークマネージャー」から、該当のホストオンリーアダプターの設定を確認します。

ネットワークマネージャーを開く
ホストオンリーアダプターの設定を確認

この場合、192.168.10.2192.168.10.254の範囲で未使用のIPアドレスを選定してOWASP BWAに設定できます。

なお、固定IPアドレスを使用する場合、DHCPサーバーは無効にしてもOKです。

DHCPサーバーを無効にする
STEP

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
STEP

ネットワークサービスを再起動

設定を保存後、ネットワークサービスを再起動、または仮想マシン自体(OS)を再起動します。

ネットワークサービスを再起動する場合
root@owaspbwa:~# /etc/init.d/networking restart

仮想マシン自体(OS)を再起動する場合
root@owaspbwa:~# shutdon -r now
STEP

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
STEP

ブラウザからアクセス

最後に、ホストOSのブラウザからアクセスできることを確認します。

OWASP BWAのトップページ
デフォラボ

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
目次