Elasticsearch 中心插件Kibana 当地文件包罗破绽剖析


玖富娱乐是一家为代理招商,直属主管信息发布为主的资讯网站,同时也兼顾玖富娱乐代理注册登录地址。

不久前Elasticsearch宣布了最新平安通知布告, Elasticsearch Kibana 6.4.3之前版本和5.6.13之前版本中的Console插件存在严峻的当地文件包罗破绽可致使拒绝效劳进击、恣意文件读取进击、合营第三方运用反弹SHELL进击,下文笔者对其破绽配景、进击道理和行动举行剖析和复现。

0X01 影响局限

Elasticsearch Kibana是荷兰Elasticsearch公司的一套开源的、基于浏览器的剖析和搜刮Elasticsearch仪表板对象,作为Elasticsearch的中心组件,Kibana可作为产物或效劳供应,并与种种体系,产物,网站和企业中的其他Elastic Stack产物合营运用。 因为Kibana在大数据范畴用处较为普遍,此次破绽影响局限较大, Shodan搜刮效果如图

 

0x02 破绽场景

笔者挑选Kibana-6.1.1-linux-x86_64.tar.gz版本,搭建历程不表,网上许多参考资料

2.1、拒绝效劳

拒绝效劳笔者挑选/cli_plugin/index.js演示,进击向量以下

GET要求发出去后客户端打不开运用页面,在效劳端Kibana历程退出,运用效劳挂掉详细看下图

 

 

2.2、恣意文件读取

文件读取笔者挑选/etc/passwd演示,进击向量以下

2.3、合营第三方运用

一般情况下Kibana与其他的运用顺序一同布置,若是运用顺序可以或许上传或许写入Javascript文件的话,进击者可以或许经由过程Nodejs建立一个Reverse Shell,内容以下

-玖富娱乐是一家为代理招商,直属主管信息发布为主的资讯网站,同时也兼顾玖富娱乐代理注册登录地址。-

途径遍历许可进击者接见Kibana效劳器任何文件的地位,以下

Nc反弹监听获得交互会话

 

0X03 破绽剖析

破绽污染点位于 srccore_pluginsconsoleapi_serverserver.js

Apis获得的值传递给赋值参数name,从图上也能看到name变量的内容没有举行任何过滤被引入到require,而require模块在Nodejs里透露表现加载模块的体式格局,可以或许加载中心模块,比方内置的“http”,也可以或许是包罗名为“index.js”如许的文件或目次若是参数以“/”、“./”、”../”开首则函数知道该模块是文件或许文件夹,继承跟进到函数asJson地点的api.js文件中

在同级目次下ES_5_0.js 中有一个这个类的导出实例

总结一下此函数的一般流程是猎取导出API类实例并挪用函数asJson的JavaScript文件的称号,然则疏忽了过滤考证因而我们可以或许指定恣意文件,合营目次跳转遍历就可以或许完成Kibana效劳器上恣意文件读取的操纵。基于上述的剖析很明显Nodejs运用顺序须要大批的文件,若是这些文件里包罗了process.exit指令,那末就可以或许封闭Kibana历程并致使拒绝效劳进击,经由过程搜刮找到了三个可以或许的进击向量

0x04 一点总结

LFI一般涌现在PHP运用中,通样是require此次运用在Nodejs顺序中,置信将来还会有更多的Nodejs顺序存在这类题目,原因是当地包罗破绽涌现了许多年,但照旧有许多软件开发人员和架构师没有考虑到这点,这篇文章很好的说清楚明了Kibana中存在的一个症结LFI破绽,使得进击者可以或许在效劳器上运转当地代码,可形成直接的伤害就是拒绝效劳进击,若在消费情况下营业着实伤不起,须要引发对Nodejs LFI的注重。

 

0x05 参考链接

https://github.com/appsecco/vulnerable-apps/tree/master/node-reverse-shell

https://www.elastic.co/downloads/kibana

http://www.cnvd.org.cn/flaw/show/CNVD-2018-23907

http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-17246

-玖富娱乐是一家为代理招商,直属主管信息发布为主的资讯网站,同时也兼顾玖富娱乐代理注册登录地址。