当前位置: 代码网 > 服务器>服务器>Linux > Apache Log4j 2.17.0已发布!看看解决了什么问题?

Apache Log4j 2.17.0已发布!看看解决了什么问题?

2025年03月30日 Linux 我要评论
apache log4j 2.17.0 版本已正式发布,解决了被发现的第三个安全漏洞 cve-2021-45105。apache log4j2 版本 2.0-alpha1 到 2.16.0 没有防止

apache log4j 2.17.0 版本已正式发布,解决了被发现的第三个安全漏洞 cve-2021-45105。

apache log4j2 版本 2.0-alpha1 到 2.16.0 没有防止 self-referential 查找的不受控制的递归。当日志配置使用非默认的 pattern layout 与 context lookup(例如,$${ctx:loginid})时,控制线程上下文映射 (mdc) 输入数据的攻击者可以制作包含递归查找的恶意输入数据,导致 stackoverflowerror,从而终止进程。这也称为 dos 攻击。【推荐:apache使用教程】

从 2.17.0 版本开始(针对 java 8),只有配置中的查找字符串才会被递归扩展;在任何其他用法中,仅解析顶层查找,不解析任何嵌套查找。

在以前的版本中,可以通过确保你的日志记录配置执行以下操作来缓解此问题:

  • 在日志记录配置的 patternlayout 中,用 thread context map 模式(%x、%mdc 或 %mdc)替换 ${ctx:loginid} 或 $${ctx:loginid} 等 context lookups。

  • 否则,在配置中删除对 ${ctx:loginid} 或 ${ctx:loginid} 等 context lookups 的引用;它们源自应用程序外部的源,如 http headers 或 user input.。

2.17.0 版本的具体更新内容包括有:

  • 修复字符串替换递归。修复 log4j2-3230

  • 将 jndi 仅限于 java 协议。默认情况下,jndi 将保持禁用状态。将 jndi 启用属性从“log4j2.enablejndi”重命名为“log4j2.enablejndilookup”、“log4j2.enablejndijms”和“log4j2.enablejndicontextselector”。修复 log4j2-3242

  • jndi 仅限于 java 协议。默认情况下,jndi 将保持禁用状态。启用属性已重命名为“log4j2.enablejndijava”。修复 log4j2-3242

  • 不要将 log4j-api-java9 和 log4j-core-java9 声明为依赖项,因为这会导致 maven enforcer 插件出现问题。修复 log4j2-3241

  • 解析属性文件过滤器时的 propertiesconfiguration.parseappenderfilters npe。修复 log4j2-3247

  • syslog appender 的 log4j 1.2 bridge 默认为端口 512 而不是 514。修复 log4j2-3249

  • log4j 1.2 bridge api 将 syslog 协议硬编码为 tcp。修复 log4j2-3237

以上就是apache log4j 2.17.0已发布!看看解决了什么问题?的详细内容,更多请关注代码网其它相关文章!

(0)

相关文章:

  • apache tomcat怎么启动

    apache tomcat怎么启动

    如何启动 apache tomcat?先决条件:安装 java jdk 并下载、解压缩 tomcat。启动 tomcat:在 tomcat 目录中运行 star... [阅读全文]
  • linux下修改apache服务器的默认路径

    导语:apache(音译为阿帕奇)是世界使用排名第一的web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的web服务器端软件之一…

    2025年03月30日 服务器
  • apache是什么语言写的

    apache是什么语言写的

    apache http 服务器是用 c 语言编写的,因为它提供了高效、跨平台支持、可扩展性、模块化以及安全性。apache是什么语言写的?apache http... [阅读全文]
  • apache启动后无法访问网页怎么办

    前言:apache启动后访问不了。排查发现端口没有被占用,考虑防火墙问题。(学习视频分享:编程入门)解决方法:首先我们需要确保远程的linux系统已经安装好,我们使用xshell远…

    2025年03月30日 服务器
  • apache是干什么用的

    apache是干什么用的

    apache是一款开放源码的网络服务器软件,主要用途包括托管网站、提供web服务和应用程序。apache的优势包括跨平台支持、可扩展性、稳定性、安全性以及免费开... [阅读全文]
  • apache 2.2升级到2.4的详细步骤

    apache 2.2升级到2.4的详细步骤

    详细步骤如下:(学习视频分享:编程入门)1、官网下载apache2.42、将下载的apache解压到要搭配的环境目录 3、命令行下进入到apache下面的bin... [阅读全文]

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com