Kubernetes 越来越成为勒索软件攻击的热门目标,但不变的备份是对云原生基础设施攻击的最佳解药。
译自 Managing Ransomware Threats in Kubernetes-Based Applications 。作者Jason English是Intellyx的首席分析师兼首席营销官,他为领先的技术解决方案提供商和软件创业公司提供咨询,帮助它们实现数字化转型。他的背景包括客户体验和交互设计、企业软件开发/测试生命周期、虚拟化、云和区块链。
勒索软件给组织带来了巨大损失,一次成功的攻击平均会让企业付出近450万美元的代价来恢复。未来几年勒索软件很可能继续上升,从全球经济中榨取数以十亿计的美元。
攻击正在增加,支付给勒索软件的赎金也在不断提高。最有可能成为受害者的是面向公众的机构,例如大学、医院和政府部门。这可能是因为这些关键任务机构损失最大,而且不太可能已经投入资源更新他们的防御措施。
事实上,这些高昂的费用被低估了,因为大多数公司不愿意承认它们遭受了勒索软件攻击或支付了赎金,以免让更多攻击者将它们视为容易的目标。
就像踢到脚趾一样,大多数公司会选择装作无事发生地瘸着腿走开。的确,如果业务不必达到专业运动员级别的敏捷性,一个受伤的脚趾还在可以接受的范围内。
但是,由于大多数公司转向 Kubernetes 和云原生应用以获取快速部署和可扩展性的敏捷性,可以预见它们的 IT 安全团队会全力测试每一个云原生连接中的勒索软件风险。
根据 Veeam 2023 数据保护趋势报告的调查,85% 的组织表示他们在过去 12 个月内遭遇网络攻击。这些攻击不仅限于传统系统,Kubernetes 也越来越成为恶意软件攻击(包括勒索软件)的目标。
在所有这些场景下,拥有不变的备份和灾难恢复策略至关重要,这样如果遭遇攻击,业务可以迅速恢复正常运转。有哪些新型的针对云原生的勒索软件攻击模式需要特别注意?
Kubernetes是一个开源软件项目,它的底层控制平面、扩展、安全、数据管理等组件也都是开源的(云原生图景给出了整体画面)。
像Kubernetes这样的项目在被CNCF批准毕业和发布下载之前,已经过了充分的战场考验和测试。此外,它还有几家软件供应商和云平台提供商提供了受支持的企业版和托管服务版本。
但是,这并不意味着存在一个普遍认可的、理想的方法来配置、部署、管理和保护Kubernetes集群及其底层的容器镜像和组件。
开源社区有出色的白帽贡献者在努力解决常见的漏洞和安全风险(CVE),这通常作为兼职工作。尽管他们在跟踪解决方案方面做得很好,但永远也赶不上黑帽勒索软件社区的速度,后者也可以访问完整的开源代码,并有大量时间尝试下一个零日漏洞利用。
此外,由于建立一个完整的基于Kubernetes的应用栈的复杂性,许多开发人员会下载工具、配置方案、组件和示例代码来推进工作。即使在管理良好的代码仓库中,也无法确保成千上万的可下载组件没有被注入恶意代码或病毒。
在某种程度上,单体栈更容易在边界进行保护。而且,在最坏的加密攻击情况下,从物理备份中恢复数据在技术上也更简单。
漏洞会在完全自动化的基础设施即代码(IaC)配置和部署工作流中传播。由于可能过时或存在问题的软件包可以在云环境中进行水平扩展,风险因此变得更大。
Kubernetes在安全方面仍有一定优势。动态命名空间、密钥管理以及无状态的微服务工作负载的表面特征,这些负载在完成后可以启动和关闭,在某些情况下可以增加攻击者的难度。
不幸的是,当基于Kubernetes的应用程序在数百或数千个集群中复制工作时,它受到勒索软件的影响并不会比使用网络隔离的本地服务器、虚拟机及其挂载的存储资源要少。
Red Hat的云和DevSecOps战略总监Kirsten Newcomer分享了一个规避供应链问题的方法:
“很多客户已经实现了OpenShift部署的自动化,这样他们就可以(并且确实)定期从头开始重新部署。这可能是每六周一次,也可能是每三个月一次。当然,容器化的应用也需要重新部署。但是,这种管理方式可以最大限度地减少需要备份的内容。只需保留应用程序的状态数据即可。您不需要备份等。”
“当然,您必须保护存储Playbook(或Terraform文件)、配置文件和容器镜像仓库的访问权限。理想情况下,您还需要对所有这些文件进行签名,以验证其完整性。”
权限问题和技术问题一样,也多是实践方面的问题。
公司采用Kubernetes的明确原因是希望更快地推进进度。在这样做的过程中,他们会创建大量的应用程序、基础设施和部署代码库。为配合所有这些自动化和架构,您需要明确决定谁(或什么)可以访问。
实现完全自动化部署最困难的一个方面是设置访问和身份管理(AIM)规则,即使只涉及会话令牌和用户访问策略,这已经非常复杂。
在Kubernetes环境中,大多数信号和消息都是机器与机器之间的通信。操作员失去了对用户会话状态的视线,因为API调用和数据在短暂的、可能广泛分布的微服务之间传递,每个微服务执行自己的功能作为工作负载。由于物理实现的位置不再相关,因此授权规则通常是自定义的。
AIM为黑客提供了最常见的攻击途径,因为几乎每一次勒索软件攻击都涉及扫描不一致的权限,然后提升特权,就像最近的Siloscape Windows容器远程代码执行利用那样。
为了限制权限,可以考虑实施一致的、细粒度的基于角色的访问控制(RBAC)和基于属性的访问控制(ABAC)策略,遵循最小特权访问和零信任模型的原则,限制未经授权甚至意外的活动类型。
人工智能(AI)聊天机器人擅长个性化,通过研究业务交流,它们可以学习如何与人类和业务系统进行交互。得益于随时可用的会话式AI和聊天机器人的道德模糊性,犯罪分子现在拥有了完美的网络犯罪伙伴。
可怕的是,即使是非熟练的黑客也可以使用ChatGPT或其他基于AI的自动化例程来编写恶意代码并进行适应性的复杂攻击,一旦使用现有的代码和脚本进行训练,这些资源可以在暗网上找到。
随着机器学习的进步,坏的机器人在社会工程方面也在变得更加智能。它们可以基于过去的技术支持和客户服务对话编写令人信服的网络钓鱼电子邮件或聊天,可以欺骗员工,通过社会工程非法进入一个账户或让某人下载获得网络特权以传递有效载荷。
最糟糕的是,机器人持续扫描漏洞和进行自动化攻击几乎不需要人力或额外成本,因此可以预计它们的频率将呈指数增长。
面对如此多的关键云原生数据利用手段,最佳的保险措施是采取积极的方法定期生成不可变的备份,这意味着备份无法被攻击者在网络上删除、加密或更改。
Kasten by Veeam提供了一个专门为基于Kubernetes的应用程序数据设计的备份解决方案,提供不可变备份和根据策略自动创建这些备份。
随着全球数字化骨干越来越多地由云原生开发提供支持,公司将继续争相推出新应用功能和数据服务。以这种变革速度,一些创新的勒索软件攻击被忽略以及Kubernetes部署遭到攻击是不可避免的。
尽管如此,没有理由通过支付赎金来资助勒索软件敲诈者。如今,一些犯罪分子甚至不再负责加密数据,因为没有人会相信黑客会清理他们制造的混乱。网络犯罪分子改为敲诈第二笔或第三笔付款,以避免破坏受影响的数据或基础设施。
保护您的关键系统和数据、防止灾难性停机时间的最佳方式是什么?假设新型勒索软件攻击可能会在明天发生,并始终拥有基于不变性的强大备份和灾难恢复机制,以最大限度地提高成功数据恢复的机会。