在过往发行版的基础上,结合社区用户提供的大量反馈及研发小伙伴的积极探索,项目组对OpenSCA的解析引擎做了全方位的优化,v3.0.0版本正式发布啦~

感谢所有用户的支持和信任~是很多人的一小步聚在一起带着我们的OpenSCA走出了这一大步。之后,也希望越来越多的朋友可以和我们一起建设开源的开源风险治理方案。

更新内容

①Java及JS解析逻辑更上一层楼

②支持通过SBOM清单直接输出漏洞及许可证清单

③支持生成DSDX格式标准SBOM清单

④新增命令行交互式 UI

⑤参数优化

1、重构解析引擎,解析逻辑大大卷

熟悉mvn依赖的朋友们都知道,尽管mvn相对规整,其中的一些特殊情况还是非常复杂让人头秃。此前,经过多次迭代,OpenSCA的引擎已经足以准确解析常见情况;新引擎特地为14种特殊情况设计了对应的解析逻辑,大大提升了对复杂情况的支持。

研发小伙伴已经将这14种情况及相关说明整理成了测试用例,在 OpenSCA的GitHub和Gitee仓库里就能找到。

欢迎感兴趣的朋友们按需取用,如果能顺便给我们点个Star以示鼓励就更好啦~

2、仅需SBOM清单即可输出漏洞及许可证清单

不方便直接对特征文件执行检测的朋友们有福啦!使用v3.0.0直接检测SBOM清单即可输出依赖信息、漏洞信息及许可证清单。

不过,唯一确定一个组件需要同时有“名称+厂商+版本+语言”信息,严谨起见,推荐使用CDX(有Purl信息协助确定唯一性)及DSDX格式有语言字段)的标准SBOM清单来输出准确的漏洞信息及许可证清单。如果只需要依赖信息的话,输入SPDX/CDX/DSDX中的任一种都可以。

使用样例

opensca-cli -token ${token} -path ${filename.cdx.json} -out output.html

报告示例

3、支持生成DSDX格式标准SBOM清单

DSDX(Digital Supply-chain Data Exchange)是OpenSCA社区主导,开源中国、电信研究院、中兴通讯联合发起的中国首个数字供应链SBOM格式,结合了甲方用户SBOM落地实践经验与安全厂商技术应用视角,更能针对性适配中国企业实战化应用场景。

使用样例

opensca-cli -token ${token} -path ${project_path} -out output.dsdx.json

报告示例

4、命令行检出结果树状展示

v3.0.0支持通过命令行交互式浏览依赖树视图,可以使用键盘快捷键展开或折叠依赖树的节点,查看组件信息、漏洞信息以及 License 等信息。

*命令行UI交互需要在配置文件中开启

5、参数优化

细心的朋友可能已经发现,与过去相比,上方的使用样例中少了-url参数

