5
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Webアプリハッキング学習、DVWAのセットアップ方法【Kali 2020.1】

Posted at

事の背景

会社の後輩に「SQLインジェクションのイメージが沸かない」と相談をされましたので、実際にWebアプリケーションへハッキング攻撃できる学習用アプリケーション「DVWA」を構築し、実演しようとなりました。
今回はKali LinuxにDVWAを構築するまでの手順を紹介します。
なお、本手順はIPUAIRON様のハッキング・ラボのつくりかた を参考に進めております。興味のある方は、是非読んでみてください。

0.今回の環境

構築した環境条件は以下となります。

  • VirtualBox v6.1.2(r135662)
  • Kali Linux 2020.1
  • ブラウザ:Firefox
  • Kali内での特殊な設定:私の環境ではsudoコマンド実行時、パスワードを聞かれないよう設定を変更しております。
    • そのため、sudoコマンド実行時の画像等でパスワードを聞いてくるような文言がありません。デフォルト設定ではパスワードを要求されますので、自身の環境との差分にご注意ください。

1. DVWAのインストール

  • KaliでDVWAのサイトへアクセスし、ページ下部の「Download」から"DVWA-master.zip"をダウンロードします。

DVWA-Damn Vulnerable Web Application
URL:http://www.dvwa.co.uk/

image.png

  • ダウンロードしたファイルを"/root"配下にコピー(/移動)させます。ただし、/rootは一般権限では操作できないため、一度root権限へ昇格します。
$ sudo su
※パスワードを聞かれます。デフォルトであれば、"kali"
  • root権限となったら、DVWA-master.zipをrootフォルダへコピーします。

image.png
↑一般権限では、「Permission denied」となるが、root権限後は問題なくrootフォルダへ配置できる。

  • rootフォルダへ移動し、unzipコマンドで解凍します。
# cd /root
# unzip DVWA-master.zip
  • 解凍したmasterを/var/www/html/配下へ移動します。その後、権限を変更します。
# cp -Rv DVWA-master /var/www/html
# chmod -Rv 777 /var/www/html/DVWA-master
  • DVWA-master/configフォルダ配下にあるconfigファイル名を以下のように修正します。
# cd /var/www/html/DVWA-master/config
# mv config.inc.php.dist config.inc.php

2. サーバーの起動とDVWAへのアクセス

  • ApacheとMySQLを起動します。
# service apache2 start
# service mysql start
  • KaliでFirefoxを起動し、以下のURLを入力しアクセスする。apacheとmysqlが正常に起動していれば、以下のような"setup.php"の画面に自動遷移するはずです。
    • 入力URL:http://localhost/DVWA-master/login.php
      image.png

3. MySQLへアカウント登録

  • MySQLに接続し、DB接続用のアカウントを登録します。
# mysql -u root -p

image.png

  • データベースが選択されていないため、mysqlを明示します。
# use mysql

image.png

  • ユーザーを作成します。
> GRANT ALL PRIVILEGES ON *.* TO '[ユーザー名]'@'localhost' IDENTIFIED BY '[パスワード]';
※[ユーザー名]と[パスワード]は任意

image.png
今回はkali/kaliで作成。正常に作成されると、「Query OK, ~」と表示されます。

  • "Ctr+c"でSQL編集モードを終了し、その後mysqlをリスタートさせます。
# service mysql restert

image.png

4. configファイルの修正

  • 先程のconfigファイルを開き、[ 'db_user' ]と[ 'db_passowrd' ]を先程設定したユーザー名とパスワードに変更します。
    • エディタは何でもいいですが、私はviが苦手なのでnanoエディタで開きました。
# nano /var/www/html/DVWA-master/config/config.inc.php

image.png
↑修正前

image.png
↑修正後

5. DVWAのデータベース作成とログイン確認

  • 「Database setup」画面(http://localhost/DVWA-master/setup.php )の一番下にある、「Create/Reset Database」ボタンを押下します。ボタンの下に、以下のようなメッセージが出ればデータベースの作成は完了です。

image.png

  • ログインページ(http://localhost/DVWA-master/login.php) にアクセスします。正常にできていれば、ユーザー名とパスワードを入力する画面となっているはずです。

image.png

  • Usernameに"admin"、Passwordに"password"と入力してログインします。「Welcome to Damn Vulnerable Web Application!」と書かれたページが表示されればDVWAの構築は完了です。

image.png

6. 次回以降のログインの場合。

  • うっかり忘れがちですが、本アプリケーションはapacheとmysqlが動いていないと起動できません。

image.png

次回以降、続きをする場合はまずapacheとmysqlを起動してからアクセスしてください。

image.png

以上となります。

5
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?