首页/安全/漏洞与攻击面速查/LDAP 匿名绑定与目录信息泄露
主机与服务风险面53 条

LDAP 匿名绑定与目录信息泄露

LDAP 目录服务若允许匿名绑定,未认证用户可读取命名上下文与部分条目(用户、组、邮箱等),为后续凭据尝试与钓鱼提供素材。

漏洞与攻击面速查安全更新于 2026-10-13

匿名绑定的泄露面

LDAP 目录服务如果允许匿名绑定,未认证用户就能读取命名上下文与部分条目:用户名、归属组、邮箱、手机号可以直接导出,为口令尝试与钓鱼提供素材。问题通常不在协议本身,而在默认配置与目录访问控制没有收紧——匿名可读的属性范围,往往比管理员以为的宽得多。

基本信息

组件OpenLDAP、Active Directory 等目录服务
默认端口389 明文 LDAP,636 LDAPS
匿名绑定客户端不做认证直接连接,命令行工具用 -x 参数
可能泄露命名上下文、用户与组条目、邮箱与联系方式属性
加固方向关闭匿名绑定、目录 ACL 收紧、强制 TLS、专用绑定账号
检查方式授权范围内用 ldapsearch 验证匿名可读范围

核查项与期望

核查项检查方式期望状态
命名上下文匿名查询 namingContexts不泄露内部目录结构
用户条目匿名查询 person 类条目被拒绝,或只返回极少条目
敏感属性匿名读取 mail、mobile 等被 ACL 拒绝
传输加密检查是否强制 StartTLS 或 LDAPS绑定凭据不裸奔
查询频率查看目录日志异常枚举可被发现并告警

匿名绑定测试

匿名绑定测试
# 查看匿名可读的命名上下文
ldapsearch -x -H ldap://ldap.example.com -b '' -s base namingContexts
# 尝试匿名读取用户条目:能返回说明匿名读取未收敛
ldapsearch -x -H ldap://ldap.example.com -b 'dc=example,dc=com' '(objectClass=person)' cn mail
# 限制返回条数,避免对目录服务造成压力
ldapsearch -x -H ldap://ldap.example.com -b 'dc=example,dc=com' -z 20 '(objectClass=person)' cn

收敛要点

收敛要点
1. OpenLDAP:olcDisallows 增加 bind_anon,关闭匿名绑定
2. 目录 ACL 收紧,匿名仅允许必要的根查询(如根 DSE)
3. 强制 StartTLS 或 LDAPS,避免绑定凭据明文传输
4. 查询频率限制与失败日志告警,异常枚举可被及时发现
5. 应用改用专用绑定账号,避免共享高权限账号

典型使用场景

  • 目录服务上线前的匿名绑定核查
  • 季度巡检中的身份服务暴露面检查
  • 渗透测试报告里目录信息泄露问题的整改
  • 关闭匿名绑定后的应用回归验证
  • 账号枚举风险排查(钓鱼前置动作)
  • 审计举证:ACL 规则与专用绑定账号清单
关闭匿名绑定后需要回归应用:部分系统把匿名读取当作默认探测方式,关闭后可能直接报错,建议先在测试环境验证。
目录里可读的姓名、部门与邮箱是钓鱼攻击的直接素材,可枚举的账号清单还会方便后续口令尝试,不要把它当低风险项处理。

易错点

  • 只在前端关闭匿名,但目录 ACL 仍允许匿名读取常用属性
  • 关闭匿名绑定后未回归应用,上游系统认证失败引发业务中断
  • LDAP 与 AD 的目录查询未强制 TLS,绑定凭据在网络中明文传输
  • 多个应用共享一个高权限绑定账号,一处泄露影响整个目录
  • 目录账号清单被枚举用于钓鱼,事前没有任何查询告警

数据来源与参考

  • OpenLDAP 管理指南(访问控制与 bind_anon)
  • RFC 4513(LDAP 认证方法)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