10分钟内破解elasticsearch x-pack插件

@(数据库)[elasticsearch, x-pack]

1.为什么要破解x-pack?
因为涉及到了ES服务的安全性鬼知道我经历了什么.ES服务被劫持,数据直接被删除。ES登录账号和密码的设置是通过x-pack来实现的,官方只给了免费的30天的使用权.本来想买个白金会员,结果等官方回复等了半天。需求不等人啊。
2.本教程前提
默认你已经安装好了elasticsearchkibana
3.适用范围
所有ES版本都适用,破解原理都一样

文章目录

      • 1.重写x-pack下的2个类:LicenseVerifier.java和XPackBuild.java
        • 覆盖流程
      • 2.去官网申请license证书
      • 3.修改申请到的证书
      • 4.上传证书完成修改
      • 5.开启ES的登录功能
        • 1.重置登陆权限密码,默认为changeme
        • 2.修改elasticsearch.yml配置
        • 3.修改kibana配置
        • 4.x-pack设置完毕后,head无法登陆的问题

1.重写x-pack下的2个类:LicenseVerifier.java和XPackBuild.java

直接拿走重写完的类链接: https://pan.baidu.com/s/1ESqoZW8eieO7Zdgs31hxsQ 密码: uqnd

覆盖流程

1.找到目标jar包 elasticsearch-6.3.1\modules\x-pack\x-pack-core\x-pack-core-6.3.1.jar
2.用LicenseVerifier.class 覆盖x-pack-core-6.3.1.jar\org\elasticsearch\license目录下的同名文件
3.同理用 XPackBuild.class 覆盖 x-pack-core-6.3.1.jar\org\elasticsearch\xpack\core 目录下的同名文件
4.有兴趣的可以点开了解下具体修改了什么内容

2.去官网申请license证书

https://license.elastic.co/registration 官网地址

1.邮箱认真写,用来接收json文件的
2.country写china,其它都可以随便写
3.点击申请后邮箱马上会收到一个邮件

3.修改申请到的证书

主要修改这几个地方
1.“type”:“basic” 替换为 “type”:"platinum" # 基础版变更为铂金版
2.“expiry_date_in_millis”:1561420799999 替换为 “expiry_date_in_millis”:3107746200000# 1年变为50年

  • 好好保存,修改后的文件可以重复使用到其它ES服务器

4.上传证书完成修改

  1. 上传前准备,打开elasticsearch.yml 配置文件 加入 xpack.security.enabled: false
  2. 打开elasticsearch服务kibana服务
  3. 进入kibana后台 localhost:5601,进入到如下图所示的页面:

10分钟内破解elasticsearch x-pack插件_第1张图片

4.上传证书,就是那个json文件 upload license
5.上传成功.到此破解x-pack已经成功了.如图所示续命到了2068年,可以随意使用ES X-pack的一些付费功能 机器学习 安全登录
10分钟内破解elasticsearch x-pack插件_第2张图片

5.开启ES的登录功能

1.重置登陆权限密码,默认为changeme

bin/elasticsearch-setup-passwords interactive
  • 按步骤分别重置elastic/kibana等账号的密码
  • elastic就是登陆elasticsearch服务的最高权限账号

2.修改elasticsearch.yml配置

# 添加如下2行,打开安全配置功能
xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true

3.修改kibana配置

# 在kibana.yml下添加如下两行
elasticsearch.username: elastic
elasticsearch.password: {你修改的password}
  • 此处修改完后,重启ES和kibana服务就需要登陆账号和密码了

4.x-pack设置完毕后,head无法登陆的问题

 # 在elasticsearch.yml中添加如下三行配置
 http.cors.enabled: true
 http.cors.allow-origin: "*"
 http.cors.allow-headers: Authorization,X-Requested-With,Content-Length,Content-Type
  • 重启服务,并通过如下形式访问head端口
    http://192.168.36.61:9100/?auth_user=elastic&auth_password=passwd

如有其它问题,也可以咨询本人 微信:w63594021

你可能感兴趣的:(数据库)