开源工具系列5:DependencyCheck

这篇具有很好参考价值的文章主要介绍了开源工具系列5:DependencyCheck。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Dependency-Check 是 OWASP(Open Web Application Security Project)的一个实用开源程序,用于识别项目依赖项并检查是否存在任何已知的,公开披露的漏洞。

dependency-check-gradle,开源工具,运维,安全

 DependencyCheck 是什么

  • Dependency-Check 是 OWASP(Open Web Application Security Project)的一个实用开源程序,用于识别项目依赖项并检查是否存在任何已知的,公开披露的漏洞。目前,已支持Java、.NET、Ruby、Node.js、Python等语言编写的程序,并为C/C++构建系统(autoconf和cmake)提供了有限的支持。而且该工具还是OWASP Top 10的解决方案的一部分。
  • Dependency-Check 支持面广(支持多种语言)、可集成性强,作为一款开源工具,在多年来的发展中已经支持和许多主流的软件进行集成,比如:命令行、Ant、Maven、Gradle、Jenkins、Sonar等;具备使用方便,落地简单等优势。

DependencyCheck 实现原理

  • 依赖性检查可用于扫描应用程序(及其依赖库),执行检查时会将 Common Platform Enumeration (CPE)国家漏洞数据库及NPM Public Advisories库下载到本地,再通过核心引擎中的一系列分析器检查项目依赖性,收集有关依赖项的信息。
  • 然后根据收集的依赖项信息与本地的CPE&NPM库数据进行对比,如果检查发现扫描的组件存在已知的易受攻击的漏洞则标识,最后生成报告进行展示。

DependencyCheck 集成

与maven集成

  • Dependency-check-maven非常易于使用,可以作为独立插件使用,也可以作为maven site的一部分使用。
  • 该插件需要使用Maven 3.1或更高版本,第一次执行时,可能需要20分钟或更长时间,因为它会从NIST托管的国家漏洞数据库下载漏洞数据到本地备份库。
  • 第一次批量下载后,只要插件每七天至少执行一次,本地漏洞库就会自动更新,更新只需几秒钟。
  • 集成很简单,只需要在项目的pom文件中增加maven配置即可。

用法一

在target目录中创建dependency-check-report.html

<plugin>
        <groupId>org.owasp</groupId>
        <artifactId>dependency-check-maven</artifactId>
        <version>4.0.2</version>
        <configuration>
            <autoUpdate>true</autoUpdate>
        </configuration>
        <executions>
            <execution>
                <goals>
                    <goal>check</goal>
                </goals>
            </execution>
        </executions>
    </plugin>

用法二

在maven site中创建聚合性的报告

<plugin>
  <groupId>org.owasp</groupId>
  <artifactId>dependency-check-maven</artifactId>
  <version>4.0.2</version>
     <reportSets>
         <reportSet>
             <reports>
                 <report>aggregate</report>
             </reports>
         </reportSet>
   </reportSets>
</plugin>

用法三

设置当风险指数(CVSS)大于等于8时(CVSS分数为0-10)则项目编译失败

<plugin>
   <groupId>org.owasp</groupId>
   <artifactId>dependency-check-maven</artifactId>
   <version>4.0.2</version>
        <configuration>
            <failBuildOnCVSS>8</failBuildOnCVSS>
        </configuration>
    <executions>
        <execution>
            <goals>
                <goal>check</goal>
            </goals>
        </execution>
    </executions>
</plugin>

用法四

仅更新NVD(漏洞库)数据,而不执行检查

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

与 Jenkins 集成

Jenkins中需要安装插件:Static Analysis Utilities 和 Dependency-Check

该插件具有执行依赖关系分析和构建后查看检查结果的功能。

执行依赖分析配置:

dependency-check-gradle,开源工具,运维,安全

查看检查分析结果配置:

dependency-check-gradle,开源工具,运维,安全

 文章来源地址https://www.toymoban.com/news/detail-774248.html

报告查看

样本报告demo:https://jeremylong.github.io/DependencyCheck/general/SampleReport.html

dependency-check-gradle,开源工具,运维,安全

dependency-check-gradle,开源工具,运维,安全 

DependencyCheck 项目信息

Github 项目地址:https://github.com/jeremylong/DependencyCheck

文档地址:https://jeremylong.github.io/DependencyCheck/

关于HummerRisk

HummerRisk 是开源的云原生安全平台,以非侵入的方式解决云原生的安全和治理问题,核心能力包括混合云的安全治理和K8S容器云安全检测。

dependency-check-gradle,开源工具,运维,安全

 

