kaiyun官方注册
您所在的位置: 首页> 通信与网络> 业界动态> Windows恶意软件以Kubernetes开源容器集群管理系统为目标

Windows恶意软件以Kubernetes开源容器集群管理系统为目标

2021-06-25
来源:嘶吼专业版

WindowsContainer已成为第一个已知的以Windows Container为目标的恶意软件的受害者。在这次攻击活动中,恶意软件团伙穿透Kubernetes集群以植入后门,使得攻击者可以窃取数据和用户凭据,甚至劫持集群中托管的整个数据库。

  该恶意软件是由Unit 42安全研究员Daniel Prizmant发现的。他将其命名为“Siloscape”,发音为“Silo escape”。该恶意软件会撬开Web服务器和数据库中的已知漏洞,从而破坏Kubernetes节点和后门集群。

  在周一发布的一篇文章中,Prizmant写道,Siloscape是通过Windows Container攻击Kubernetes集群的恶意软件,其主要目的是打开“后门进入配置不当的Kubernetes集群以运行恶意container”。

在较受欢迎的容器的中脱颖而出

  在另一篇文章中,Unit 42研究人员Ariel Zelivansky和Matthew Chiodi将容器与货船上用于打包不同材料的集装箱进行了比较。云容器具有类似的功能,因为它们可以将不同的材料打包在一起以提高效率,从而使开发团队能够快速移动并“以几乎任何规模”运行。

  以这种方式在容器中运行应用程序被称为容器化,并且与其他远程工作方式一样,由于COVID-19的流行,它得到了大力发展。研究人员指出:“近年来,我们看到越来越多的组织在云中使用容器,尤其是因为COVID-19大流行导致许多组织在寻求一种更快地移动和更有效地部署云工作payload的方式。”

第一个针对Windows Container的恶意软件

  根据Zelivansky和Chiodi的说法,这是研究人员第一次看到针对Windows Container的恶意软件。他们说,云环境中的Linux操作系统已经非常流行。

  Unit 42研究人员已经确定了23名Siloscape受害者,并表示有证据表明该活动已于一年多前发起。

  Prizmant通过收集服务器的创建日期来确定该活动的开始日期,大约在2020年1月12日。但他也指出,这并不一定意味着Siloscape是在那个日期创建的,相反,这很可能是恶意软件活动开始的时候。

  经过特别艰难的逆向工程,Prizmant能够连接到Siloscape命令和控制(C2)服务器,他发现该服务器总共托管了313个用户。他说,这意味着Siloscape是“更广泛的活动的一小部分”。

Siloscape如何逃逸

  该恶意软件首先针对常见云应用程序(例如Web服务器)中的已知漏洞(“1-days”)进行攻击。这种初始访问可能是通过利用在野外发现的漏洞获得的。去年,Prizmant记录了一种打破Windows Container边界的方法。在2020年发表的一份报告中,他描述了如果攻击者从容器中逃离,他们会做什么。

  他选择将重点放在当前的场景上:从Kubernetes中的Windows集群节点逃脱,这将允许攻击者获得节点外的访问权并扩散到集群中。

  在入侵Web服务器后,Siloscape使用容器逃逸策略在Kubernetes节点上实现代码执行。Prizmant说,Siloscape大量使用混淆使得逆向工程变得很麻烦。“整个二进制文件中几乎没有可读的字符串。虽然混淆逻辑本身并不复杂,但它使得反转这个二进制文件变得非常艰难,”他解释说。

  该恶意软件会混淆函数和模块名称(包括简单的API),并且仅在运行时对其进行反混淆。他说,Siloscape不是仅仅调用函数,而是“努力使用同一函数的原生API(NTAPI)版本”。“最终结果是恶意软件很难用静态分析工具检测到,并且让逆向工程也困难重重。”

  “Siloscape使用一对唯一的密钥为每一次新的攻击进行编译,”Prizmant继续说道。“硬编码的密钥使每个二进制文件与其他二进制文件略有不同,这也就解释了为什么我在任何地方都找不到它的哈希值,因此也就无法仅通过哈希来检测Siloscape。”

Siloscape逃逸后会干什么

  在Siloscape破坏节点后,恶意软件会四处寻找使其能够传播到Kubernetes集群中其他节点的凭据。然后,它使用IRC(一种旧协议)通过Tor匿名通信网络连接到其C2服务器,等待命令。

  Prizmant采用了一个他认为在连接到C2服务器时看起来合法的用户名。成功连接后,他发现它仍在工作,那里有23个“活跃受害者”,以及一个名为admin的频道操作员。

  不幸的是,大约2分钟后,他被踢出了服务器。两分钟后,服务器关闭了——至少,它在onion他曾经连接的原始域中不再处于活动状态。

  但Siloscape恶意软件只是整个活动的一小部分。C2服务器上的活跃用户比他在#WindowsKubernetes频道中看到的要多得多——确切地说,总共有313个用户。然而,他无法识别、联系或警告他们中的任何一个。

  “可悲的是,当我连接到服务器时,频道列表是空的,这表明服务器被配置为不显示其频道,”Prizmant写道。“因此,我无法从频道名称中获得更多信息。”

  但研究人员确实设法收集到了一个重要的细节,即用于受害者姓名的约定。Unit 42研究人员使用“php_35”,它的Siloscape样本通过易受攻击的php实例执行。包含字符串“sqlinj”的其他名称表明攻击者可能设法通过SQL注入实现代码执行。

加密劫持、供应链中毒等的危险

  Prizmant在2020年7月的帖子中表示,他的研究表明“在[Windows Server Containers]中运行任何代码,实际上都与在主机上运行admin一样危险。这些容器不是为沙盒设计的,并且我发现逃离它们很容易。”

  他在周一的帖子中警告说,这可能使攻击者能够窃取关键凭据、机密和内部文件,甚至是集群中托管的整个数据库。如果攻击者将组织的文件作为要挟,它甚至可能导致勒索软件攻击。他说,更糟糕的是组织大规模迁移到云端所带来的威胁。他说,鉴于许多人正在使用Kubernetes集群来开发和测试代码,漏洞“可能导致毁灭性的软件供应链攻击”。

  在周一的帖子中,他解释说,破坏整个集群比破坏单个容器要严重得多,因为“一个集群可以运行多个云应用程序,而单个容器通常运行单个云应用程序。”

  他还指出,一方面,Siloscape与大多数云恶意软件不同,后者通常侧重于加密挖掘和DoS之类的资源劫持。另一方面,Siloscape“不会将自己局限在任何特定目标上,”Prizmant说。“相反,它为各种恶意活动打开了后门。”

最近的供应链与Kubernetes攻击

  与Prizmant警告的相类似,供应链攻击已经与间谍软件安装、SignSight操作、Able Desktop的入侵、航空公司的漏洞以及其中最庞大的供应链:太阳风(SolarWinds)对美国政府的入侵密切相关。

  最近的一些头条新闻也报道了Kubernetes的其他一些网络安全事故,包括2021年4月的安全漏洞, Kubernetes所使用的其中一个Go代码库中存在漏洞,该漏洞可能会导致CRI-O和Podman容器引擎的拒绝服务攻击。CRI-O和Podman都是容器引擎,类似于Docker,主要用于在云端执行操作和管理容器。CRI-O和Podman使用“containers/storage”来处理容器镜像的存储和下载。四月份早些时候,一场有组织的、自我传播的cryptomining活动被发现,其目标是配置错误的开放Docker Daemon API端口。

  研究人员表示,同样在4月份,微软的云容器技术Azure Functions被发现存在一个漏洞,该漏洞允许攻击者直接写入文件。几个月前,也就是2021年2月,一种新的恶意软件正在劫持Kubernetes集群以对Monero进行加密。

  云基础设施需要更高的安全性,另一个可以佐证的例子是,在最近的实验室测试中,一个简单的Docker容器蜜罐在24小时内被用于四次不同的犯罪活动。

云原生战略

  企业数据安全公司Comforte AG的产品经理Trevor Morgan认为Siloscape是一种威胁,它会让企业对采用云计算感到紧张。“企业采用云原生战略是因为他们希望提高创新能力。不幸的是,大多数组织都在努力确保正确的数据安全级别,以避免损害云原生应用程序架构,”他周一通过电子邮件告诉Threatpost。

  “像Siloscape这样的恶意软件通过攻击容器化的核心使这项工作复杂化,并在云原生开发工作方面致使大家产生犹豫。”他指出,“恶意软件威胁在灵活、谨慎以及安全处理敏感数据之间做出了错误的选择。”

  Morgan建议,专门为云原生应用程序构建的以数据为中心的安全性,例如专门为云本地应用程序构建的标记化,通过保护数据本身而不是“围绕云本地应用程序环境的分层的、甚至是无定形的边界”,可以“帮助在这两者之间取得适当的平衡”。

  “组织可以放心,数据安全不会妨碍速度和灵活性,因为即使在容器中的标记化敏感信息,如果落入犯罪分子之手也不会受到损害,”他说,“采用云原生策略的组织可以在实现效率的同时确保数据安全。”

应对策略

  Prizmant建议用户遵循Microsoft的建议,不要将Windows容器用作安全功能。微软建议对依赖容器化作为安全边界的任何事物严格使用Hyper-V容器,他指出:“应假定在Windows Server容器中运行的任何进程都与主机上的admin具有相同的权限,在本例中就是Kubernetes节点。如果您在需要保护的Windows Server容器中运行应用程序,我们建议将这些应用程序移至Hyper-V容器。”

  “Siloscape向我们展示了容器安全的重要性,正式因为存在容器逃逸,恶意软件才给我们造成了如此重大的损害,”他写道。“组织保持配置良好且安全的云环境以抵御此类威胁至关重要。”




电子技术图片.png

本站内容除特别声明的原创文章之外,转载内容只为传递更多信息,并不代表本网站赞同其观点。转载的所有的文章、图片、音/视频文件等资料的版权归版权所有权人所有。本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如涉及作品内容、版权和其它问题,请及时通过电子邮件或电话通知我们,以便迅速采取适当措施,避免给双方造成不必要的经济损失。联系电话:010-82306116;邮箱:aet@chinaaet.com。
Baidu
map