考虑到此前版本的参数相对较多,为了使用起来更加简便,我们对参数设置进行了优化,通过-token、-path和-out三个参数即可快速执行检测(-url参数已默认为OpenSCA云漏洞服务地址https://opensca.xmirror.cn/,如使用其他在线漏洞服务可在配置文件中指定url);如有指定配置文件和日志文件路径的需求,添加-config和-log参数即可。作为补充,其余参数如vul、db、dedup等可在配置文件中做对应设置。

以上就是本次更新的全部内容啦~

版本升级 | v3.0.0卷起来了!多种特殊情况解析轻松拿捏!的更多相关文章

  1. 从 Bootstrap 2.x 版本升级到 3.0 版本

    摘自http://v3.bootcss.com/migration/ Bootstrap 3 版本并不向后兼容 v2.x 版本.下面的章节是一份从 v2.x 版本升级到 v3.0 版本的通用指南.如需 ...

  2. Luminar 3 for Mac(照片编辑工具)v3.1.0中文特别版

    Luminar for Mac是一款多功能照片编辑软件,使用独特的AI工具加快速度,具备AI Sky Enhancer.Accent AI.太阳光线等创新功能.当然也保留了原有的功能,帮助你轻松的修复 ...

  3. FineUIPro v3.5.0发布了,减少 90% 的上行数据量,15行代码全搞定!

    一切为客户着想 一切的一切还得从和一位台湾客户的沟通说起: 客户提到将ViewState保存在服务器端以减少上行数据量,从而加快页面的回发速度. 但是在FineUI中,控件状态都保存在FState中, ...

  4. kubeSphere v3.3.0+kubernetes v1.22.10 集群部署

    概述 KubeSphere 是 GitHub 上的一个开源项目,是成千上万名社区用户的聚集地.很多用户都在使用 KubeSphere 运行工作负载.对于在 Linux 上的安装,KubeSphere ...

  5. FineUI(专业版)v3.2.0 发布(ASP.NET UI控件库)!

    +2016-08-20 v3.2.0 +表格增强. +表格列RenderField增加属性ClientHtmlEncode,用于在客户端进行HTML编码. -增加示例:单元格编辑->杂项-> ...

  6. FineUI(专业版)v3.0.0 发布,手机、平板和桌面全支持!

    FineUI(专业版)v3.0.0 已经正式发布,全面支持手机.平板和桌面!       自 2008 年 4 月发布第一个版本,我们持续更新了 126 个版本,拥有 16000 多位注册用户,130 ...

  7. STM32启动文件详细解析(V3.5.0) 以:startup_stm32f10x_hd.s为例

    我用的是IAR,这个貌似是MDK的,不过很有用,大家可以看一下 ;* 文件名 : startup_stm32f10x_hd.s ;* 库版本 : V3.5.0 ;* 说明: 此文件为STM32F10x ...

  8. Bootstrap(v3.2.0)模态框(modal)垂直居中

    Bootstrap(v3.2.0)模态框(modal)垂直居中方法: 在bootstrap.js文件900行后面添加如下代码,便可以实现垂直居中. that.$element.children().e ...

  9. Android 百度地图 SDK v3.0.0 (四) 引入离线地图功能

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/37758097 一直觉得地图应用支持离线地图很重要啊,我等移动2G屌丝,流量不易, ...

  10. Android 百度地图 SDK v3.0.0 (三) 添加覆盖物Marker与InfoWindow的使用

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/37737213 上篇博客已经实现了地图的定位以及结合了方向传感器用户路痴定位方向, ...

随机推荐

  1. 2021牛客多校第一场 I题(DP)

    题意 给定一个长度为 \(n(n<=5000)\) 的排列,两个人轮流从这个序列中选择一个数,要求当前回合此人选择的数大于任意一个已经被选择的数,并且该数在数组中的位置 \(i\) 与此人上一次 ...

  2. 数据结构(C语言版 第2版)课后习题答案全集 严蔚敏

    有的小伙伴在网上奋力的找 严蔚敏版 第2版 数据结构 的始终无果,那么我这里就整理好,放在同名公众号中了,也可扫文章末尾的二维码直达公众号,回复数据结构的关键词即可拿到.

  3. # [AI]多模态聚类能力助力AI完成自主意识测试

    引言 探讨人工智能是否能形成自我意识,是一个当前AI领域一个重要而又复杂的问题.随着深度学习和强化学习技术的不断进步,计算机在视觉识别.语音识别和控制机器人等方面都已取得长足的进展,模拟和超越人类的一 ...

  4. Reactor实战,创建一个简单的单线程Reactor(理解了就相当于理解了多线程的Reactor)

    单线程Reactor package org.example.utils.echo.single; import java.io.IOException; import java.net.InetSo ...

  5. liunx系统登录有趣界面图案

    # vim /etc/motd .::::. .::::::::. ::::::::::: ..:::::::::::' '::::::::::::' .:::::::::: '::::::::::: ...

  6. ssm整合-项目异常处理方案

    项目异常分类: 项目异常处理方案: 需要自定义异常处理 然后在处理器中加入 package com.itheima.controller; import com.itheima.exception.B ...

  7. Head First Java学习:第十四章-序列化和文件

    第十四章 序列化和文件的输入输出 保存对象 1.什么是序列化和反序列化 在编程的世界当中,常常有这样的需求:我们需要将本地已经实例化的某个对象,通过网络传递到其他机器当中,为了满足这种需求,就有了所谓 ...

  8. EF Core助力信创国产数据库

    前言 国产数据库作为国产化替代的重要环节,在我国信创产业政策的指引下实现加速发展,我们国产数据库已进入百花齐放的快速发展期,相信接触到涉及到政府类等项目的童鞋尤为了解,与此同时我们有一部分也在使用各种 ...

  9. 【笔记整理】request模块基本使用

    基本使用 发送get请求.获取响应各种请求.响应信息 def fun1(): url = "http://www.baidu.com" resp = requests.get(ur ...

  10. python tkinter 使用(十)

    python tkinter 使用(十) #!/usr/bin/python3 # -*- coding: UTF-8 -*- """ @Author: zh @Time ...