Skip to main content

参与代码安全活动

如果你在安全行动中被分配到警报, 本指南将介绍安全行动的内容、预期结果以及如何有效地解决警报。

谁可以使用此功能?

具有写入访问权限的用户

启用了 GitHub Secret Protection or GitHub Code Security 的 GitHub Team 上的组织

什么是代码安全活动?

代码安全活动是一项有针对性的工作,旨在修复一个或多个存储库中一组已定义的 code scanning 警报。

活动由组织所有者或安全经理创建,通常针对存储库的默认分支中检测到的警报。 如果你正在参与某个活动,你被要求帮助解决其中一些警报。

参与活动有什么好处?

除了降低组织代码库中的风险外,安全活动中的警报相比仅仅修复存储库中的另一个警报,还具有其他几个好处。

  • 在安全团队中,有一位活动管理者可以与你协作,并且有一个专门的联系人链接用于讨论活动相关事宜。
  • 你知道你要修复的是对公司很重要的安全警报。
  • 你可能有权访问有针对性的培训材料。
  • 无需请求 GitHub Copilot自动修复 建议,因为它已作为起点提供。
  • 如果你有权访问 GitHub Copilot 聊天,可以提出有关警报和建议修复方法的问题。
  • 你正在完善并演示有关安全编码的知识。

参与市场活动有助于降低组织代码库的风险,同时增强安全编码技能。

1. 了解市场活动

首先查看活动更新和截止日期,以便您能有效规划工作。

通知设置

对于任何你拥有写权限的仓库,你将自动收到关于安全活动的电子邮件更新,以便及时了解相关更新****。

此外,如果有人向你分配 code scanning 或 secret scanning 警报,你会收到通知,请参阅 分配警报

查看活动详细信息

当您打开包含一个或多个活动警报的仓库的“安全”选项卡时,可以在视图的边栏中看到活动名称。 单击活动名称可查看活动中包含的警报列表,以及有关活动进展的摘要信息。

活动生成的 GitHub Issues

某些活动会为每个存储库自动创建 GitHub Issues,详细说明活动管理员、联系 URL 和截止日期。

使用此问题协调工作、跟踪进度并保持利益干系人保持一致。 例如,可以使用此问题来:

  • 将问题添加到项目面板
  • 添加指派对象
  • 创建子问题或任务列表

2.应用修补程序之前生成上下文

安全团队可以在参与活动之前为你提供特定的培训,以便你能够处理活动中包含的警报。

如果没有提供正式的培训计划,可以请求活动经理共享有关以下方面的信息:

  • 活动中包含的安全漏洞类型
  • 漏洞修复示例
  • 测试修补程序的方法

此外,还有一些外部资源可以帮助你了解常见的安全问题:

  • OWASP Foundation****:提供许多关于常见漏洞的学习资源,详见关于 OWASP Foundation
  • MITRE 公司****:维护常见漏洞的详细列表,详见关于 CWE

3. 尽早和经常进行协作

安全活动通常会包含一个联系 URL,可能链接至活动负责人、开放论坛(例如 GitHub 讨论区)或提供相关资源的网站。 应使用此空间来询问有关活动或特定警报的问题、查找有用的资源以及进行知识分享。

查找联系 URL:

  1. 打开仓库的“Security”选项卡****。
  2. 在左侧边栏上,单击你参与的活动的名称。
  3. 在活动跟踪页上,在活动负责人姓名右侧,单击“”****。

4. 战略性地对警报进行分组

一起处理类似的警报,以生成势头、减少上下文切换,并更深入地了解基础问题。 随着你在解决特定类型警报方面获得信心和效率,能使你更轻松、更迅速地解决后续警报。

5. 借助 Copilot 解决警报

你可以利用 Copilot 帮助解决安全活动中的警报。 根据存储库中启用的功能,你可能有权访问 Copilot自动修复 建议和 Copilot对话。

Copilot自动修复

如果警报包含在活动中,Copilot自动修复 会自动被触发,并在可能的情况下自动生成修复。 你可以提交建议的修复,以解决该警报,然后验证修复后的代码库是否仍然通过持续集成测试 (CI)。 请参阅“修复安全活动中的警报”。

如果在存储库中启用了 Copilot编程助理,则还可以向 Copilot 分配警报。 请参阅“修复安全活动中的警报”。

通过分配多个警报,Copilot编程助理 将应用修复并迭代代码,以验证更改、检查是否有新的安全问题,并确保没有合并冲突。

Copilot对话

你可以向 Copilot对话 提问,获取关于漏洞理解、修复建议以及如何测试修复是否全面的帮助。 要访问 Copilot对话,请导航到 https://github.com/copilot

或者,在查看某个具体警报时,单击页面右上角的 Copilot对话 图标 (),打开聊天窗口,然后直接询问 Copilot 有关该警报的问题。

例如:

Text

Explain how this alert introduces a vulnerability into the code.

如果你尚未通过你的组织获得 Copilot对话 的访问权限,可以注册 GitHub Copilot 免费。 请参阅“如何开始使用 GitHub Copilot 计划”。

后续步骤

  •         [AUTOTITLE](/code-security/code-scanning/managing-code-scanning-alerts/fixing-alerts-in-security-campaign)