一、漏洞描述

ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。Elasticsearch的增删改查操作全部由http接口完。由于Elasticsearch授权模块需要付费,所以免费开源的Elasticsearch可能存在未授权访问漏洞。该漏洞导致,攻击者可以拥有Elasticsearch的所有权限。可以对数据进行任意操作。业务系统将面临敏感数据泄露、数据丢失、数据遭到破坏甚至遭到攻击者的勒索。

由于未能通过身份验证限制资源,远程web服务器上运行的Elasticsearch应用程序受到信息泄露漏洞的影响。未经身份验证的远程攻击者可以利用此漏洞泄露数据库中的敏感信息。

二、漏洞复现

1、访问目标地址http://x.x.x.x:9200
在这里插入图片描述
看到You Know, for Search,漏洞大概率存在
可访问

http://IP:9200/_cat/indices
http://IP:9200/_river/_search
查看数据库敏感信息
http://IP:9200/_nodes
查看节点数据

2、下载ElasticHD,运行后浏览器访问127.0.0.1:9800,输入ES的IP加端口连接,就可以直接管理ES了
在这里插入图片描述可以看到连接成功,点击左侧能够看到索引列表并可以进行删除,漏洞验证成功

三、修复建议

1.限制 IP 访问,禁止未授权 IP 访问 ElasticSearch 9200 端口
2.增加访问验证,增加验证后切勿使用弱口令
Elasticsearch是一个开源的高扩展的分布式全文搜索引擎,他可以近乎实时的存储、检索数据,本身扩展性很好,可以扩展到上百台服务器,处理PB级别的数据,Elasticsearch也使用Java开发并使用Lucene作为其核心来实现所有索引和搜索的功能,但是它的目的是通过简单的RESTful API来隐藏Lucene的复杂性,从而让全文搜索变得简单。
漏洞原理:Elasticsearch服务普遍存在一个授权访问的问题,攻击者通常可以请求一个开放9200或9300的服务器进行恶意攻击。
                                    Elasticsearch是一个开源的高扩展的分布式全文检索引擎,它可以近乎实时的存储、检索数据;本身扩展性很好,可以扩展到上百台服务器,处理PB级别的数据。Elasticsearch也使用Java开发并使用Lucene作为其核心来实现所有索引和搜索的功能,但是它的目的是通过简单的RESTful API来隐藏Lucene的复杂性,从而让全文搜索变得简单。
当ElasticSearch的节点启动后,它会利用多播(multicast)(或者单播,如果用户更改了配置)寻找集群中的其它节点,并与之建立连接。这个过程
漏洞介绍:
ElasticSearch有脚本执行(scripting)的功能,可以很方便地对查询出来的数据再加工处理。ElasticSearch用的脚本引擎是MVEL,这个引擎没有做任何的防护,或者沙盒包装,所以直接可以执行任意代码。
而在ElasticSearch 1.2之前的版本中,默认配置是打开动态脚本功能的,如
第一步 下载文件,保证环境中有jdk1.7+
https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.5.0.zip
第二步 解压elasticsearch安装包
                                    原文链接:http://www.sojson.com/blog/213.html
漏洞描述:ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。Elasticsearch的增删改查操作全部由ht
                                    Elasticsearch 是一个非常强大的搜索引擎。它目前被广泛地使用于各个 IT 公司。Elasticsearch 是由 Elastic 公司创建。它的代码位于 GitHub - elastic/elasticsearch: Free and Open, Distributed, RESTful Search Engine。Elasticsearch 是一个分布式、免费和开放的搜索和分析引擎,适用于所有类型的数据,包括文本、数字、地理空间、结构化和非结构化数据。