Apache Log4j2 远程代码执行 (RCE) 漏洞 ES-6.3.2 修复记录

官方给出的修复建议:

Elasticsearch 5.0.0-5.6.10 and 6.0.0-6.3.2: Log4j CVE-2021-44228, CVE-2021-45046 remediation - Security Announcements - Discuss the Elastic Stack

1、先安装zip 工具 

yum -y install  zip 

2、进入es安装目录。

 cd /usr/share/elasticsearch

3、搜索log4j的jar包。

ls -l lib/log4j-core-*.jar

4、先备份 log4j JAR 文件

zip ./backup-log4j.zip lib/log4j-core-*.jar

5、从 log4j JAR 文件中删除易受攻击的类:

zip -d lib/log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class

6、再执行一遍步骤5中的命令

如果输出为zip error: Nothing to do!,则表示该类已被删除

7、查找是否成功删除JndiLookup.class(没有jar命令)

unzip -v /usr/share/elasticsearch/lib/log4j-core-2.9.1.jar | grep ‘JndiLookup'

8、关闭分片再平衡(重新分布分片会消耗大量I/0资源)

一定要先关闭自动平衡(重要)

curl -H 'Content-Type:application/json'  -XPUT 127.0.0.1:9200/_cluster/settings -d '

{

    "transient" : {

        "cluster.routing.allocation.enable" : "none"

    }

}'

9、重启完成后查看节点是否重新加入集群,加入后开启分片再平衡

curl -H 'Content-Type:application/json'  -XPUT 127.0.0.1:9200/_cluster/settings -d '

{

    "transient" : {

        "cluster.routing.allocation.enable" : "all"

    }

}'

10、检查集群健康状态,变成green之后开始进行下一个节点的操做(滚动重启)

curl 127.0.0.1:9200/_cat/health?v 

会用到的命令

curl 127.0.0.1:9200/_cat/recovery?v 查看重新分片的情况

curl 127.0.0.1:9200/_cat/health?v 健康状态

curl 127.0.0.1:9200/_cat/nodes?v 查看节点

curl 127.0.0.1:9200/_nodes/stats?pretty  查看节点状态

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值