点击查看目录
译者注:本文译自 Sysdig 公司的网站,Sysdig 是一家提供容器安全、监控和故障排除解决方案的公司,其产品帮助用户在容器化环境中实现可观测性和安全性。这篇文章介绍了 CNAPP,CNAPP 是一个端到端的云安全解决方案,可提供实时威胁检测、简化符合性、改善 DevOps 协作、操作效率等多种好处。它通过整合安全控件、提供集中式管理和运行时洞察力等方式,增强组织的整体安全姿态。
总览
CNAPP(容器化应用程序保护平台)是一种综合性的、全方位的安全策略,贯穿整个应用程序的生命周期(SDLC)。随着云计算的快速普及和现代应用程序的日益复杂,传统的安全措施往往无法有效地保护免受复杂的网络威胁。
CNAPP 结合了“向左倾斜”和“向右防御”安全概念,提供了全面和强大的安全策略,确保了应用程序在整个生命周期中的保护。
通过将安全向左移动,组织可以利用从应用程序开发过程的最开始阶段就开始的安全控制、漏洞扫描和合规性检查。
“向右防御”概念侧重于在应用程序运行时阶段实时检测和响应安全事件。尽管在开发过程中尽最大努力保护应用程序,但漏洞可能仍然存在,或者新的威胁可能出现,因此 CNAPP 必须采用并简化这两个概念。
CNAPP 解决方案的关键特征是什么?
CNAPP 提供的安全功能涵盖软件供应链的许多阶段,确保了在开发和运营生命周期中的全面保护。Gartner 将这些功能分为四个主要类别。
构件扫描
构件扫描是支持向左安全方法的关键 CNAPP 组件之一。向左移动风险可见性和扫描需要与开发组织使用的开发管道工具集成。
构件扫描有两个主要领域,无论构件是源代码还是已编译的二进制文件。它们是软件组成分析(SCA)和应用程序安全测试。
SCA 评估构件以查找它所包含的任何开放源代码库。然后,它标记所使用的库的版本和许可证。有了这些信息,它可以列出任何常见漏洞和曝光(CVE)及其评级,并将其作为报告或元数据附加到存储库中该构件的附加信息。
应用程序安全测试分为三个主要分组:静态(SAST)、动态(DAST)和交互式(IAST)。SAST 查看源代码或已构建的构件,寻找代码中可以发现的最佳实践和常见错误,例如未经检查的缓冲区。DAST 将构件视为黑盒子,运行时对其进行探测。它像攻击者一样戳它,寻找诸如输入验证或未安全页面之类的内容。IAST 在应用程序运行时内部工作,但仅分析应用程序代码的执行方式。它最常在 QA 团队运行功能测试的环境中看到。
云配置
云安全姿态管理(CSPM)
CSPM 是持续监控、检测和纠正云安全配置不正确以确保云基础架构正确配置和锁定的过程。它验证正在运行的内容,并对任何与其预期的不匹配的内容发出警报。例如,开放的端口或拥有比所需权限更多访问权限的安全角色。
云基础架构权限管理(CIEM)
CIEM 是管理单个或多云环境中的身份标识的访问权、权限或特权的安全过程。此过程有助于识别和避免由权限高于或广泛于应有权限而产生的风险。
CIEM 安全涵盖的问题示例包括未吊销长期未使用的凭据或向 EC2 实例授予不需要的通配符权限。
基础架构即代码(IaC)扫描
云原生生态系统的一个重要吸引力是自动化应用程序运行所需的一切。IaC 可以是 CloudFormation 模板、Kubernetes 清单、Docker 文件或 Terraform 计划等。IaC 扫描的想法是在它们进入生产环境之前发现明显的安全漏洞并防止它们发生问题。
IaC 扫描解决方案应包括以下内容:
- 防止漂移:在部署之前扫描 IaC 文件。将生产中的误配置映射回源。
- 优先风险:根据应用程序上下文、要求和依赖关系优先处理安全修复。
- 在源处修正:接收源处的修复建议,自动生成拉取请求。
运行时保护
云工作负载保护(CWPP)
这是 CNAPP 安全套件的运行时执行部分。它支持实现零信任模型,其中没有任何内容自动信任。
它将执行以下操作:
- 运行时检测:在容器运行时检测和防止可疑行为。自动化容器威胁响应。
- 系统硬化:通过使用限制性配置减少其漏洞表面,保护在主机上运行的 Linux 主机或基于 VM 的工作负载。
- 漏洞管理:在容器映像中(CI/CD 流水线)和注册表中检测容器映像中的漏洞。
- 网络安全:强制执行 Kubernetes 原生网络策略,包括分段,并向下提供网络流量可视化到容器级别。
- 合规性:验证容器合规性并确保在容器内进行文件完整性监视。
- 事件响应:为 Kubernetes 和其管理的容器提供取证分析和事件响应,即使容器已消失。
近期 Gartner 强调了运行时安全的重要性,并指出“支持提供多种运行时可见性技术的 CNAPP 供应商,包括传统代理、扩展的伯克利数据包过滤器(eBPF)支持、快照、特权容器和 Kubernetes(K8s)集成,以提供最大的部署灵活性。”
云检测和响应(CDR)
云检测和响应(CDR)在 CNAPP 中发挥关键作用,为云环境专门设计高级威胁检测、事件响应和持续监控能力。CNAPP 中的 CDR 利用云本地安全控制(如云工作负载保护平台(CWPP)和云安全姿态管理(CSPM)工具)实时获取云资产、配置和活动的可见性。通过持续监控和分析云日志、网络流量和用户行为,CDR 有助于检测威胁指标(IOCs)、异常和可疑活动,这些活动可能表明安全事件或漏洞。
一旦检测到潜在的威胁或漏洞,CDR 通过提供自动化或指导响应操作来实现快速的事件响应。它促进了安全事件的隔离、调查和纠正,帮助组织最小化潜在影响并减轻进一步的风险。
将 CDR 集成到 CNAPP 中创建了一个综合性的安全解决方案,结合了主动的云安全控制、漏洞管理、安全编码实践和持续监控和响应能力。它确保云原生应用在其整个生命周期中都受到保护,从开发到部署等,预防新兴威胁,并使组织能够在其云环境中保持强大的安全姿态。
图 1:Gartner 的 CNAPP 详细视图
为什么 CNAPP 必须具有运行时洞见?
CNAPP 正在成为一个接受和分析多个数据源的平台。随着采用基于容器/Kubernetes 的微服务,数据量正在爆炸式增长。这可能很快导致大量高保真和低保真信号,最终引发一个问题:你如何集中注意力处理云本地基础架构中最关键的风险?
这就是拥有关于当前运行情况的深入了解如何帮助您缩小需要紧急关注的事项列表的地方。简单地说,了解当前正在运行的情况(即运行时见解)是安全和 DevOps 团队采取行动处理最关键的风险所需的必要上下文。最终,这个上下文可以在开发生命周期的早期反馈回来,使 CNAPP 的“向左位移”使用案例更好地具有可操作的优先级。
运行时见解在日常工作中的实际应用示例
以下是 CNAPP 将有助于实现有价值和一致的策略执行的一些示例:
示例 1:正在使用的软件包
构建团队已经在构建和测试管道中实施了安全扫描,这非常棒。假设一个 SCA 工具正在针对存储艺术品的注册表运行,并使用 CVE 数据库中的已知漏洞标记它们。如果已经在生产中使用的某个东西被标记为新的关键警报会发生什么?如果它足够严重,比如 Log4Shell 漏洞,那么受影响的应用程序需要立即关闭或以其他方式减轻潜在攻击。强大的 CNAPP 利用运行时见解来确定是否已经在使用易受攻击的库,然后根据情况优先考虑风险和减轻措施。此外,您应该能够自动响应这种类型的事件。
示例 2:正在使用的权限
一个组织利用 Amazon Web Services(AWS)作为云基础架构。为特定项目创建了一个名为“CreateS3BucketAdmin”的自定义权限,但不再使用。此权限授予完全管理访问权限,以创建和管理 AWS 帐户中的 S3 存储桶。
这种情况带来了重大的安全风险。如果被攻击,攻击者可以利用这个未使用的权限创建和操作 S3 存储桶,可能导致数据暴露、数据丢失或未经授权访问敏感信息。
CNAPP 可以在识别和减轻此类安全风险方面发挥关键作用。它可以根据您的用户行为和其通常使用的权限进行自动定义策略。这些信息可以用于生成理想的基线,最好是编码化的,并且可以强制执行。这个“正在使用”的权限策略作为过滤器工作,并自动生成建议,可以使这个过程更加高效。
CNAPP 如何工作?
CNAPP 通过将运行时风险可见性、云风险可见性和开发工件风险可见性的需求结合在一个坚实的平台中,实现了云安全的整合。
为了具有这种集成的能力,CNAPP 通常遵循两种不同的工具仪表板:基于代理和无代理。
- 基于代理 保持接近工作负载。它需要在受检测机器上与工作负载一起执行的代理(通常称为传感器或探针)。在同一主机上可以实时查看运行时情况,并且可以访问系统级上下文信息,这是其他情况下不可用的。
- 无代理 是由云提供商提供的 API 启用的,可以在不需要代理运行的工作负载中收集相关上下文。它通常利用快照的能力,在时间点上的副本上推迟安全扫描,使原始工作负载保持不变。虽然这种方法缺乏代理提供的深入运行时见解,但它为处理不需要依赖实时数据的问题提供了无摩擦的解决方案,例如构建资产清单或在审计日志中识别已知的漏洞和异常行为。
强大的 CNAPP 解决方案需要采用这两种工具仪表板方法,以达到最大的有效性。使用代理获得运行时实时可见性和更好的系统级上下文信息,使用无代理在审计日志中识别已知的漏洞和异常行为。
CNAPP 解决方案能否与我的现有安全工具和系统集成?
CNAPP 需要集成到开发组织使用的运行时云环境和开发流程工具中。
集成到CI/CD管道中
CNAPP必须集成到您的CI/CD开发工具集中,以限制构建时的漏洞和配置错误暴露的风险。此集成对于工件扫描(无论是源代码还是编译二进制文件)都是至关重要的,并且它扩展到涵盖工件审计/日志记录遥测。
与云提供商集成
随着无代理工具的发展,CNAPP 供应商增加了与云提供商的集成水平,以利用提供的 API 来收集相关上下文,而不需要代理运行在工作负载的旁边。
大多数现有的 CNAPP 都支持三个主要的云提供商:Amazon Web Services(AWS)、Microsoft Azure 和 Google Cloud Platform(GCP)。此外,一些供应商将其集成扩展到其他提供商,如 Oracle Cloud、IBM Cloud、Alibaba Cloud、VMware Tanzu 等。因此,请确保选择支持您基础架构的解决方案。
与基础架构即代码(IaC)工具集成
通过这种集成,CNAPP 可以在部署之前扫描 IaC 文件并检测运行时漂移。一个例子是 Git 集成,用于根据预定义策略扫描传入的 Pull Request(PR),以查找安全违规行为。扫描评估的结果在 PR 本身中呈现。如果通过,用户可以合并;如果失败,用户无法合并。在 PR 中提供的信息也针对问题区域进行了定位,以帮助用户进行纠正。
与关键管理系统(KMS)的集成
这是允许对加密或签名资源进行扫描的必要条件。
案例研究:一家领先的机器人公司如何通过 CNAPP 实现成本节约、减少警报和工具整合
最近,一家领先的机器人公司采用了 CNAPP 来增强其云安全基础设施。通过实施 CNAPP,公司实现了显著的收益,包括安全工具的整合、警报的减少和成本节约。
在采用 CNAPP 之前,该公司使用了 6 种不同的安全工具,每种工具在其云环境中具有特定的安全功能。这种分散的方法导致了操作复杂性、重叠的功能和增加的维护成本。随着 CNAPP 的引入,该公司能够将所有安全工具整合到一个平台上,简化其安全操作并减少管理开销。
CNAPP 的实施也在优化警报管理流程方面发挥了关键作用。通过利用该平台的先进威胁检测和响应能力以及运行时洞察力来关注正在使用的软件包并优先考虑风险,该公司的安全警报数量显著减少了 30%。通过智能和上下文驱动的警报优先级排序,实现了这一改进,使安全团队能够专注于最重要的威胁,同时最小化噪音和误报。因此,团队的效率和响应能力显着提高,使他们能够迅速处理真正的安全事件。
此外,通过 CNAPP 合并安全工具带来了实质性的成本节约。通过消除多个安全工具的许可费用、维护成本和操作开销,该组织实现了总体安全支出的 20% 的降低。CNAPP 提供的简化管理和流程优化不仅降低了成本,还释放了宝贵的资源,使公司能够将它们用于其他战略性举措。
总的来说,采用 CNAPP 导致了整合的安全基础设施、简化的警报管理和显著的成本节约。这种全面统一的云安全方法促进了操作效率的提高、改善了事件响应能力,并增强了组织的安全姿态。
CNAPP 工具能为我的组织提供什么好处?
1. 增强云安全
CNAPP 是一个端到端的解决方案,可在任何工作负载、云或服务上提供广度,使组织能够在其云基础设施中保持一致的威胁检测和可见性。它还提供了深度,通过结合各种技术,如机器学习(ML)、规则、威胁供稿等,使其能够有效地检测和应对威胁。CNAPP 还通过提供攻击路径分析等预防性控制来减少云原生环境中的攻击面。
2. 实时威胁检测
CNAPP 提供实时的先进威胁检测能力。它利用云原生安全控件和运行时可见性技术,及时识别安全事件、异常和威胁迹象(IOCs)。CNAPP 提供端到端的检测,使组织能够迅速响应新兴威胁并最小化安全漏洞的影响。
3. 简化符合性
CNAPP 通过提供符合行业标准和最佳实践的安全控件和机制,帮助组织满足监管和合规要求。它有助于识别和消除安全漏洞,确保应用程序符合 PCI DSS、HIPAA、GDPR 等合规框架。
4. 改善 DevOps 协作
CNAPP 促进了开发和安全团队之间的协作和对齐,并在安全和数字创新之间找到了平衡。它与DevOps 工具和流程集成,使安全能够无缝地纳入持续集成和持续部署(CI/CD)流程中。
5. 操作效率
通过整合安全控件并提供集中式管理,CNAPP 简化了安全操作。它为检测、响应和管理安全事件提供了一个单一的视图。
结论
使用 CNAPP,组织可以整合云原生安全工具,简化操作,优先考虑风险,增强其整体安全姿态。
通过利用 CNAPP 的运行时洞察力,企业可以:
- 基于组织使用的内容优先考虑风险。
- 实现持续和实时检测。
- 使用攻击路径分析增强数据可视化,突出环境配置中存在的差距。
- 在云环境中实现端到端的检测。