project-copacetic/copacetic
GitHub: project-copacetic/copacetic
基于 buildkit 的容器镜像直接修补工具,无需重建镜像即可根据漏洞扫描报告增量修复安全漏洞。
Stars: 1547 | Forks: 111
# Project Copacetic:直接修补容器镜像漏洞

[](https://codecov.io/gh/project-copacetic/copacetic)
[](https://www.bestpractices.dev/projects/8031)
[](https://api.securityscorecards.dev/projects/github.com/project-copacetic/copacetic)
`copa` 是一个用 [Go](https://golang.org) 编写并基于 [buildkit](https://github.com/moby/buildkit) 的 CLI 工具,可用于直接修补容器镜像而无需完全重建。`copa` 还可以利用 [Trivy](https://github.com/aquasecurity/trivy) 等流行工具的漏洞扫描结果来修补容器镜像。 有关更多详细信息以及如何入门,请参阅[完整文档](https://project-copacetic.github.io/copacetic/)。 ## 演示  ## 为什么? 我们需要能够快速修补容器的功能,而无需通过上游进行完全重建。随着[漏洞披露与积极利用之间的时间窗口不断缩小](https://www.bleepingcomputer.com/news/security/hackers-scan-for-vulnerabilities-within-15-minutes-of-disclosure/),在运营方面越来越需要修补容器镜像中的关键安全漏洞,以便它们能够快速重新部署到生产环境中。当这些漏洞是以下情况时,这种需求尤为迫切: - 继承自深层基础镜像,且无法等待更新版本通过供应链渗透 - 发现于您不维护的第三方应用镜像中,且其更新节奏无法满足您的安全 SLA。  除了填补左移安全实践和工具未满足的运营空白外,`copa` 修补容器而无需重建容器镜像的能力还提供了其他好处: - 允许图像发布者以外的用户(例如 DevSecOps 工程师)也修补容器镜像。 - 通过仅创建一个额外的补丁层来减少重新分发修补镜像的存储和传输成本,而不是重建整个镜像(这通常会导致不同的层哈希值,从而破坏层缓存)。 - 减少修补容器镜像的周转时间,因为无需等待基础镜像更新,且该操作比完整的镜像重建更快。 - 降低修补镜像的复杂性,从运行重建流水线简化为在镜像上运行单个工具。 ## 如何实现? `copa` 工具是一个可扩展引擎,它: 1. 从 Trivy 等扫描器生成的容器镜像漏洞报告中解析所需的更新包。可以编写新的适配器以适应更多的报告格式。 2. 使用适当的包管理器工具(如 apt、apk 等)获取并处理所需的更新包。可以编写新的适配器以支持更多的包管理器。 3. 使用 buildkit 将生成的更新二进制文件应用到容器镜像。  这种方法源于使直接容器修补具有广泛适用性和可访问性的核心原则: - **Copa 支持修补现有容器镜像**。 - 开发人员无需使用特定工具构建其镜像,也不需要为了支持容器修补而以某种方式修改它们。 - **Copa 与现有的漏洞扫描和缓解生态系统协同工作**。 - 镜像发布者无需为容器修补创建新的工作流,因为 Copa 支持使用当今已发布的安全更新包来修补容器镜像。 - 消费者无需迁移到新的且可能功能更有限的自定义发行版支持生态系统,也无需更改其容器漏洞扫描流水线以包含修复,因为 Copa 可以作为一个额外步骤无缝集成,根据这些扫描报告修补容器。 - **Copa 降低了所需的技术专业知识以及对修补镜像所需依赖项的等待**。 - 对于 OS 包漏洞,修补特定镜像不需要专业知识,因为 Copa 依赖于当今流行的容器扫描工具生成的报告中已嵌入的漏洞修复知识。 ## 贡献 有多种参与方式: * 加入[邮件列表](https://groups.google.com/g/project-copa)以获取版本发布、安全公告等通知。 * 加入[每两周一次的社区会议](https://docs.google.com/document/d/1QdskbeCtgKcdWYHI6EXkLFxyzTCyVT6e8MgB3CaAhWI/edit#heading=h.294j02tlxam)讨论开发、问题、用例等。 * 加入 [CNCF Slack](https://communityinviter.com/apps/cloud-native/cncf) 上的 [`#copacetic`](https://cloud-native.slack.com/archives/C071UU5QDKJ) 频道。 本项目欢迎遵守 [CNCF 行为准则](./CODE_OF_CONDUCT.md)的贡献和建议。
`copa` 是一个用 [Go](https://golang.org) 编写并基于 [buildkit](https://github.com/moby/buildkit) 的 CLI 工具,可用于直接修补容器镜像而无需完全重建。`copa` 还可以利用 [Trivy](https://github.com/aquasecurity/trivy) 等流行工具的漏洞扫描结果来修补容器镜像。 有关更多详细信息以及如何入门,请参阅[完整文档](https://project-copacetic.github.io/copacetic/)。 ## 演示  ## 为什么? 我们需要能够快速修补容器的功能,而无需通过上游进行完全重建。随着[漏洞披露与积极利用之间的时间窗口不断缩小](https://www.bleepingcomputer.com/news/security/hackers-scan-for-vulnerabilities-within-15-minutes-of-disclosure/),在运营方面越来越需要修补容器镜像中的关键安全漏洞,以便它们能够快速重新部署到生产环境中。当这些漏洞是以下情况时,这种需求尤为迫切: - 继承自深层基础镜像,且无法等待更新版本通过供应链渗透 - 发现于您不维护的第三方应用镜像中,且其更新节奏无法满足您的安全 SLA。  除了填补左移安全实践和工具未满足的运营空白外,`copa` 修补容器而无需重建容器镜像的能力还提供了其他好处: - 允许图像发布者以外的用户(例如 DevSecOps 工程师)也修补容器镜像。 - 通过仅创建一个额外的补丁层来减少重新分发修补镜像的存储和传输成本,而不是重建整个镜像(这通常会导致不同的层哈希值,从而破坏层缓存)。 - 减少修补容器镜像的周转时间,因为无需等待基础镜像更新,且该操作比完整的镜像重建更快。 - 降低修补镜像的复杂性,从运行重建流水线简化为在镜像上运行单个工具。 ## 如何实现? `copa` 工具是一个可扩展引擎,它: 1. 从 Trivy 等扫描器生成的容器镜像漏洞报告中解析所需的更新包。可以编写新的适配器以适应更多的报告格式。 2. 使用适当的包管理器工具(如 apt、apk 等)获取并处理所需的更新包。可以编写新的适配器以支持更多的包管理器。 3. 使用 buildkit 将生成的更新二进制文件应用到容器镜像。  这种方法源于使直接容器修补具有广泛适用性和可访问性的核心原则: - **Copa 支持修补现有容器镜像**。 - 开发人员无需使用特定工具构建其镜像,也不需要为了支持容器修补而以某种方式修改它们。 - **Copa 与现有的漏洞扫描和缓解生态系统协同工作**。 - 镜像发布者无需为容器修补创建新的工作流,因为 Copa 支持使用当今已发布的安全更新包来修补容器镜像。 - 消费者无需迁移到新的且可能功能更有限的自定义发行版支持生态系统,也无需更改其容器漏洞扫描流水线以包含修复,因为 Copa 可以作为一个额外步骤无缝集成,根据这些扫描报告修补容器。 - **Copa 降低了所需的技术专业知识以及对修补镜像所需依赖项的等待**。 - 对于 OS 包漏洞,修补特定镜像不需要专业知识,因为 Copa 依赖于当今流行的容器扫描工具生成的报告中已嵌入的漏洞修复知识。 ## 贡献 有多种参与方式: * 加入[邮件列表](https://groups.google.com/g/project-copa)以获取版本发布、安全公告等通知。 * 加入[每两周一次的社区会议](https://docs.google.com/document/d/1QdskbeCtgKcdWYHI6EXkLFxyzTCyVT6e8MgB3CaAhWI/edit#heading=h.294j02tlxam)讨论开发、问题、用例等。 * 加入 [CNCF Slack](https://communityinviter.com/apps/cloud-native/cncf) 上的 [`#copacetic`](https://cloud-native.slack.com/archives/C071UU5QDKJ) 频道。 本项目欢迎遵守 [CNCF 行为准则](./CODE_OF_CONDUCT.md)的贡献和建议。
标签:buildkit, DevSecOps, Docker, EVTX分析, EVTX分析, Go语言, Web截图, 上游代理, 安全防御评估, 容器安全, 提示词注入, 日志审计, 模块化设计, 活动识别, 漏洞修复, 程序破解, 端点安全, 系统加固, 网络安全培训, 自动化修复, 补丁管理, 请求拦截, 运维工具, 镜像修补, 镜像扫描