如何找到Log4j的深层用法 [英] How to find deeply layered usages of Log4j
本文介绍了如何找到Log4j的深层用法的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我要查找当前版本(2.15.0)之前的log4j的所有用法。
我尝试使用maven";mvn依赖项:tree";,使用了几个工具(依赖项检查、grype(对我不起作用)、syft(对我不起作用)、log4j-检测器),但它们只列出在pom.xml中指定后生成的类。
但是-这是我关心的问题:
例如,有一个我正在使用的库叫做Hibernate-validator(Hibernate Validator Engine)。我确信这个引擎使用JBoss日志记录,而JBoss日志记录又使用log4j2.11.2,但是我上面的工具都没有警告我这一点。如何找出哪些库使用log4j?
或者外部库不是此利用漏洞的威胁?
请告知。
推荐答案
休眠验证器引导至此处。您的依赖关系树中没有它,因为Hibernate Validator和JBoss日志记录根本不使用它。
Hibernate Validator对Log4j 2有测试依赖项,但它只是一个测试依赖项。因此,您在依赖关系树中看不到它,这是正确的。
我正在发布具有更新的测试依赖项的新HV版本,但这对您的应用程序来说不是问题,它们不会通过Hibernate Validator依赖于Log4j 2。
请参阅https://github.com/hibernate/hibernate-validator/blob/main/engine/pom.xml#L119。
更新:为了避免安全扫描程序的误报,我发布了Hibernate Validator 7.0.2 Final和6.2.1 Final。
这篇关于如何找到Log4j的深层用法的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文