目录:

  • ES安全事件回顾
  • ES集群安全建议
  • 安全访问配置
  • license更新

ES安全事件回顾


  • 下面是白帽汇监测到针对全球使用广泛的全文索引引擎Elasticsearch的勒索事件:
  • 2017年1月12日上午10时,白帽汇发现第一波勒索者,分析统计,发现共有10264台服务器已经遭受攻击,并且还一直持续增长, 攻击者会删除Elasticsearch所有索引信息,并创建一个名为warning的索引,勒索者写入需要支付0.2比特币才给受害者发送数据(目前按照比特币市场价格,约等于150美元),并留下邮箱地址p1l4t0s@sigaint.org. 该邮箱域与Mongodb勒索的作者使用的是同一个域,但id不同。据了解,此前Mongodb勒索攻击者其实并未备份数据,而是直接删除,而目前确认Elasticsearch也是一样,并未对数据进行备份,而是直接删除。不幸的是,我们ES测试集群的数据也被干掉了:(
  • 2017年1月14日中午12时,白帽汇发现第二波勒索者,创建一个名为please_read名字的索引。攻击者留下类似的文字,该勒索信息显示需要支付0.5比特币(按照当天比特币市场价格,约等于400美元)。邮箱elasticsearch@mail2tor.com
  • 2017年1月16日中午12时,白帽汇发现第三波勒索者,其创建的索引为pleasereadthis.使用的邮箱地址为4rc0s@sigaint.org
  • 影响范围:截止2017年1月17日,白帽汇通过FOFA系统中的68000余个Elasticsearch进行统计分析,发现目前全球共有9750台存在勒索信息。其中此次被删除的数据达到至少500亿条,被删除数据大小至少450TB。通过两次勒索情况的对比分析,发现有大概1%的Elasticsearch使用了验证插件,另外有2%则关闭Elasticsearch,现在已经无法访问。
  • 白帽汇FOFA系统中显示,互联网上公开可访问的Elasticsearch超过68000余台。其中,共有受害总数9750台, 目前全球中受影响最多的为美国4380台,其次是中国第二944台。法国787台,爱尔兰462台,新加坡418台。
  • es集群会收到的攻击通常包含:1、通过es暴露的公网端口进行攻击  2、通过主机服务器进行攻击  3、与ES配合的其它产品,如Logstash,Kibana
  • 综上所述:2017.1.12号开始全球ES变攻击,巧合的是1.14号ES发布5.2.1, 日.......

ES集群安全建议


  • network监听地址(network.host)改为内网IP
  • 修改默认访问端口 , 【http.port: 9200 (设置对外服务的http端口,默认为9200),transport.tcp.port: 9300 (设置节点间交互的tcp端口,默认是9300)】
  • es集群放到专有网络,限制外网访问
  • 禁用http (http.enabled : false), 【http.enabled:是否使用http协议对外提供服务,默认为true,开启】,kibana通过rest访问es进行数据展示,禁用此配置相当于停止rest访问,因此根据实际情况进行处理
  • 增加访问验证,5.0以前版本官方推荐并且经过认证的是shield插件,该项目为收费项目,可以试用30天。网络中也有免费的插件,可以使用elasticsearch-http-basic,searchguard插件。5.0+版本对原本的watch,alert做了一个封装,形成了x-pack

安全访问配置


  • x-pack是elasticsearch的一个扩展包,将安全,警告,监视,图形和报告功能捆绑在一个易于安装的软件包中,虽然x-pack被设计为一个无缝的工作,但是可轻松的启用或者关闭一些功能
  • 修改elasticsearch.yml 配置文件,设置: xpack.security.enabled: true
  • 修改kibana.yml配置文件,设置: xpack.security.enabled: true
  • 同时设置kibana访问ES集群的用户名和密码(x-pack安装之后有一个超级用户elastic ,其默认的密码是changeme,拥有对所有索引和数据的控制权,可以使用该用户创建和修改其他用户),如下:
  • 重启ES、kibana服务,访问ES时会让你输入密码,如下图:
  • 同样,在登陆kibana时,也会提示用户和密码信息,如下图:
  • 可以通过kibana的web界面进行用户和用户组的管理,如下创建新用户等

license更新


  • 安装完成后,默认情况下,x-pack插件license有效期为一个月,通过如下命令: curl -XGET -u elastic:changeme 'http://10.0.0.5:12000/_xpack/license'
  • 注册用户获取基础license,有效期1年, 注册地址:https://register.elastic.co/xpack_register
  • 申请得到的json文件后,更新license命令:curl -XPUT -u elastic:password 'http://<host>:<port>/_xpack/license' -d @license.json
  • @license.json 申请得到的json文件,复制文件中的所有内容,粘贴在此
  • 如果提示需要acknowledge,则设置为true,如下:curl -XPUT -u elastic:password 'http://<host>:<port>/_xpack/license?acknowledge=true' -d @license.json
  • 参考文档:https://www.elastic.co/guide/en/x-pack/current/installing-license.html
  • 其它license 参见:https://www.elastic.co/subscriptions#request-info

ES(4): ES Cluster Security Settings的更多相关文章

  1. WCF : 修复 Security settings for this service require Windows Authentication but it is not enabled for the IIS application that hosts this service 问题

    摘要 : 最近遇到了一个奇怪的 WCF 安全配置问题, WCF Service 上面配置了Windows Authentication. IIS上也启用了 Windows Authentication ...

  2. MySQL安装最后一步apply security settings错误

    网上查了很久都是说删除各种文件什么的,直接百度apply security settings,说是mysql没卸载干净.不是的. 看日志发现 You must SET PASSWORD before ...

  3. MySQL安装问题:Unable to update security settings解决方案

    主要问题还是之前装过,卸载的时候卸载不干净导致的. 如下: 安装到最后出现: Unable to update security settings. Access denied for user 'r ...

  4. the security settings could not be applied to the database(mysql安装error)【简记】

    在安装mysql时,出现“The security settings could not be applied to the database because the connection has f ...

  5. Data Structures & js &ES 6 & ES next

    Data Structures & js &ES 6 & ES next Algorithm Singly-Linked List & Doubly-Linked Li ...

  6. How to resolve "your security settings have blocked an untrusted application from running" in Mac

    If you encounter the error "your security settings have blocked an untrusted application from r ...

  7. Mysql安装过程中出现apply security settings错误的解决方法

    在学习Mysql的过程中,首先要安装Mysql.然而在第一遍安装过程中难免会出现安装错误的时候,当卸载后第二次安装(或者第三次甚至更多次)的时候,往往在安装最后一步会出现apply security ...

  8. MySQL安装时出现Apply Security Settings错误的解决办法

    windows版mysql安装执行程序下载地址: https://dev.mysql.com/downloads/file/?id=473605 点击下面的No thanks, just start ...

  9. mysql有关问题之:the security settings could not be applied to

    mysql问题之:the security settings could not be applied to 转自:http://www.myexception.cn/mysql/503556.htm ...

随机推荐

  1. Awk 从入门到放弃(1)–学习笔记

    参考:朱双印博客 1. 将test文件中的内容打印出来:vmuser@vmuser-virtual-machine:~/panzidong/awk$ echo ddd > testvmuser@ ...

  2. jdk1.6中bin目录下的工具及其作用

    jdk的javaw.javac等的介绍java:在msdos终端窗口中执行.class文件,即解释执行.class文件.通常所说的jvm解释权.javaw:在java自己的窗口中执行.class文件而 ...

  3. (C/C++学习笔记) 十四. 动态分配

    十四. 动态分配 ● C语言实现动态数组 C语言实现动态数组,克服静态数组大小固定的缺陷 C语言中,数组长度必须在创建数组时指定,并且只能是一个常数,不能是变量.一旦定义了一个数组,系统将为它分配一个 ...

  4. 2.4 C++成员选择符

    参考:http://www.weixueyuan.net/view/6336.html 总结: 访问可以通过成员选择符“.”或指针操作符“->”来完成. 通过上一节的学习我们看到:通过对象可以访 ...

  5. mac_os_x更新yosemite以后github客户端更新提示ca认证错误解决办法

    最近手贱更新了mac os yosemite的系统版本,更新以后发现部分软件无法使用,例如php 扩展的redis模块,mou,eclipse等等,甚是郁闷啊.对于图形化的软件还好说去官网更新一下新版 ...

  6. DevExpress WPF入门指南:DXWindow应用

    [DevExpress v17.2 版本更新公开课]点击免费报名 DevExpress WPF Window control有一点非常棒,就是可以和其他视觉主题保持统一性.DXWindow class ...

  7. OC基础:数组.字典.集 分类: ios学习 OC 2015-06-18 18:58 47人阅读 评论(0) 收藏

    ==============NSArray(不可变数组)=========== NSArray,继承自NSObject  用来管理(储存)一些有序的对象,不可变数组. 创建一个空数组 NSArray ...

  8. 7.3 5种IO模型与IO复用

    5种IO模型分别如下: 1.阻塞IO模型 当上层应用app1调用recv系统调用时,如果对等方没有发送数据(缓冲区没有数据),上层app1将阻塞(默认行为,被linux内核阻塞). 当对等方发送了数据 ...

  9. python 兼容中文路径 + 目标文件是否是图像格式判断

    1. 中文路径兼容python程序如果路径中包含中文字符,不加处理会有类似报错:'ascii' codec can't decode byte 0xxx in position xx:ordinal ...

  10. Linux下常用的ftp操作命令

    Linux下常用的ftp操作命令 =========== 完美的分割线 ============= 1.登陆ftp服务器 ftp [IP] [PORT] # 登陆ftp服务器,本机登陆可以不写IP 实 ...