• owasp对项目依赖的jar包安全扫描


    一、什么是owasp

    OWASP,全称是:Open Web Application Security Project,翻译为中文就是:开放式Web应用程序安全项目,是一个非营利组织,不附属于任何企业或财团,这也是该组织可以不受商业控制地进行安全开发及安全普及的重要原因,详细的介绍可以参见下方Wikipedia中的内容。

    OWASP Dependency-Check,它识别项目依赖关系,并检查是否存在任何已知的、公开的、漏洞,基于OWASP Top 10 2013。

    二、maven集成插件扫描

    maven工程的pom.xml按照如下配置:

            <dependency>
                <groupId>org.owasp</groupId>
                <artifactId>dependency-check-maven</artifactId>
                <version>3.1.1</version>
            </dependency>
                <plugin>
                    <groupId>org.owasp</groupId>
                    <artifactId>dependency-check-maven</artifactId>
                    <version>3.1.1</version>
                    <executions>
                    <execution>
                        <goals>
                            <goal>check</goal>
                        </goals>
                    </execution>
                    </executions>
                </plugin>

    执行:

    mvn clean compile
    mvn dependency-check:check

    扫描完成后,报告文件存放在target目录下,dependency-check-report.html。

    image

    三、jenkins使用owasp插件扫描工程

    插件工程地址:https://wiki.jenkins.io/display/JENKINS/OWASP+Dependency-Check+Plugin

    作用:这个插件可以分析依赖关系并生成依赖检查的趋势报告,这是一个开源实用工具,可以检测项目依赖项中已知的漏洞。

    依赖: 
    该插件需要使用程序插件“Analysis -core”(在更新管理器中称为“静态分析实用程序”)。请确保也安装了这个插件的最新版本。

    注:扫描过程中,扫描路径如果存在多个工程,包含重复的jar包。扫描结果报表中只会出现jar包问题说明一次(不重复显示)

    扫描生成的报告为dependency-check-report.xml

    四、jenkins pipeline调用插件扫描

    dependencyCheckAnalyzer datadir: '', hintsFile: '', includeCsvReports: false, includeHtmlReports: false, includeJsonReports: false, includeVulnReports: false, isAutoupdateDisabled: false, outdir: '', scanpath: '.', skipOnScmChange: false, skipOnUpstreamChange: false, suppressionFile: '', zipExtensions: ''

    五、配合sonarqube生成插件扫描

    插件下载地址:dependency-check

    下载使用以下命令生成jar包

    > $ mvn clean package

    将插件放入sonarqube的插件目录$SONAR_INSTALL_DIR/extensions/plugins,并且重启sonarqube

    在需要扫描的工程中,配置owasp的报告文件路径。sonar扫描完成后,读取报告展示在web端。(注:sonar插件不会进行依赖扫描,需要通过其他方式扫描完成后,读取配置文件)

    sonar.dependencyCheck.reportPath=${WORKSPACE}/dependency-check-report.xml

    sonar对于owasp的报告展示不够友好,所有的依赖规则均显示为:Using Components with Known Vulnerabilities 
    image

  • 相关阅读:
    P4910 帕秋莉的手环
    P3216 [HNOI2011]数学作业
    洛谷 P2894 [USACO08FEB]酒店
    [网络流24题]魔术球问题
    [网络流24题]飞行员配对方案问题
    [网络流24题]最小路径覆盖问题
    洛谷 P1503鬼子进村
    BZOJ 3631: [JLOI2014]松鼠的新家
    洛谷 P2922 [USACO08DEC]秘密消息Secret Message
    洛谷 P1379 八数码难题
  • 原文地址:https://www.cnblogs.com/slqt/p/10881319.html
Copyright © 2020-2023  润新知