Elasticsearch是一个开源的高扩展的分布式全文检索引擎,它可以近乎实时的存储、检索数据;本身扩展性很好,可以扩展到上百台服务器,处理PB级别的数据。Elasticsearch也使用Java开发并使用Lucene作为其核心来实现所有索引和搜索的功能,但是它的目的是通过简单的RESTful API来隐藏Lucene的复杂性,从而让全文搜索变得简单。

当ElasticSearch的节点启动后,它会利用多播(multicast)(或者单播,如果用户更改了配置)寻找集群中的其它节点,并与之建立连接。这个过程如下图所示:

近来, 有一名黑客渗透进了大量暴露在互联网中并且没有任何密码保护的Elasticsearch服务器,并尝试删除其中存储的数据。在这名网络犯罪分子实施攻击的过程中,同时还留下了一家美国网络安全公司--夜狮安全nightlionsecurity.com的网址,试图嫁祸于夜狮安全公司。

在此次攻击活动中,攻击者很可能是在一系列自动化脚本的帮助下完成的攻击,这些脚本能够扫描互联网中暴露在外网且未受任何密码保护的ElasticSearch系统。自动化脚本扫描到这些未受保护的系统之后,便会尝试连接至其后端数据库,并尝试删除其中存储的数据,最后创建一个名为网址“nightlionsecurity.com”的新的空白索引。

ElasticSearch 是一款Java编写的企业级搜索服务,启动此服务默认会开放HTTP-9200端口,可被非法操作数据。

使用fofa搜索开放了9200端口的IP,获得1579023条数据。

任意访问一个IP,发现存在Elasticsearch未授权访问漏洞:

elasticsearch在安装了river之后可以同步多种数据库数据(包括关系型的mysql、mongodb等)。http://localhost:9200/_cat/indices里面的indices包含了_river一般就是安装了river了。

http://localhost:9200/_rvier/_search就可以查看敏感信息了

http://localhost:9200/_plugin/head/ web管理界面
http://localhost:9200/_cat/indices
http://localhost:9200/_river/_search 查看数据库敏感信息
http://localhost:9200/_nodes 查看节点数据

还可以搭建ElasticHD,,在浏览器中远程连接就可以看到ES节点服务器可视化数据的全貌了

Linux搭建ElasticHD:

wget https://github.com/360EntSecGroup-Skylar/ElasticHD/releases/download/1.4/elasticHD_linux_amd64.zip

2, 解压

unzip elasticHD_linux_amd64.zip

3,给权限

chmod 777 ElasticHD

exec ./ElasticHD -p 127.0.0.1:9800

5,在浏览器中访问127.0.0.1:9800,看到泄漏了21条消息,点击Query还可以查看详细消息。

