目录
今天继续学习各种未授权访问的知识和相关的实操实验,一共有好多篇,内容主要是参考先知社区的一位大佬的关于未授权访问的好文章,还有其他大佬总结好的文章:
这里附上大佬的好文章链接:常见未授权访问漏洞总结 - 先知社区
我在这只是学习大佬总结好的相关的知识和实操实验,那么废话不多说,开整。
第十二篇是关于Elasticsearch的未授权访问
1、漏洞原理
ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。Elasticsearch的增删改查操作全部由http接口完成。由于Elasticsearch授权模块需要付费,所以免费开源的Elasticsearch可能存在未授权访问漏洞。该漏洞导致,攻击者可以拥有Elasticsearch的所有权限。可以对数据进行任意操作。业务系统将面临敏感数据泄露、数据丢失、数据遭到破坏甚至遭到攻击者的勒索。
Elasticsearch服务普遍存在一个未授权访问的问题,攻击者通常可以请求一个开放9200或9300的服务器进行恶意攻击。
2、环境搭建
# elasticsearch需要JDK1.8+
# 创建elasticsearch用户,elasticsearch不能root执行
useradd elasticsearch
passwd elasticsearch
su elasticsearch
首先安装JDK环境:
创建用户:
下载环境
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.5.0.zip
解压并启动
unzip elasticsearch-5.5.0.zip
cd elasticsearch-5.5.0/bin
./elasticsearch
下载完成,但是后面启动时说我的jdk版本过低,暂时还有没有解决,后面还是借用大佬的图来证明未授权访问
3、未授权访问
curl http://localhost:9200/_nodes #查看节点数据
更多利用可以自行搜索一下
防御手段
- -访问控制策略,限制IP访问,绑定固定IP。
- -在config/elasticsearch.yml中为9200端口设置认证等。
到此关于Elasticsearch 未授权访问漏洞的基础知识就学习完了,后面还有很多知识等着我去学习,再见(*^▽^*)