前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【漏洞修复】ElasticSearch未授权漏洞复现和修复

【漏洞修复】ElasticSearch未授权漏洞复现和修复

原创
作者头像
腾讯云-MSS服务
发布2020-11-09 11:10:11
15.4K1
发布2020-11-09 11:10:11
举报
文章被收录于专栏:安全加固安全加固

0x01漏洞描述

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

0x02 漏洞危害

Elasticsearch默认9200端口对外开放且未进行验证,用于提供远程管理数据的功能,任何连接到服务器端口上的人,都可以调用相关API对服务器上的数据进行任意的增删改查。

0x03 漏洞验证

访问ES相关API,可直接读取敏感数据,甚至可以操作相关数据。

代码语言:javascript
复制
http://localhost:9200/_plugin/head/ web管理界面
http://localhost:9200/_cat/indices
http://localhost:9200/_river/_search 查看数据库敏感信息
http://localhost:9200/_nodes 查看节点数据
ES未授权敏感信息
ES未授权敏感信息

0x04 修复建议

1、9200端口不要对外开放,如需开放,建议在安全组限制只允许指定IP才能访问9200端口;

// accept

代码语言:javascript
复制
## iptables -A INPUT -p tcp -s 127.0.0.1 --dport 9200 -j ACCEPT
## iptables -A INPUT -p udp -s 127.0.0.1 --dport 9200 -j ACCEPT

// drop

代码语言:javascript
复制
## iptables -I INPUT -p tcp --dport 9200 -j DROP
## iptables -I INPUT -p udp --dport 9200 -j DROP

// 保存规则并重启 iptables

代码语言:javascript
复制
## service iptables save
## service iptables restart

2、为elasticsearch增加登录验证

https://cloud.tencent.com/developer/article/1620806

3、使用Nginx搭建反向代理,通过配置Nginx实现对Elasticsearch的认证。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 0x01漏洞描述
    • 0x02 漏洞危害
    • 0x03 漏洞验证
    • 0x04 修复建议
    相关产品与服务
    Elasticsearch Service
    腾讯云 Elasticsearch Service(ES)是云端全托管海量数据检索分析服务,拥有高性能自研内核,集成X-Pack。ES 支持通过自治索引、存算分离、集群巡检等特性轻松管理集群,也支持免运维、自动弹性、按需使用的 Serverless 模式。使用 ES 您可以高效构建信息检索、日志分析、运维监控等服务,它独特的向量检索还可助您构建基于语义、图像的AI深度应用。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档