Elasticsearch是一个开源的高扩展的分布式全文检索引擎,它可以近乎实时的存储、检索数据;本身扩展性很好,可以扩展到上百台服务器,处理PB级别的数据。Elasticsearch也使用Java开发并使用Lucene作为其核心来实现所有索引和搜索的功能,但是它的目的是通过简单的RESTful API来隐藏Lucene的复杂性,从而让全文搜索变得简单。 当ElasticSea...
学弟找到个自己学校的 es 授权 ,尝试利用一波,学习下如何使用 :) http://www.ruanyifeng.com/blog/2017/08/ elasticsearch .html http://blog.51cto.com/feelmanc/1250430 上边文档写的挺不错,我基本上都是在上边学到的。增删改我不想知道,我只想知道 如何查看我想要的数据 首先找有多少数据库(其...
漏洞 描述 Elasticsearch 是一款java编写的企业级搜索服务。越来越多的公司使用ELK作为日志分析,启动此服务默认会开放9200端口,可被非法操作数据,有些 Elasticsearch 用户还会安装Kibana用户界面,如 经任何处理,还会导致Kibana用户界面任意操作 Payload 授权 访问 获取敏感信息 /_cat/indic es /_plugin/sql/ /_nod es /_search /_search?preety /_status 1、 访问 9200端口,出现这个页面说明存在El
一、 elasticsearch 介绍 Elasticsearch 是一个分布式、高扩展、高实时的搜索与数据分析引擎。它能很方便的使大量数据具有搜索、分析和探索的能力。默认端口为9200。 二、 elasticsearch 授权 漏洞 判断 1.存在 授权 漏洞 样式: 访问 http://ip/9200;返回字段中有“you know,for search”则代表有 授权 漏洞 。 2.不存在 授权 样式:有登录点 三、 elasticsearch 授权 漏洞 利用 1.利用工具: ElasticSearch Head 2.工具链
1、search guard插件 https://www.cnblogs.com/shifu204/p/6376683.html 2、 Elasticsearch -http-basic 不支持 es 5,忽略 3、nginx auth控制 https://www.sojson.com/blog/213.html 转载于:https://www.cnblogs....
1.限制IP 访问 ,禁止 授权 IP 访问 ElasticSearch 端口(默认9200)。 2.通过 ES 插件形式来增加 访问 验证,需要注意增加验证后切勿使用弱口令: ①shield插件,收费,暂不考虑。 ②针对1.7.0版本之前的 ElasticSearch ,可采用 elasticsearch -http-basic插件。 下载地址:Releas es · Asquera/ elasticsearch -http-basic · GitHub elasticsearch -http-basic和其他 ES
Elasticsearch 是一个基于Lucene的分布式搜索引擎,它可以实现快速、准确地搜索和分析大量数据。下面是一个简单的 Elasticsearch 教程,帮助您开始使用 Elasticsearch 。 ## 安装和配置 Elasticsearch 1. 下载 Elasticsearch Elasticsearch 可以从官方网站下载:https://www.elastic.co/downloads/ elasticsearch 。 2. 安装 Elasticsearch 安装 Elasticsearch 是一个简单的过程。安装过程因操作系统而异,因此请按照操作系统的指南进行操作。 3. 启动 Elasticsearch 启动 Elasticsearch 非常简单。在命令行中,进入 Elasticsearch 的安装目录,然后运行以下命令: bin/ elasticsearch 4. 验证安装 打开Web浏览器,输入http://localhost:9200。如果一切正常,您将看到一个返回以下JSON响应的页面: "name" : "Your_Node_Name", "cluster_name" : "Your_Cluster_Name", "cluster_uuid" : "your_cluster_uuid", "version" : { "number" : "7.10.2", "build_flavor" : "default", "build_type" : "tar", "build_hash" : "747e1cc71def077253878a59143c1f785afa92b9", "build_date" : "2021-01-13T00:42:12.435326Z", "build_snapshot" : false, "lucene_version" : "8.7.0", "minimum_wire_compatibility_version" : "6.8.0", "minimum_index_compatibility_version" : "6.0.0-beta1" "tagline" : "You Know, for Search" ## 基本概念 1. 索引 Elasticsearch 使用索引来组织数据。索引可以看作是具有一些相关性的文档的集合。例如,您可以创建一个名为“my_index”的索引,用于存储某个特定类型的文档。 2. 类型 Elasticsearch 中的索引可以包含一个或多个类型。类型是有一些共同特征的文档的集合。例如,如果您创建了一个“my_index”索引,您可以在该索引中创建一个名为“my_type”的类型。 3. 文档 Elasticsearch 中的文档是存储在索引中的最小单位。一个文档可以是一个JSON对象,它具有一个唯一的ID和一些字段。例如,如果您在“my_index”索引中创建了一个名为“my_type”的类型,您可以在该类型中创建一个ID为“1”的文档。 4. 分片和副本 Elasticsearch 将索引拆分成多个分片。每个分片是一个独立的Lucene索引,它可以在集群中的一个或多个节点上存储。 Elasticsearch 还可以为每个分片