Log4j2再次爆炸。Log4j2是无穷无尽的。堆栈管理器认为《玩大了!Log4j 2.x 再爆雷。。。》Log4j2.16.0是最终版本。没想到过了半天又爆了:前两天stackmanager还说Log4j2.16.0是最安全的版本。没想到这么快就面对了。Log4j2.17.0诞生了。..又来了。.Log4j2中了新冠毒?这次又爆发了新的DOS拒绝服务攻击漏洞。.如果你想关注和学习最新最主流的Java技术,可以持续关注公众号Java技术栈,公众号会第一时间推送。安全漏洞:CVE-2021-45105漏洞总结Log4j团队获悉另一个重要的安全漏洞CVE-2021-45105:CVE-2021-45105拒绝服务攻击漏洞安全级别高影响版本Log4j22.0-alpha1至2.16.0此漏洞已在支持Java8+版本的Log4j2.17.0中解决,请尽快升级。漏洞详情由于没有针对自引用查找的不受控制递归的保护,当日志配置使用具有上下文查找的非默认模式时,例如:$${ctx:loginId}这时候,攻击者可以制作一个恶意输入数据,导致StackOverflowError错误并终止进程,属于DOS(DenialofService)拒绝服务攻击。从Log4j版本2.17.0开始,只允许配置中的查找字符串递归扩展,否则,在任何其他用法中,仅解析最顶层查找,而不解析任何嵌套查找。解决方案1、立即升级版本到最新版本:Log4j2.17.0官方最新版本下载:https://logging.apache.org/lo...最新Maven依赖:org.apache.logging.log4jlog4j-core2.17.0spring-boot-starter-log4j2还没有更新,可以先覆盖其内置-inversion:2.17.0SpringBoot的基础就不介绍了。推荐这个实用教程:https://github.com/javastacks...另外,SpringBoot也在跟进这个漏洞,新版的jieshi可以一起解决。等新版本发布的时候,stackmanager会为大家讲解。公众号Java技术栈第一时间推送,别走丢。2、临时解决方案如果不想升级版本,可以考虑以下两种临时解决方案:1)在PatternLayout日志配置中,将${ctx:loginId}或者contextLookups中的$${ctx:loginId}替换掉使用线程上下文映射模式(%X、%mdc或%MDC)。2)或者,在上下文查找中删除对${ctx:loginId}或$${ctx:loginId}的引用,这些引用通常来自应用程序外部,例如HTTP标头或用户输入。总结Log4j2最近被坑了??我一直在解决漏洞,不断发布版本。从最初的Log4j2.15.0到最新的2.17.0,已经发布了大大小小的10个版本,影响周期接近两周。我还没有看到它。收尾的迹象。.这次应该是爆出的第4个漏洞:CVE-2021-45105(拒绝服务攻击漏洞,最新!)CVE-2021-45046(远程代码执行漏洞)CVE-2021-44228(远程代码执行漏洞)信息泄露漏洞(由安全公司Praetorian发现)和后三个漏洞已在Log4j2.16.0中解决,请升级到2.17.0最新!!!不知道这是否是最后一个版本。总之,这个版本一定要升级,或者检查配置,临时解决。后续进展栈长会第一时间跟进。关注公众号Java技术栈,公众号第一时间推送。这不能归咎于Log4j2。详情可以阅读:Log4j2维护者心声:不发工资,还要挨骂!!(我真的醉了!)因此,如果你使用开源,你必须接受开源可能带来的影响,不能责怪开源的人。他们都是成年人。是否使用它是您的选择。哪个产品没有漏洞?甚至商业产品。版权声明:本文为公众号《Java技术栈》原创。原创并不容易。转载或引用本文内容请注明出处。所有抄袭者将举报+投诉,并保留追究其法律责任的权利。近期热点文章推荐:1.1000+Java面试题及答案(2021最新版)2.厉害了!Java协程来了。..3.玩大!Log4j2.x再次爆发。..4、SpringBoot2.6正式发布,一大波新特性。.5.《Java开发手册(嵩山版)》最新发布,赶快下载吧!感觉不错,别忘了点赞+转发!