广告

IaC模板漏洞!导致云环境遭遇根源性威胁

  • 浏览(108)
  • 评论(0)
  • 译者:k8s

在云计算时代,需要快速扩展或部署基础设施以满足不断变化的组织需求,新服务器和节点的配置是完全自动化的。作为基础设施即代码(IaC)或连续配置自动化(CCA)等过程的一部分,这是用机器可读的定义文件或模板来完成的。

IaC模板漏洞!导致云环境遭遇根源性威胁

Palo Alto Networks的研究人员对从GitHub存储库和其他地方收集的IaC模板进行了一项新的分析,发现了近20万个包含不安全配置选项的此类文件。使用这些模板可能会导致严重的漏洞,从而使IaC部署的云基础设施及其保存的数据面临风险。


研究人员说:“就像你忘记锁上汽车或关好车窗,攻击者可以利用这些错误的配置绕过防御系统。这个数字解释了为什么在之前的一份报告中,我们发现65%的云事故是由于用户的错误配置造成的。如果一开始就没有安全的IaC模板,云环境就已经具备了被攻击的条件。”


广泛的IaC问题


有多种IaC框架和技术,最常见的是Kubernetes YAML(39%)、Terraform by HashiCorp(37%)和AWS CloudFormation(24%)。其中,42%的CloudFormation模板、22%的Terraform模板和9%的Kubernetes YAML配置文件存在漏洞。


Palo Alto Networks的分析表明,使用AWS CloudFormation模板的基础设施部署中有一半的配置是不安全的。报告进一步按受影响的AWS服务的类型进行了分类:Amazon Elastic Compute Cloud(Amazon EC2)、Amazon Relational Database(RDS)、Amazon Simple Storage Service(Amazon S3)或Amazon Elastic Container Service(Amazon ECS)。


例如,模板中定义的S3存储桶有10%以上是公开的。而安全性不高的S3存储桶是许多公开报告的数据泄露的根源。


缺少数据库加密和日志记录(对于保护数据和调查潜在的未经授权的访问非常重要),这也是CloudFormation模板中常见的问题。其中一半不启用S3日志记录,另一半不启用S3服务器端加密。


亚马逊的Redshift数据仓库服务也出现了类似的情况。11%的配置文件生成公开的Redshift实例,43%没有启用加密,45%没有打开日志记录。


支持多个云提供商和技术的Terraform模板并没有表现得更好。大约66%的Terraform配置的S3 bucket没有启用日志记录,26%的AWS EC2实例将SSH(端口22)公开到因特网,17%的模板定义的AWS Security Groups默认允许所有入站流量。


在Terraform模板中发现的其他常见错误配置包括:

  • AWS身份和访问管理(IAM)密码不符合行业最低标准(40%)
  • 没有CPU或内存资源限制的容器(64%)
  • 具有公开SSH的Azure网络安全组(NSG)(51%)
  • 未启用日志记录的谷歌云平台存储(58%)
  • 未启用安全传输的Azure存储(97%)

Kubernetes YAML文件的不安全配置最少,但都很关键。在发现的不安全的YAML文件中,有26%的Kubernetes配置以根用户或特权帐户运行。


Palo Alto Networks的研究人员说:“允许容器作为根目录的配置为攻击者提供了一个机会,让他们几乎拥有该容器的任何方面。这也使得执行容器转义攻击的过程更容易,从而使主机系统容易受到其他潜在威胁。安全和DevOps团队应确保容器不使用根帐户或特权帐户运行。”


实际部署中反映的IaC错误配置


IaC模板错误配置的类型及其普遍性(缺少数据库加密和日志记录或公开的服务)与Palo Alto Networks在过去的报告中发现并涵盖的实际云基础设施部署中的问题类型一致:


  • 76%的组织允许公共访问端口22(SSH)
  • 69%的组织允许公共访问3389端口(RDP)
  • 64%无法为其数据存储启用日志记录
  • 62%不启用数据存储的加密
  • 47%的组织不使用无服务器功能的跟踪功能


这表明,在自动化基础设施部署过程中使用IaC模板时,不首先检查它们是否存在不安全配置或其他漏洞,是导致云易受攻击的一个重要因素。


网络犯罪集团通常以云基础设施为目标,部署加密挖矿恶意软件。有一些人还将被攻击的云节点用于其他恶意目的。


“很明显,攻击者正在使用由薄弱或不安全的IaC配置模板实现的默认配置错误,绕过防火墙、安全组或VPC策略,将云环境暴露给攻击者。shift-left安全性是指将安全性移到开发过程中可能的最早阶段。在云部署中始终如一地实施shift-left实践和过程的组织可以迅速超过竞争对手。与DevOps团队合作,将安全标准嵌入到IaC模板中。这是DevOps和安全的双赢。”

  • 分享到:
  • icon
  • icon
  • icon
  • icon
箭头