丢失的罐子会影响Fortify扫描结果吗?

问题描述 投票:1回答:2

[我正在尝试使用Fortify静态代码分析来扫描纯.java文件,并经常收到一条错误消息,提示我未包含jar的完整列表。

“无法解析以下对Java类的引用。请确保将包含这些类的所有必需jar文件提供给SCA。”

我的问题是,这会影响扫描结果吗?并认真对待这个警告吗? (因为我的扫描仍在进行;)

java fortify source-code-protection
2个回答
1
投票

从第一原理出发,而不是从产品或应用程序的知识上进行思考:

大概Fortify将扫描它可以看到的代码,因此它将返回一些有用的结果。但是,因为它看不到所有代码,所以无法完成全部工作。

我不知道Fortify能有多聪明,它对诸如抽象工厂之类的东西有什么作用?这种设计模式可以有效地在运行时确定实际使用的类,因此您可以根据可用的jar来获得截然不同的应用程序行为。

底线:既然您的应用程序可以在某个地方运行,为什么不能将所有JAR文件放在一起,从而使Fortify有机会完成更完整的工作?


1
投票

您可以获得部分扫描和结果,但是某些问题可能会完全被忽略和/或具有较低的风险。如果您的代码调用JAR文件中的函数,则SCA无法跟踪数据流入和流出函数的过程。因此,这些数据路径陷入了黑洞,没有结果返回。

总是最好没有警告和可编译进行扫描的代码。

© www.soinside.com 2019 - 2024. All rights reserved.