阅读(4012) (2)

GitHub 关于代码扫描

2020-08-19 15:39:32 更新

您可以使用 代码扫描 在 GitHub 上查找项目中的安全漏洞和代码错误。

注意:代码扫描 目前处于测试阶段,可能会更改。 要申请访问测试版,请加入等待列表

关于 代码扫描

通过 代码扫描,开发者可以快速而自动地分析 GitHub 仓库中的代码,查找安全漏洞和编码错误。

您可以使用 代码扫描 来查找代码中现有的问题,并且对其进行分类和确定修复的优先级。 代码扫描 还可防止开发者引入新问题。 您可以计划在特定的日期和时间进行扫描,或在仓库中发生特定事件(如推送)时触发扫描。

如果 代码扫描 发现您的代码中可能存在漏洞或错误,GitHub 会在仓库中显示警报。 在修复触发警报的代码之后,GitHub 将关闭警报。 更多信息请参阅“管理来自 代码扫描 的警报”。

代码扫描 支持已编译和解译的语言,并且可在以支持的语言编写的代码中找到漏洞和错误。

  • C/C++
  • C#
  • Go
  • Java
  • JavaScript/TypeScript
  • Python

代码扫描 使用 GitHub 操作。 更多信息请参阅“关于 GitHub 操作”。

要开始 代码扫描,请参阅“启用 代码扫描”。

有关 代码扫描 的 API 端点的更多信息,请参阅“代码扫描”。

关于 CodeQL

默认情况下,代码扫描 使用 CodeQL - 一个语义代码分析引擎。 CodeQL 将代码视为数据,允许您在代码中查找潜在漏洞,比传统的静态分析工具更可靠。 您可以使用 CodeQL 查找漏洞的所有变体,并从代码中删除所有变体。

QL 是授权 CodeQL 的查询语言。 QL 是一种面向对象的逻辑编程语言。 GitHub、语言专家和安全研究人员创建用于 代码扫描 的查询,查询是开源的。 社区维护和更新查询,以改善分析和减少误报。 更多信息请参阅 GitHub Security Lab 网站上的 CodeQL

您可以在 github/codeql 仓库中查看并参与 代码扫描 的查询。 更多信息请参阅 CodeQL 文档中的 CodeQL 查询

关于 代码扫描 的计费

代码扫描 使用 GitHub 操作,代码扫描 工作流程的每次运行将耗用 GitHub 操作 的分钟数。 更多信息请参阅“关于 GitHub 操作 的计费”。

关于第三方代码扫描工具

您可以将 SARIF 文件从第三方静态分析工具上传到 GitHub,并且在仓库中看到 代码扫描 来自这些工具的警报。

代码扫描 可与输出静态分析结果交换格式 (SARIF) 数据的第三方代码扫描工具互操作。 SARIF 是一个开放的标准。 更多信息请参阅“代码扫描 的 SARIF 输出。”

要开始,请参阅“将 SARIF 文件上传到 GitHub”。

延伸阅读