从RCE到LDAP访问
字数 1384 2025-08-26 22:11:14
从RCE到LDAP访问:渗透测试实战教学文档
1. 漏洞发现与利用
1.1 初始发现
- 目标网站包含新闻、联系页面和文档下载功能
- 发现AJAX请求端点,包含两个参数,用于获取最新新闻的HTML响应
1.2 RCE漏洞利用
- 发现
ajax端点允许使用任何类的任何方法 - 通过删除
class参数成功触发phpinfo()函数 - 利用PHP的
system()函数执行系统命令 - 发现
args参数可用于传递自定义命令
利用代码示例:
/ajax?args=whoami
1.3 系统命令执行
- 通过RCE可以:
- 浏览文件和文件夹
- 查看文件内容
- 执行任意UNIX命令
2. LDAP服务器访问
2.1 配置文件发现
- 通过RCE找到包含数据库凭据的配置文件
- 发现20个数据库的登录凭据
- 发现LDAP服务器连接信息
2.2 LDAP基础知识
- LDAP(轻量级目录访问协议)是用于访问和维护分布式目录信息服务的开放标准
- 主要用途:
- 集中用户管理
- 单点登录(SSO)
- 网络资源共享
- 权限管理
2.3 LDAP连接工具
- 推荐工具:LDAPSoft(商业软件)
- 开源替代品:
ldapsearch(命令行工具) - 连接方式:
- 使用发现的LDAP凭据
- 注意:本例中只有读取权限
3. LDAP数据泄露分析
3.1 泄露数据类型
- 姓名(名和姓)
- 个人电子邮件地址
- 出生日期
- 电话号码
- 明文密码(随机生成)
- RFID标签信息(MiFare)
- Windows会话的个人目录信息
3.2 RFID安全风险
- 可以克隆员工RFID标签
- 所需材料:
- 空白RFID标签(价格低廉)
- RFID编程设备
- 潜在危害:
- 未经授权进入公司建筑
- 物理安全系统绕过
3.3 短信警报系统漏洞
- 发现短信发送服务的API密钥
- 可通过HTTP请求向所有员工发送警报短信
- 潜在滥用:
- 发送虚假警报
- 社会工程攻击
- 制造恐慌
4. 漏洞影响评估
4.1 直接影响
- 40,000名员工/前员工的个人信息泄露
- 20个数据库的未授权访问
- 物理安全系统(RFID)可能被绕过
- 短信警报系统可能被滥用
4.2 潜在风险链
- RCE漏洞 → 2. 配置文件泄露 → 3. LDAP访问 → 4. 员工数据泄露 → 5. RFID克隆 → 6. 物理入侵
5. 防御措施建议
5.1 防止RCE
- 禁用危险函数(
system,exec等) - 实施严格的输入验证
- 使用白名单控制可调用的类/方法
- 最小化PHP功能暴露
5.2 LDAP安全加固
- 实施最小权限原则
- 加密LDAP通信
- 定期审计LDAP访问日志
- 禁用匿名绑定
5.3 数据保护
- 避免存储明文密码
- 实施数据加密
- 定期清理不必要的数据
- 限制敏感数据的访问
5.4 物理安全
- 实施多因素认证
- 监控RFID使用异常
- 定期更换RFID密钥
- 实施防克隆技术
6. 渗透测试方法论总结
- 信息收集:分析网站功能,识别AJAX端点
- 参数测试:尝试修改/删除参数,观察行为变化
- 漏洞利用:从phpinfo到system函数执行
- 横向移动:查找配置文件,获取更多凭据
- 权限提升:从Web服务器到LDAP访问
- 影响评估:分析泄露数据的潜在危害
- 报告撰写:记录发现,提出修复建议
附录:实用命令参考
RCE利用
/ajax?args=ls -la /path/to/directory
/ajax?args=cat /etc/passwd
LDAP搜索(命令行)
ldapsearch -x -H ldap://server -D "cn=admin,dc=example,dc=com" -w password -b "dc=example,dc=com"
RFID克隆工具
- Proxmark3
- ChameleonMini
- RFIDiot工具包