{"meta":{"title":"开展安全计划以大规模解决警报问题","intro":"启动一个针对性的安全活动，旨在修复组织内特定类别的安全警报，例如跨站点脚本（XSS）或其他类型的安全问题。","product":"安全性和代码质量","breadcrumbs":[{"href":"/zh/code-security","title":"安全性和代码质量"},{"href":"/zh/code-security/tutorials","title":"Tutorials"},{"href":"/zh/code-security/tutorials/secure-your-organization","title":"保护你的组织"},{"href":"/zh/code-security/tutorials/secure-your-organization/best-practice-fix-alerts-at-scale","title":"大规模解决警报"}],"documentType":"article"},"body":"# 开展安全计划以大规模解决警报问题\n\n启动一个针对性的安全活动，旨在修复组织内特定类别的安全警报，例如跨站点脚本（XSS）或其他类型的安全问题。\n\n## 启动您的第一个活动\n\n在本教程中，你将规划和运行专注于 XSS 警报的第一个组织范围安全活动。 在此过程中，你将了解如何选择正确的警报，为开发人员做好准备，并构建一个活动，以推动安全状况的有意义的改进。\n\n假设你已在多个存储库中发现了 XSS 漏洞的定期模式。 你决定开展协调活动，减少风险，同时帮助开发人员增强对安全编码的信心，而不是逐个解决警报问题。\n\n## 1. 定义重点目标\n\n在大规模开展活动时，同时针对所有紧急警报是很有诱惑力的。 如果你的开发人员在安全编码和可用容量方面已经有了坚实的基础，则这一点可能适用。\n\n但是，如果你的目标是降低风险并提高安全编码实践，那么重点开展活动通常更有效。 选择单个漏洞类型（例如跨站点脚本）可让开发人员识别模式、跨多个修补程序应用学习以及生成势头。\n\n对于此活动，你决定将重点放在组织内的 XSS 警报上，不超过单个活动可包含的警报数量限制。\n\n## 2. 为活动选择通知\n\n在安全警报页上，首先筛选跨站点脚本警报。 还可以使用预定义的活动模板，例如**跨网站脚本（CWE-79）**，来快速定义范围。 有关筛选警报的信息，请参阅 [在安全概述中筛选警报](/zh/code-security/how-tos/manage-security-alerts/remediate-alerts-at-scale/filtering-alerts-in-security-overview)。\n\n> \\[!NOTE]\n> 安全活动最多可以包含 1000 个警报。 如果您的组织有超过 1000 个 XSS 警报，请缩小筛选条件（例如，按存储库、严重性或语言），直到匹配的警报数量符合此限制，或者规划多个活动以覆盖剩余警报。\n\n如果 Copilot Autofix 可用于市场活动，则可以使用 `autofix:supported` 筛选器进一步优化范围。 这样，开发人员就可以利用 AI 生成的修复建议更有效地修正警报。\n\n在发起竞选活动之前，还准备支持教育材料。 例如：\n\n* 创建包含防止 XSS 漏洞的指导的存储库。\n* 链接到 OWASP Foundation 中的资源，例如[跨站点脚本 （XSS）。](https://owasp.org/www-community/attacks/xss/)\n* 提供安全编码模式和测试方法的示例。\n\n你将在活动说明中包含指向这些资源的链接，以便开发人员在处理分配的警报时引用它们。\n\n## 3. 分配市场活动经理并定义沟通渠道\n\n在启动活动之前，决定由谁来支持开发人员在修正过程中。\n\n创建安全活动时，必须分配一个或多个 **活动主管**。 市场活动经理必须是：\n\n* 具有组织所有者角色或安全经理角色的用户，或者\n* 具有其中一个角色的团队成员\n\n选择经理人，要求他们能够：\n\n* 回答有关 XSS 漏洞的问题\n* 评审修复相关的拉取请求\n* 帮助解决边缘案例或复杂的修正方案\n\n由于活动经理对参与该活动的开发人员可见，因此这也是建立明确沟通的机会。 创建活动时，请包含联系链接，例如指向 GitHub Discussions 线程或其他沟通渠道的链接，以便开发者知道在哪里提问。\n\n通过提前设置期望并使支持可见，可以增加信任并提高修正率。\n\n## 4. 创建和发布市场活动\n\n你现在已经准备好创建活动。\n\n在定义活动策划时：\n\n* 使用 XSS 筛选器或模板选择警报。\n* 添加一个明确的描述，解释活动的目标。\n* 请包含您之前准备的教育资源的链接。\n* 根据警报数和预期修正容量设置现实截止日期。\n\n如果你不确定范围，请先创建**草稿活动**。 在发布之前，草稿允许你查看将要包含的警报，并进行内部协作。\n\n## 5. 启用问题跟踪以提高可见性\n\n为了帮助开发人员跟踪其工作并为经理提供可见性，可以选择在活动中包含的每个存储库中自动创建问题。 这样，开发人员就可以在现有工作流和项目板中管理其修正工作。\n\n启用问题创建时，活动“简短说明”、“联系人链接”和截止日期将自动包含在问题正文中。 如果更新简短说明、联系人链接或截止日期，这些更改将反映在问题中。 此外，如果活动达到截止日期或被关闭，会在每个问题上发布评论，以通知开发人员。 此集成有助于保持明确的交流，并在多个存储库之间使活动保持有序。\n\n## 6. 修正期间支持开发人员\n\n活动上线后，你的角色将从组织者转变为启用者。 开发人员将开始查看和修复其存储库中的 XSS 警报。 为了帮助他们高效自信地移动：\n\n* 确保活动管理员可随时评审拉取请求并解答问题。\n* 鼓励开发人员更好地了解 Copilot Chat 代码易受攻击的原因，以及如何验证其修补程序。\n* 在支持的情况下，鼓励开发人员在合并更改之前查看和测试 Copilot Autofix 建议。\n\n如果你之前准备了教育资源，请在讨论和拉取请求评审中引用它们。 加强共享指导可减少重复的问题，并帮助构建长期安全的编码习惯。\n\n通过在活动期间保持可见和响应，你强调这是一项协作努力，而不仅仅是合规性练习。\n\n## 7. 设置现实的最后期限\n\n创建活动时设置截止日期。 随着活动的进展，确保时间线仍然可以实现。\n\n设置或调整截止时间时，请考虑：\n\n* 活动中包含的警报数\n* 开发人员的预期修正能力（例如，他们可以花费多少时间与常规工作一起修复警报）\n* 任何即将到来的公司内的截止日期或假期，可能会影响可用性。\n\n除非警报修正是一项专用计划，否则大多数开发人员将与功能开发一起平衡这项工作。 设置现实的时间线会增加参与度，并防止劝阻。\n\n如果需要，可以随着时间的推移运行多个专项活动，而不是尝试同时解决所有警报类型。\n\n## 8. 关闭活动并进行迭代\n\n随着截止时间的临近，监视进度并协作处理所有剩余的复杂修复。\n\n活动结束时：\n\n* 存储库问题会自动更新。\n* 开发人员已解决一组重点漏洞。\n* 你的组织以可衡量的方式降低了风险。\n\n最重要的是，开发人员获得了识别和修复特定漏洞类的实际经验。\n\n在这里，可以使用另一组目标警报（例如 SQL 注入、不安全反序列化或公开的机密）重复此过程，以在一段时间内稳步改善组织的安全状况。\n\n## 后续步骤\n\n准备好启动你的活动了吗？ 为了创建和管理您的安全活动，请参阅 [创建和管理安全活动](/zh/code-security/how-tos/manage-security-alerts/remediate-alerts-at-scale/creating-managing-security-campaigns)。"}