到了这里,关于开源工具系列5:DependencyCheck的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 开源安全测试工具 | 网络安全工具列表

    • AttackSurfaceMapper (https://github.com/superhedgy/AttackSurfaceMapper) - 自动化渗透测试工具, 使用手册/测试流程 (https://www.uedbox.com/post/59110/)。 • vajra (https://github.com/r3curs1v3-pr0xy/vajra) - 自动化渗透测试. • Savior (https://github.com/Mustard404/Savior) - 渗透测试报告自动生成工具!. • OneForAll (h

    2024年02月03日
    浏览(49)
  • 【工具/性能】开源的性能测试工具sysbench

    sysbensh是一个非常通用的benchmark工具,其提供多种方面的测试: cpu :提供一个简单的cpu benchmark测试 fileio:文件磁盘io的benchmark测试 memory:内存访问 benchmark测试 thread:线程调度 benchmark测试 mutex:POSIX的锁 benchmark测试 OLTP:数据库 benchmark测试,支持MySQL,Pgsql 默认支持MySQL,如

    2024年02月12日
    浏览(47)
  • 【天幕系列 02】开源力量:揭示开源软件如何成为技术演进与社会发展的引擎

    在当今数字化时代,开源软件已经成为了技术领域的一个重要组成部分,对整个行业和社会产生了深远的影响。从操作系统到数据库,从编程语言到应用程序,开源软件的影响力日益显现,为技术创新、经济发展和社会进步作出了巨大贡献。 开源软件对技术创新的推动作用是

    2024年02月20日
    浏览(35)
  • 有哪些开源和非开源的项目管理工具?

    开源和非开源项目管理工具各有其特点和优势。下面是一些常见的开源和非开源项目管理工具以及它们的简要介绍。 开源项目管理工具: OpenProject:OpenProject 是一个功能强大、易于使用的开源项目管理工具。它提供了项目计划、任务管理、团队协作、文档管理等功能。OpenP

    2024年02月14日
    浏览(39)
  • 【系统工具】开源服务器监控工具WGCLOUD初体验

    经常看到服务器上传下载流量一直在跑,也不知道是啥软件在偷偷联网~~~官网地址:www.wgstart.com,个人使用是免费的。 \\\"WGCLOUD支持主机各种指标监测(cpu使用率,cpu温度,内存使用率,磁盘容量空间,磁盘IO,硬盘SMART健康状态,系统负载,连接数量,网卡流量,硬件系统信息

    2024年02月12日
    浏览(44)
  • 开源大数据工具整理

    Phoenix: Salesforce公司出品,Apache HBase之上的一个SQL中间层,完全使用Java编写 Stinger: 原叫Tez,下一代Hive, Hortonworks主导开发,运行在YARN上的DAG计算框架 Presto: Facebook开源         Spark SQL: Spark上的SQL执行引擎         Pig: 基于Hadoop MapReduce的脚本语言         Cloudera Impala: 参照G

    2023年04月08日
    浏览(29)
  • 开源超级终端工具——WindTerm

    Releases · kingToolbox/WindTerm · GitHub 安装的话,相信大家不用我赘述了。 初始界面是这样的: 2.1 本地会话(最下面那个框,发送/Shell) 点击右侧的加号,可以选择不同的命令提示框,不同的框里的环境是不一样的,这个一定要注意。 2.2 远程会话 左上角- 会话 - 新建会话 - SS

    2024年02月09日
    浏览(35)
  • 部署开源的团队协作工具

    Zulip 是一个开源的团队协作工具,拥有独特的基于主题的线程功能,结合了电子邮件和聊天的优点,使远程工作更加高效和愉快。它是唯一设计用于实时和异步对话的现代团队聊天应用程序。其核心优势包括: 适用于大型企业、领先的开源项目以及数千家其他组织; 提供易

    2024年01月23日
    浏览(50)
  • 开源工具分享-CodeGeeX

    随着ChatGPT引爆人工智能,芯片厂商AI算力腾飞,市面上出现了许多关于AI的产品,例如: ChatGPT,Midjourney,文心一言,通义千问,讯飞星火,华为盘古等各大厂商轮番下场,现在呈现百家争鸣的人工智能局势。 追随潮流,我们测试开发自然也需要引入AI帮助我们提升日常工作

    2024年02月06日
    浏览(43)
  • 【WPF系列】【MVVM】Prism开源框架学习(一)

    第一章 【WPF系列】【MVVM】Prism开源框架学习(一) 这里先简单介绍下Prism是什么,怎么去学习,资料怎么获取。 Prism是一个用于构建WPF、UWP和Xamarin应用程序的开源框架,它提供了一套MVVM(Model-View-ViewModel)的架构模式,以及一组工具和库,帮助开发人员更容易地创建可扩展

    2024年02月13日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包