从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 潜在风险链

  1. 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. 渗透测试方法论总结

  1. 信息收集:分析网站功能,识别AJAX端点
  2. 参数测试:尝试修改/删除参数,观察行为变化
  3. 漏洞利用:从phpinfo到system函数执行
  4. 横向移动:查找配置文件,获取更多凭据
  5. 权限提升:从Web服务器到LDAP访问
  6. 影响评估:分析泄露数据的潜在危害
  7. 报告撰写:记录发现,提出修复建议

附录:实用命令参考

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工具包
从RCE到LDAP访问:渗透测试实战教学文档 1. 漏洞发现与利用 1.1 初始发现 目标网站包含新闻、联系页面和文档下载功能 发现AJAX请求端点,包含两个参数,用于获取最新新闻的HTML响应 1.2 RCE漏洞利用 发现 ajax 端点允许使用任何类的任何方法 通过删除 class 参数成功触发 phpinfo() 函数 利用PHP的 system() 函数执行系统命令 发现 args 参数可用于传递自定义命令 利用代码示例 : 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利用 LDAP搜索(命令行) RFID克隆工具 Proxmark3 ChameleonMini RFIDiot工具包