修复ElasticSearch中含有的log4j2的安全问题

1、编辑 ElasticSearch服务的 jvm.options 文件,添加JVM参数配置:

-Dlog4j2.formatMsgNoLookups=true

通过执行 curl -XGET http://192.168.10.74:9200/_nodes/jvm?pretty | grep log4j2 命令检查 ElasticSearch 服务的jvm配置内容。

2、如果使用的log4j-core-<version>版本是在2.10之前的,是无法设置log4j2.formatMsgNoLookups=true jvm参数解决安全问题,需要删除log4j.jar文件中的 JndiLookup.class 屏蔽安全问题。

示例:通过解压log4j-core-2.9.1.jar 删除JndiLookup.class屏蔽安全问题。 

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

通过jar tvf lib/log4j-core-*.jar | grep -i JndiLookup如果找到文件,说明删除成功,然后将jar包应用到ElasticSearch服务中,重启ElasticSearch服务。

具体可参考文章链接:https://xeraa.net/blog/2021_mitigate-log4j2-log4shell-elasticsearch/

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin
avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: