标题 | 简介 | 类型 | 公开时间 | ||||||||||
|
|||||||||||||
|
|||||||||||||
详情 | |||||||||||||
[SAFE-ID: JIWO-2024-3020] 作者: 小螺号 发表于: [2022-03-02]
本文共 [407] 位读者顶过
ZooKeeper默认开启在2181端口,在未进行任何访问控制情况下,攻击者可通过执行envi命令获得系统大量的敏感信息,包括系统名称、Java环境。 0x00 ZooKeeper 安装:Zookeeper的默认开放端口是2181
[出自:jiwo.org] 0x01 漏洞验证:
执行以下命令即可远程获取该服务器的环境:
直接连接: 其他攻击获取信息
stat:列出关于性能和连接的客户端的统计信息。
ruok:测试服务器是否运行在非错误状态。
reqs:列出未完成的请求。
envi:打印有关服务环境的详细信息。
dump:列出未完成的会话和临时节点。 0x02 漏洞修复
禁止把Zookeeper直接暴露在公网 zookeeper有三个端口(可以修改),默认端口作用:
1、2181:对cline端提供服务 修复办法1 绑定指定IP访问 (推荐):1、登陆zookeeper
4、查看是否正常添加:
未授权也可以连接,但是查看节点时会报错"KeeperErrorCode = NoAuth for /",localhost都不行,必须填可访问IP,才能访问。
回退办法:
设置为所有人可访问:
修复办法2 添加防火墙访问控制:
配置防火墙策略,只允许指定IP访问2181端口。
Linux 7:
修复办法3 设置身份验证(需要改程序):为ZooKeeper配置相应的访问权限。
1)增加一个认证用户
setAcl /path auth:用户名:密码明文:权限 3)查看Acl设置
|