Apache Log4j 2.17.0 发布,解决第三个 DoS 漏洞

标签: apache log4j dos | 发表时间:2021-12-18 04:43 | 作者:
出处:https://www.oschina.net/news/project

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 攻击。

从 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

下载地址: https://logging.apache.org/log4j/2.x/download.html

相关 [apache log4j dos] 推荐:

Apache Log4j 2.17.0 发布,解决第三个 DoS 漏洞

- - 开源中国-软件更新资讯
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,从而终止进程.

Apache Log4j 2.0介绍

- - CSDN博客推荐文章
Apache Log4j 2.0介绍. 作者:chszs,转载需注明. 作者博客主页:http://blog.csdn.net/chszs. Apache Log4j是著名的Java日志框架之一,在早些年应用最广. 但近两年来,随着SLF4J和LogBack的兴起,很多流行的开源框架在日志模块方面逐步转移到SLF4J+LogBack上,Log4j日渐衰落.

Apache Range Header DOS 攻擊讓主機資源輕易消秏待盡

- MorrisC - SSORC.tw
這個攻擊是八月底的消息,它是一個apache的弱點,對 header 作攻擊,好像是它本就是一個正常的規則,. 只是如果分好幾個片斷去 request 的話,就會讓apache 資源慢慢的被耗光,最後 crashed. 似乎真的就比沒有range時多了幾個request. 所以這樣子就可以單台主機弄掛一個apache server ??!!.

DOS的历史

- andi - 阮一峰的网络日志
昨日(7月27日),微软公司的DOS操作系统迎来了30岁生日. DOS是历史上一个划时代的产品,标识着PC(个人电脑)的崛起和普及,对计算机行业影响深远. 只有了解DOS的历史,才能理解今天的计算机工业从何而来. 1974年4月,Intel推出8位芯片8080. 这块芯片的体积和性能,已经能够满足开发微型电脑的需要,标志微机时代即将来临.

log4j的MDC

- - 行业应用 - ITeye博客
原文地址: http://blog.csdn.net/huxin1/article/details/5736227. NDC(Nested Diagnostic Context)和MDC(Mapped Diagnostic Context)是log4j种非常有用的两个类,它们用于存储应用程序的上下文信息(context infomation),从而便于在log中使用这些上下文信息.

Hash Collision DoS 问题

- mazhechao - 酷壳 - CoolShell.cn
最近,除了国内明文密码的安全事件,还有一个事是比较大的,那就是 Hash Collision DoS (Hash碰撞的拒绝式服务攻击),有恶意的人会通过这个安全弱点会让你的服务器运行巨慢无比. 这个安全弱点利用了各语言的Hash算法的“非随机性”可以制造出N多的value不一样,但是key一样数据,然后让你的Hash表成为一张单向链表,而导致你的整个网站或是程序的运行性能以级数下降(可以很轻松的让你的CPU升到100%).

DOS命令管理

- - CSDN博客推荐文章
DOS远程桌面连接命令 mstsc /v: 192.168.1.250 /console. cmd          运行        command. 删除文件        rd        文件名/S. 创建文件        MD        文件名 . 1.        net user admin godmour /add 新建一个用户名为 admin 密码为 godmour 默认为user组成员.

log4j实用配置

- - CSDN博客架构设计推荐文章
第一步:加入log4j-1.2.8.jar到lib下. 第二步:在CLASSPATH下建立log4j.properties. 此句为将等级为INFO的日志信息输出到stdout和R这两个目的地,stdout和R的定义在下面的代码,可以任意起名. 等级可分为OFF、 FATAL、ERROR、WARN、INFO、DEBUG、ALL,如果配置OFF则不打出任何信息,如果配置为INFO这样只显示INFO, WARN, ERROR的log信息,而DEBUG信息不会被显示,具体讲解可参照第三部分定义配置文件中的logger.

HTTP DoS 攻击工具 Slowhttptest

- Le - 开源中国社区最新软件
Slowhttptest是一个依赖于实际HTTP协议的Slow HTTP DoS 攻击工具,它的设计原理是要求服务器所有请求被完全接收后再进行处理.

Log4j详细配置(转)

- - Web前端 - ITeye博客
原文地址:Log4j.properties配置详解作者:大海巨浪. Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局). 这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出. 综合使用这三个组件可以轻松地记录信息的类型和级别,并可以在运行时控制日志输出的样式和位置.