目录:

  • 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. mysql监控利器mysqlmtop部署安装

    MySQLMTOP是一个由Python+PHP开发的MySQL企业级监控系统.系统由Python实现多进程数据采集和告警,PHP实现WEB展示和管理.最重要是MySQL服务器无需安装任何Agent,只 ...

  2. TMemo的ScrollBars属性和大文本

    给TMemo.Text := '几M大的文本'; 如果 ScrollBars 不是 sbBoth的话,程序很可能 无响应. 今天郁闷了半天才发现的.

  3. git在idea中的使用,如何构远程git方仓库

    git 下载:http://learning.happymmall.com/git/   配置用户名:$ git config --glob user.name "forever" ...

  4. Quartz表结构说明

    一.表信息解析: 1.1. qrtz_blob_triggers : 以Blob 类型存储的触发器. 1.2. qrtz_calendars:存放日历信息, quartz可配置一个日历来指定一个时间范 ...

  5. SharePoint的安装和配置-PowerShell

    1. 引入SPModule组件 Import-Module SPModule.misc Import-Module SPModule.setup 需要将执行策略修改为不限制 2. 无人值守安装Shar ...

  6. Iview同步异步验证

    直接上代码了: html: <Form ref="termForm" :model="currentData" :rules="ruleTerm ...

  7. iview Model对话框点击确定后iview会自动关闭窗口

    问题描述:在某个页面需打开一个Model,然后这个Model里有一个Form表单,点击确定时我需要先校验表单数据是否输入正确,不确定则不希望关闭窗口:(问题是:只要点击确认 loading :fals ...

  8. 【转】重装win7后,所有USB接口无法使用(鼠标、键盘、U盘)

    转自:https://blog.csdn.net/u010887744/article/details/45270245 今天给一朋友重装系统,华硕FX50J,修改BIOS重装了win7,结果所有US ...

  9. 2.1 Linux中wait、system 分析

    wait与waitpid: 当子进程退出的时候,内核会向父进程发送SIGCHID信号,子进程的退出是一个异步事件(子进程可以在父进程运行的任何时刻终止). 子进程退出时,内核将子进程置为僵尸状态,这个 ...

  10. c++ 字符数组-print and 写入文件

    1.print ][] = { }; method1: 为了打印出unsigned char数据所对应的数值,可以将其强制转换成int类型,并做打印输出. std::cout << ][] ...