Checkmarx SAST扫描pom.xml中具有外部不可访问依赖项的代码



概述:要扫描的代码是.java文件(JavaEE(,依赖项作为单独的JAR 提供

目标:如何为checkmarx提供所有必需的Java依赖项,以构建尽可能完善并完成扫描的项目?我对检测依赖关系本身的问题不感兴趣,也不希望这些问题包含在checkmarx报告中。

原因:没有依赖项的扫描没有返回任何结果,这对于代码库的大小和复杂性来说有点不寻常。我在本地拥有所有的依赖项,可以在我的IDE中构建项目(想法(。当我压缩文件夹并通过web界面上传进行新的扫描时,我看不出有什么方法可以告诉Chekmarx依赖性(CLI和maven插件只有在扫描中包括或排除文件和目录的选项(。我没有使用maven checkmarx插件,因为它需要从checkmarx扫描机无法访问的资源(包括依赖项(。

我目前正在探索的方法是将依赖项分解到项目源文件夹中,以便可以解析导入,Checkmarx可以构建项目。然而,一些依赖JAR包括java源文件,另一些仅包括类文件,而且看起来Checkmarx-CxSAST不支持扫描类文件(也不支持JAR(。如果我可以让代码扫描,我可以通过在web界面中标记依赖项并将其从报告中排除来过滤掉在依赖项中发现的任何问题。

如果依赖项不是您维护的代码,则不需要用于静态分析的依赖项。如果您没有看到结果,那么很可能在您的代码中没有识别出源或汇。

下载扫描日志,并在接近尾声时查找类似于Find_Interactive_InputsFind_Interactive_Outputs的查询的结果数。如果一个或两个的计数都为零,则您正在扫描的代码没有可识别的源/汇。这对于类库jar或使用SAST无法识别的框架来说并不罕见。如果确实存在查找源/汇的模式,通常可以通过CxQL对查询进行调优,以识别源/汇。

最新更新