一份新的调查报告表明,在云计算部署中,基础设施即代码(IaC)模板配置错误的比例很高,这使它们容易受到。
在云计算时代,需要快速扩展或部署基础设施以满足不断变化的组织需求,新服务器和节点的配置是完全自动化的。这是使用机器可读的定义文件或模板完成的,这是基础设施即代码(IaC)或连续配置自动化(CCA)的过程的一部分。
Palo Alto Networks公司的研究人员对从GitHub存储库和其他地方收集的基础设施即代码(IaC)模板进行了一项新的分析,确定了近20万个包含不安全配置选项的此类文件。使用这些模板可能会导致严重的漏洞,从而使基础设施即代码(IaC)部署的云计算基础设施及其保存的数据面临风险。
研究人员说:“就像人们忘记锁车或打开窗户一样,网络者可以使用这些错误的配置来避开防御措施。如此高的数字解释了在以往的调查报告中发现65%的云计算安全事件是由于客户配置错误引起的。从一开始就没有安全的基础设施即代码(IaC)模板,云计算就容易受到。”
例如,模板中定义的S3存储桶的10%以上是公开的。过去,安全性不高的S3存储桶是许多调查报告中的数据泄露的根源。
缺少数据库加密和日志记录对于数据和调查潜在的未经授权的访问非常重要,这也是CloudFormation模板中常见的问题。其中一半不启用S3日志记录,另一半不启用S3服务器端加密。
亚马逊公司的Redshift数据仓库服务也观察到了类似情况。11%的配置文件生成了公开的Redshift实例,43%的用户未启用加密,45%的用户未打开日志记录。
支持多种云计算提供商和技术的Terraform模板并没有表现得更好。默认情况下,大约有66%的Terraform配置的S3存储桶未启用日志记录,26%的AWS EC2实例已将SSH(端口22)对外公开,并且有17%的模板定义的AWS安全组默认允许所有入站流量。
Kubernetes YAML文件中不安全配置的发生率最小,但确实如此。在发现的不安全的YAML文件中,有26%的Kubernetes配置以root用户或帐户运行。
Palo Alto Networks公司研究人员说:“以容器为根目标的配置为网络者提供了拥有该容器几乎所有方面的机会。这也使执行容器的过程更加容易,从而使主机系统面临其他潜在。安全和DevOps团队应确保容器不使用root用户或帐户运行。”
基础设施即代码(IaC)模板配置错误的类型及其普遍性(缺少数据库加密和日志记录或公开的服务)与Palo Alto Networks公司在过去的调查报告中涵盖并在实际的云计算基础设施部署中检测到的问题类型一致:
这表明在自动化基础设施部署过程中使用基础设施即代码(IaC)模板而不首先检查它们是否存在不安全的配置或其他漏洞,这是导致在观察到云计算弱点的一个重要因素。
网络犯罪组织经常将云计算基础设施作为目标,以部署利用者所支付的处理能力的加密恶意软件。但是,一些组织中也正在冒险进行加密以外的活动,并将被黑客入侵的云计算节点用于其他恶意目的。
Palo Alto Networks公司的研究人员说,“很明显,网络者正在使用由较弱或不安全的基础设施即代码(IaC)配置模板实现的默认配置错误,将会绕过防火墙、安全组或VPC策略,并不必要地将组织的云计算给网络者。左移安全性是将安全性移至开发过程中的最早点。在云计算部署中始终如一地实施左移实践和过程的组织可以迅速超越竞争对手。与DevOps团队合作,将其安全标准嵌入基础设施即代码(IaC)模板中。这对DevOps和安全来说是双赢的措施。”任弼时简历
网友评论 ()条 查看