在云的本机环境中,企业只在运行时采用安全措施是不够的。
在当今的原生云世界中,随着基础架构的快速发展,大规模构建云计算环境需要可重复性和灵活性,因此从一开始就应该优先考虑快速改变和扩展基础架构的能力。 值得一提的是,对很多人来说,云计算的安全只与运行时出现的错误配置和违规行为有关。
在不关注流程和代码的情况下构建,无法确定基础设施问题。 这与企业设计和构建现代云计算基础架构的方式不一致。 构建不可变的基础设施时,需要开始考虑如何保护不可变的基础设施,孤立地提高运用时的安全性是不够的。 另一方面,只有在构建时才能解决云计算的安全风险,如果生产基础设施缺乏完整的环境,云计算环境中也可能存在漏洞。
以下重点是在构建和运行云计算基础架构时通过扫描来检测安全问题,概述其价值和缺点,并说明同时利用这一方面的重要性。
运行时云安全状态管理
为了应对云计算环境日益复杂的情况,云计算提供商以管理云计算资源为中心提供了丰富的元数据和遥测技术。 要构建可持续的云安全计划,必须将这些数据分析为一致和可扩展的收集。
产生了AWS公司的Prowler和谷歌云的Forseti等由技术社区主导的项目。 这两个项目都使用公开的API收集配置数据并检查配置错误,从而实现了部署后配置错误的检测。
目前,大多数云计算提供商都在控制平台管理服务中包括了这样的功能。 使用本机工具(如AWS配置、Azure策略和谷歌资产列表)获得云计算的基本可见性比以往任何时候都更容易。
运行时云的安全性当然是最佳实践,但也有自身的优点和缺点。
(1)变更追踪
运行时扫描遵循配置的实际状态。 当以各种方式管理配置时,运行时扫描仍然是识别和评估随时间变化的配置的主要技术。
)2)符合法规要求
大多数受管制行业目前都需要持续的变更管理审核和跟踪。 为了满足这些需求,大多数扫描仪都将其检测映射到行业基准。 控件映射到基准部分后,企业可以使用扫描报告作为基准证据来满足大多数行业的特定需求和审计。
)3)接近实时结果
根据扫描频率,运行时扫描可以快速识别和分类正在进行的问题。 将扫描程序连接到票证或监控工具可以快速响应和缓解。
)4)低信噪比
大多数扫描仪仍然严重依赖场景不确定性的检测逻辑,这导致了一堆无关紧要的发现,尤其是在资源寿命较短的动态环境中。 例如,在使用自动缩放的环境中,运行时扫描会在两次扫描之间返回不一致的结果,并生成表示最新资源状态的输出。 此外,扫描身份和访问管理( iam )权限或完整的网络拓扑可能会错误地警告您配置更改。
)5)不切实际的发现
如果标记了错误的配置,最直接的问题通常是“如何解决? ”。 中选择所需的族。 如果修复单个云配置错误需要更多的手动步骤,或者无法恢复配置,则升级最终会浪费开发人员的宝贵时间。
(6)重复的错误配置
对于利用基础架构代码框架来协调云计算资源的团队来说,仅在运行时修复错误的配置会带来重复的风险。 要避免出现云计算配置错误,必须在源位置进行修复。
构建云安全状态管理
云计算基础架构的扫描配置在构建过程中并不新鲜。 识别编码错误需要一些时间,特别是在APP应用安全中。 但是,随着基础设施作为提供大量云计算资源的代码的兴起,这种方法的应用在过去几年中得到了大幅扩展。
基于代码的扫描配置使用与运行时扫描程序相同的高级策略,并搜索相同的资源及其配置状态。 当您使用作为程序代码( IaC )的基础结构(如开放源代码工具Checkov )扫描程序时,配置文件将被视为一个独立的清单,说明如何配置资源和设置属性。
通过在运行时应用在解决云计算安全性方面获得的许多经验教训,可以使用构建时扫描来发现其他有价值的方面和缺点。
(一)切实可行的调查结果
通过在代码中列出和管理配置,可以轻松找到导致配置错误的确切属性和参数。
)2)合作解决
通过对所有代码的检测和响应,每个开发人员都有助于解决持续存在的问题。 通过在同一工具中统一检测和修复,从一开始就可以轻松地在日常工作流中构建云计算的安全性。
(3)自动应答
通过机器可读语言识别和修复问题,可以更轻松地开发自动化功能,零接触或几乎没有人接触的情况下查找和修复配置。 自动化对于大规模构建和维护安全的云计算基础架构至关重要。
(4)无关的发现
仅在生成时检测到的配置问题可能代表了部分更完整的配置情况。 例如,假设某个组织在运行时管理网络组件,并在生成时计算资源。 了解增强的VPC或安全组后,外人就无法访问,从而可以轻松地避免暴露在全球互联网上面向EC2的徽标中。
)5)场景缺失
可能会发生配置冲突,因为它完全依赖于生成时的发现,而不是运行时的实际配置状态。 例如,如果尝试加密以前未加密的数据库实例,则大多数受管数据库服务可能无法更改,因为事后不允许加密。
(6)部分覆盖
尽管它在增长,但作为代码框架的基础架构并不支持所有公共可用的云计算服务。 如果以此为中心开发了错误的配置检测策略,则构建的有限支持也会受到限制。
两个都很棒的做法
云计算服务和配置框架比以往任何时候都要多,我们面临着安全挑战,需要在整个运营和开发生命周期中采用统一的方法来管理云计算的安全。
这就是业内专家认为,在构建和运营云计算基础架构时进行扫描是一种完整的战略,而不是竞争战略的原因。
运行时扫描几乎实时准确地描述当前配置的状态,但只有在添加构建时扫描后,团队才能纠正错误。