限时领|《AI 百问百答》专栏课+实体书(包邮)! 了解详情
写点什么

谷歌开源漏洞扫描工具 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:0012306

评论

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

使用Hugo和GitHub搭建博客

Felix

GitHub GitHub Pages Blog Hugo

架构师训练营第一期 - 第五周课后作业

卖猪肉的大叔

架构师训练营第一期 - 第五周学习总结

卖猪肉的大叔

这个应用魔方厉害了,让软件开发者效率提升10倍

华为云开发者联盟

软件开发 代码

前端科普系列(5):ESLint - 守住优雅的护城河

vivo互联网技术

Java 大前端 代码仓库

架构师训练营第 1 期 - 第 5 周 - 作业

wgl

极客大学架构师训练营

1024丨奈学教育致敬程序员:‘3+2’战略发布会圆满落幕

古月木易

奈学教育

中台架构下的DDD和落地实践

高鹏

业务中台 DDD 领域驱动模型DDD 中台架构 中台架构 DDDplus

一文带你掌握Redis操作指南

华为云开发者联盟

数据库 存储

1分钟带你入门 React 生命周期

Leo

react.js 大前端 React 生命周期

配置企业应用业务流程别头大,有工作流引擎就不怕

Marilyn

敏捷开发

架构师训练第五周 -编程语言实现一致性 hash 算法

郎哲158

JMM 应用实例:单例模式

朱华

单例模式

让“物”能说会道,揭晓华为云IOT黑科技

华为云开发者联盟

物联网 华为云

马云:数字货币可能会重新定义货币

CECBC

金融

独家揭秘 | 京东物流Elasticsearch大规模“迁移上云”实践

京东科技开发者

云计算

Docker内部组件

混沌畅想

Docker 容器 运维

LAXCUS 大数据集群操作系统:一个分布式分时共享 E 级系统软件(五)

陈泽云

人工智能 数据库 大数据 操作系统

JVM系列笔记 - 虚拟机栈

朱华

JVM

两个程序员老友的会面

Learun

敏捷开发

暂存图片

而立

算法图解:如何用两个栈实现一个队列?

王磊

Java 数据结构 算法和数据结构

标准的开发框架,对企业开发有多重要?

Philips

敏捷开发

LeetCode题解:46. 全排列,回溯,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

云原生2.0时代:开启应用定义基础设施新时代

华为云开发者联盟

容器 云原生

一文快速入门分库分表中间件 Sharding-JDBC (必修课)

程序员小富

Java 分库分表

mongodb源码实现系列-网络传输层模块实现二

杨亚洲(专注MongoDB及高性能中间件)

MySQL 数据库 mongodb 高性能 分布式数据库mongodb

1024丨奈学教育致敬程序员:‘3+2’战略发布会圆满落幕

奈学教育

程序员 奈学教育

iOS touch事件点的获取

teoking

ios

文石BOOX Note Air与掌阅iReader Smart2 该怎么选?

iOS性能优化 — 三、安装包瘦身

iOSer

ios 性能优化 编程语言 ios开发 安装包瘦身

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