写点什么

谷歌开源漏洞扫描工具 OSV-Scanner

  • 2023-01-19
    北京
  • 本文字数:1520 字

    阅读完需:约 5 分钟

谷歌开源漏洞扫描工具OSV-Scanner

谷歌发布OSV-Scanner,一款开源漏洞(Open Source Vulnerability,OSV)数据库前端接口。OSV 数据库是一个分布式开源数据库,通过 OSV 格式存储漏洞信息。OSV-Scanner 会基于 OSV 数据库评估项目的依赖项,显示与项目相关的所有漏洞。


在扫描项目时,OSV-Scanner 首先通过分析清单、软件材料清单(SBOM)和代码提交哈希值来确定正在使用的所有依赖项。这些信息用于查询 OSV 数据库,并报告与项目相关的漏洞。漏洞通过表格的形式或基于 JSON 的 OSV 格式(可选)进行报告。



OSV-Scanner 的漏洞扫描输出(来源


OSV格式提供了一种机器可读的 JSON 模式,用于表示漏洞信息。这种格式被用来加强与实际开源包中使用的命名和方案一致的版本规范。谷歌高级工程师Oliver Chang和谷歌杰出工程师Russ Cox表示,这种方法“可以用来描述任意开源生态系统中的漏洞,同时又不需要依赖生态系统的逻辑来处理它们。”


"schema_version": "1.3.0",  "id": "GHSA-c3g4-w6cv-6v7h",  "modified": "2022-04-01T13:56:42Z",  "published": "2022-04-01T13:56:42Z",  "aliases": [ "CVE-2022-27651" ],  "summary": "Non-empty default inheritable capabilities for linux container in Buildah",  "details": "A bug was found in Buildah where containers were created ...",  "affected": [    {      "package": {        "ecosystem": "Go",        "name": "github.com/containers/buildah"      },      "ranges": [        {          "type": "SEMVER",          "events": [            {              "introduced": "0"            },            {              "fixed": "1.25.0"            }          ]        }      ]    }  ],  "references": [    {      "type": "WEB",      "url": "https://github.com/containers/buildah/commit/..."    },    {      "type": "PACKAGE",      "url": "https://github.com/containers/buildah"    }  ]}
复制代码


使用命令 osv-scanner -r /path/to/your/dir 来扫描目录,找到 lockfiles、SBOM 和 git 目录。选项-r 用于进行递归扫描。目前支持使用 Package URL 的 SPDX 和 CycloneDX SBOM,也支持多种锁文件,包括 yarn.lock、composer.lock、go.mod 和 Gemfile.lock。


OSV-Scanner 也可以用于扫描 Debian 镜像中已安装的包,找出其中的漏洞:$ osv-scanner --docker image_name:latest。这需要安装 docker,并且目前不扫描 docker 容器的文件系统。关于这项预览功能的更多细节可以在GitHub Issue中找到。


OSV-Scanner 可以被配置为根据漏洞 ID 来忽略漏洞,在配置时还可以可选地提供忽略的到期日期和原因。忽略的漏洞通过 IgnoreVulns 键来指定。


[[IgnoredVulns]]id = "GO-2022-0968"# ignoreUntil = 2022-11-09 reason = "No ssh servers are connected to or hosted in Go lang"
复制代码


OSV-Scanner 也被集成到OpensSSF Scorecard的漏洞检测中。Scorecard 是一种自动化的安全工具,用于识别开源项目中有风险的供应链。因为集成了 OSV-Scanner,Scorecard 的能力得到了扩展,可以扫描项目本身的漏洞和项目依赖项中的漏洞。


谷歌软件工程师Rex Pan分享了 OSV-Scanner 后续的一些细节。该团队打算提供一个独立的 CI 操作,以便可以进一步与工作流集成。Pan 说,他们希望通过“向 CVE 添加精确的提交级元数据来构建一个高质量的 C/C++漏洞数据库”,以此来改进对 C 和 C++的支持。


OSV-Scanner 基于Apache License 2.0发行许可,代码托管在GitHub上。关于这个项目的更多细节可以在发布博文中找到。


原文链接

https://www.infoq.com/news/2022/12/google-osv-scanner/


相关阅读:

符号执行,从漏洞扫描到自动化生成测试用例

网络安全从业人员调查:漏洞扫描是最该被防范的安全问题

2023-01-19 08:0011926

评论

发布
暂无评论
发现更多内容

week6 学习总结 Nosql

Z冰红茶

学习总结 - 第 6 周

饶军

架构师训练营第六周

大丁💸💵💴💶🚀🐟

程序员的眼界真的不要,也不能只局限于技术

非著名程序员

极客时间 程序员 提升认知

NOSQL - 第六周作业

孙志平

static关键字真能提高Bean的优先级吗?答:真能

YourBatman

spring springboot SpringCloud 极客大学架构师训练营 Spring Bean

CAP 原理及Doris 临时失效的处理过程

Acker飏

极客大学架构师训练营 CAP

架构师训练营第六周作业

sunnywhy

一个成都程序猿写于离开北京一周年与26岁生日的这一天

why技术

生活 程序人生 北漂 成都

架构师训练营」第 6 周作业

edd

极客大学架构师训练营

「1.4万字」玩转前端 Video 播放器 | 多图预警

阿宝哥

大前端 流媒体 Video播放器 HLS

MySQL 高可用和分布式数据库(训练营第六课)

看山是山

zookeeper CAP 主从复制 主主复制 MySQL 高可用

CAP原则

熊威

架构师训练营第六周作业

王铭铭

CAP 原理

Z冰红茶

GaussDB for DWS:内存自适应控制技术总结

华为云开发者联盟

大数据 数据湖 内存管理 sql 华为云

学会使用Vue JSX,一车老干妈都是你的

前端有的玩

Java Vue 大前端 技巧 React

CAP

Kiroro

天猫小店、京东小店的问题分析

石云升

价值网络 新零售 天猫小店

图解:有向环、拓扑排序与Kosaraju算法

淡蓝色

Java 数据结构 算法

我学会了用Python预测股票价格

博文视点Broadview

Python 读书笔记 算法 数据分析

最右JS2Flutter框架——渲染机制(二)

刘剑

flutter 大前端 跨平台 探索与实践

架构师训练营第六周总结

sunnywhy

架构师训练营第6周作业

饶军

探秘 Spring 的 PropertyEditor

CoderLi

Java spring 后台

Doris 临时失效 UML 时序图(训练营第六周)

看山是山

Doris

NOSQL - 第六周总结

孙志平

蟒周刊-429-Python 3.8.4 可用ed

ZoomQuiet大妈

Python 大妈 蟒周刊

猿灯塔:spring Boot Starter开发及源码刨析(六)

猿灯塔

Apache Flink 是什么?

Apache Flink

flink

总结

Kiroro

谷歌开源漏洞扫描工具OSV-Scanner_安全_Matt Campbell_InfoQ精选文章