我有几个使用 OWASP 的 Dependency Check maven 插件的项目。这对每个人来说都是完美的。但我想将所有项目结果合并到一个仪表板中,因为我有很多项目......
我认为“仪表板视图”( https://plugins.jenkins.io/dashboard-view )是可能的,但我不知道如何使用它。
有什么线索吗?
此致
在 Maven 项目中,我运行 OWASP dependency-check-maven 插件以及 OWASP 命令行工具,以便生成包含存在漏洞的依赖项的报告。
我无法理解的是这两个工具是如何运作的。具体来说,我注意到 Maven 插件 (dependency-check-maven) 报告了 45 个易受攻击的依赖项,而命令行工具报告了 34 个。
例如,Maven 插件将undertow-core-1.2.9.Final.jar(由依赖项提供的undertow-servlet)报告为存在严重漏洞,而通过命令行检查,该依赖项根本不会出现在列表中。我正在使用以下命令运行命令行工具:
dependency-check --project "myProject" --scan "C:\path\myProject" --disableRetireJS
Run Code Online (Sandbox Code Playgroud)
难道命令行工具会扫描项目目录中现有的 jar 文件,而 Maven 插件会遍历 中定义的依赖项吗pom.xml?
java owasp maven maven-dependency-plugin owasp-dependency-check
我正在使用带有retirejs的owasp依赖工具,并且我试图弄清楚如何在我的构建中排除整个文件夹。现在我就这样了
dependencyCheck{
outputDirectory = "${projectDir}/reports"
suppressionFile = "${projectDir}/gradle/owasp_config/suppress.xml"
analyzers {
experimentalEnabled = true
assemblyEnabled = false
retirejs {
filterNonVulnerable = true
}
}
scanSet = ['build/deploy/scripts']
}
Run Code Online (Sandbox Code Playgroud)
但在 scanSet 中有一个包含 yui 的文件夹,我想在扫描过程中完全忽略它。我可以在抑制文件中抑制单个 cve,但它们有 300 多个,因此全局排除将是一个更好的解决方案。
我正在尝试将依赖项检查添加到我的 JenkinsFile 中,但没有成功。
插件安装和配置完成。
全局工具配置
名称:Vulnerability5
自动安装(选中)
版本:dependency-check 5.2.4
pipeline {
agent any
tools {
nodejs "node8"
dependency-check "vulnerability5"
}
stages {
stage('Install Deps') {
steps {
//Install dependecies
sh 'yarn install'
}
}
stage('Dependency Check') {
steps {
// Run OWASP Dependency Check
dependencyCheck additionalArguments: '-f "HTML, XML,CSV" -s .'
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
在工具中添加依赖项检查会破坏管道文件。知道我缺少什么吗?
dependencies owasp jenkins jenkins-pipeline owasp-dependency-check