本文介绍了Com.microsoft.azure:applicationinsights-logging-log4j1_2--取决于易受攻击的log4j:log4j:JAR:1.2.17版本的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

上下文:我们使用2.6.3版本的com.microsoft.azure:applicationinsights-logging-log4j1_2来插装我们的scala代码。不幸的是,这取决于1.2.17版本的log4j:log4j。1.2.17版本的log4j:log4j存在严重的安全漏洞(ref:https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-17571)问题是:Log4j 1.2中包含的SocketServer类容易受到不受信任数据的反序列化攻击,当侦听日志数据的不受信任的网络通信量时,当与反序列化小工具结合使用时,可以利用该类来远程执行任意代码。这会影响1.2至1.2.17的Log4j版本

解决方案是迁移到org.apache.logging.log4j:log4j-core问题:1)应用程序洞察JAR是否使用SocketServer类?2.)这是一个已知的漏洞吗?3.)我们有哪些选项可以获得使用最新版本org.apache.logging.log4j:log4j-com.microsoft.azure:applicationinsights-logging-log4j1_2的新版本核心

如有任何帮助,我们将不胜感激。

SocketServer类是推荐答案服务器,您可以在单独的JVM中运行它,以便从应用程序中的SocketAppender接收消息。Log4j库中的任何其他类都未使用它

另一方面,applicationinsights-logging-log4j1_2是一个非常小的JAR(2个类),它提供一个ApplicationInsightsAppender以允许Log4j 1.2日志发送到Application Insights。

您可以安全地使用此附加器和所有标准附加器(包括SocketAppender),而不会出现CVE-2019-17571中描述的问题。

迁移到Log4j 2.x

显然建议迁移到Log4j 2.x,但原因完全不同:它受支持并且提供了许多新功能。

项目applicationinsights-logging-log4j2包含ApplicationInsightsAppender的一个版本,可与Log4j 2.x一起使用。

这篇关于Com.microsoft.azure:applicationinsights-logging-log4j1_2--取决于易受攻击的log4j:log4j:JAR:1.2.17版本的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-30 15:06