EleKtra-Leak挖矿攻击:攻击者通过迅速窃取(AWS) IAM密钥来挖矿

VSole2023-11-30 14:44:07

相关研究人员最近发现了一个异常活跃的攻击活动,研究人员称之为 EleKtra-Leak,它会自动窃取 GitHub 公共存储库中泄漏的身份和访问管理 ( IAM ) 密钥。因此,与该活动相关的攻击者能够创建多个 AWS 弹性计算 ( EC2 ) 实例,用于广泛和持久的加密劫持。

分析发现,攻击者能够在五分钟内识别并使用 GitHub 上首次泄漏的 IAM 密钥,这一发现证明了攻击者是如何利用云自动化技术来实现扩展加密劫持的目标。攻击者似乎使用自动化工具不断复制公共 GitHub 存储库,并扫描泄漏的亚马逊网络服务 ( AWS ) IAM 密钥。

分析过程

调查过程中,研究发现,攻击者可能会识别频繁出现的 AWS 账户 id,以阻止这些账户 id 免受未来的攻击或自动化脚本的攻击。因此,研究人员设计了一种新颖的调查架构来动态创建和泄漏不可归因的 AWS 密钥。

多年来,攻击者越来越多地使用 GitHub 作为攻击的初始载体。GitHub 的一个强大功能是它能够列出所有公共存储库,这使得开发人员和攻击者能够实时跟踪新的存储库。

考虑到这个功能,研究人员选择 GitHub 作为其窃取 AWS 密钥的实验平台,将明文泄露的密钥写入新创建的 GitHub 存储库中的文件中,该存储库是研究人员随机选择并从公共 GitHub 存储库列表中复制的。研究人员将 AWS 密钥泄露到复制存储库中随机创建的文件中,然后在成功提交后将其删除。

一旦将窃取的密钥提交到存储库,研究人员就会立即删除了它们。最初,IAM 密钥使用 Base64 编码。然而,尽管像 trufflehog 这样的工具可以找到泄漏的 Base64 IAM 密钥,但事实上没有攻击者能找到密钥。

研究人员认为,攻击者目前没有使用能够解码 base64 编码密钥的工具,其中一个原因可能是因为这些工具有时会产生噪音并产生许多误报。

研究人员随后进行了以明文形式泄露 AWS 密钥的实验,攻击者发现这些都是明文写的,隐藏在过去提交的一个随机文件中,并添加到复制的 repo 中。

GitHub 扫描

当研究人员在 GitHub 中泄漏 AWS 密钥时,GitHub 的秘密扫描功能发现了它们,然后 GitHub 以编程方式通知 AWS 泄漏的秘钥。这导致 AWS 自动将隔离策略应用于与密钥关联的用户,称为 AWSCompromisedKeyQuarantine。

最初,研究人员保留了 AWS awspromisedkeyquarantine 策略,在攻击者测试泄漏的密钥时被动地监控研究人员的侦察。研究人员有意将 AWS 隔离策略替换为原始的 IAM 策略,以进一步了解整个活动。

需要注意的是,应用 AWS 隔离策略不是因为攻击者发起了攻击,而是因为 AWS 在 GitHub 中发现了密钥。研究人员认为,攻击者可能能够找到 AWS 未自动检测到的已泄漏的 AWS 密钥,并随后在 AWSCompromisedKeyQuarantine 策略之外控制这些密钥。

在研究人员使用泄露密钥进行的实验中,攻击者在 AWS 应用隔离策略后四分钟内开始。下图显示了这些活动的时间轴。

攻击者的活动时间轴

上图最后一行显示,从 CloudTrail 事件 AttachUserPolicy 开始,AWS 在时间 13:30:22 时应用隔离策略。仅仅四分钟后,在 13:34:15,攻击者开始使用 AWS API descripregions 进行侦察。CloudTrail 是一个审计工具,它记录在配置的云资源中发生的和事件。

攻击结构

下图显示了整个自动化攻击结构。GitHub 公共存储库被实时扫描,一旦找到密钥,攻击者的自动化就会开始。

Operation CloudKeys 架构

下图显示,攻击者首先执行 AWS 帐户侦察。

AWS 帐户侦察

在侦察之后,攻击者创建 AWS 安全组,然后在任何可访问的 AWS 区域上最终启动每个区域的多个 EC2 实例。

修改安全组并启动第一个 EC2 实例

研究人员收集的数据表明,攻击者的自动化是在 VPN 环境中进行的。根据 CloudTrail 的日志记录,研究人员在多个地区重复了相同的操作,总共产生了 400 多个 API 调用,加起来只用了 7 分钟。这表明攻击者成功地隐藏了自己的身份,同时对 AWS 账户环境发起了自动攻击。

启动实例和配置

一旦发现 AWS 密钥,自动化的一部分将包括在不同地区运行实例的攻击者。下图显示了有关实例类型及其跨多个区域分布的统计信息。

攻击者使用大格式云虚拟机执行操作,特别是 c5a.24xlarge AWS 实例。加密挖矿操作通常使用大格式云实例,因为它们将提高处理能力,使加密劫持者能够在更短的时间内挖掘更多加密货币。

跨区域实例化的 AWS EC2 实例类型

CloudTrail 日志中没有记录用户数据。为了捕获数据,研究人员对 EC2 卷执行了取证分析。

如下图所示,挖矿自动化在挖矿软件启动 EC2 配置过程中自动显示用户数据。

挖矿软件的配置脚本

下图显示了存储在 Google Drive 中的有效负载。Google Drive url 在设计上是匿名的,无法将此 URL 映射到谷歌 Cloud 用户帐户。下载的有效负载被加密存储,然后在下载时解密,如第 6 行所示。

有效负载是一个已知的挖掘工具,哈希值可以与之前的研究相关联,研究人员认为相同的攻击者使用公开泄漏的 Docker 服务来执行加密劫持。他们还确定了提交给 VirusTotal 的报告,这些报告具有相同的哈希,并使用相同的持久化命名约定 ( "appworker" ) ,如下图所示。

共享相同元数据的已知加密挖掘二进制文件

攻击者使用的 AMI(Amazon Machine Image 类型也很独特,它是用于创建虚拟服务器 ( 即 AWS 环境中的 EC2 实例 ) 的主映像。被识别的映像是私有的,它们没有在 AWS 市场上列出。下图显示了使用以下 AMI 实例的 id。

私有 AMI 映像 id 列表

其中一些图片是 Ubuntu 18 版本。研究人员认为,所有这些攻击指标 ( ioc ) 都表明,这是一个至少可以追溯到 2020 年的长期挖矿活动。

挖矿活动跟踪

如上所述,EC2 实例通过 EC2 用户数据接收它们的挖掘配置。该配置包含每个挖矿软件用于传播其开采的门罗币的门罗币钱包地址。

根据其架构,研究人员可以推测钱包地址是独立用于 AWS 挖矿的。如果是这种情况,连接到池的每个工件都代表一个单独的 Amazon EC2 实例。

攻击者用于此操作的挖掘池是 SupportXMR 挖掘池。矿池用于加密挖矿,作为多个挖矿软件共同工作的工作空间,以增加成功挖矿的机会。

考虑到 SupportXMR 服务只提供某时间段的统计数据,研究人员对钱包进行了数周的监控并提取了挖掘统计数据。下图显示了独立挖矿软件的数量。

XMR 挖矿软件数量统计

在 2023 年 8 月 30 日至 2023 年 10 月 6 日期间,总共出现了 474 个独立挖矿软件,研究人员可以将其解释为在此期间记录的 474 个独立的 Amazon EC2 实例执行挖矿。由于攻击者挖的是门罗币 ( Monero ) ,这是一种包含隐私控制的加密货币,因此研究人员无法跟踪钱包来获得攻击者获得挖矿货币的确切数字。

研究人员将继续监控这一挖矿活动。这与 Unit 42 观察到的攻击者使用可信业务应用程序逃避检测的发现一致。

架构分析

为了开展研究,Prisma 云安全研究团队创建了一个名为 HoneyCloud 的工具,这是一个完全可攻击和可复制的云环境,包含以下功能:

跟踪恶意操作;

跟踪云攻击者的行动;

发现新的云攻击路径;

构建更好的云防御解决方案。

研究人员使用 IaC 模板为 Terraform 创建了一个半随机的 AWS 基础设施。Terraform 是一个 IaC 配置工具,用于管理和维护云基础设施,这个工具允许研究人员使用定时调度和人工分析来创建和破坏基础设施。

由于研究人员之前的 AWS 账户 ID 被添加到攻击者的黑名单中,他们进行了一个 Terraform 设计。该设计在生成的 AWS 账户中引入了一定数量的随机性,其新创建的基础设施帮助研究人员避免了攻击者匹配或识别以前 IAM 密钥泄漏的操作。

研究人员还设计了 Terraform 自动化,根据攻击者在 AWS 账户中执行的活动,使用不同类型的 IAM 策略,该策略或多或少会限制 IAM 权限。

在本次调查中,研究人员遇到的最大障碍便是 AWS 在应用隔离策略,以防止恶意方面的反应速度速度。AWS 在 GitHub 上泄露 AWS 密钥后两分钟内实施了隔离政策。

AWS 隔离策略本可以成功阻止此攻击。然而,在分析了挖矿活动之后,研究人员发现了更多的挖矿实例,这可能是因为密钥以不同的方式或在不同的平台上被泄漏。

为了方便研究,研究人员被迫重写隔离策略,以确保研究人员能够跟踪攻击者的操作。为了执行此操作,研究人员创建了一个单独的监控工具,以恢复我们计划破坏的原始过度宽松的 AWS 安全策略。

自动生成 AWS 云

下图显示了用于公开 AWS IAM 凭据并随后监控针对它们采取操作的总 IaC 架构。

使用 AWS 复制和监控 GitHub 存储库

所设计架构的 IaC 模板负责随机选择 GitHub 存储库,复制和泄漏 AWS IAM 密钥作为过去提交的随机文件。在 AWS 方面,使用相同的 AWS 管理组织和集中式 CloudTrail 日志存储,为 IaC 模板执行的每次迭代动态创建新的 AWS 帐户。

研究人员还在 AWS 管理帐户中开发并部署了一个额外的 lambda 函数,该函数作为监控器收集基础设施更改并跟踪 IAM 用户策略更改。

IaC 模板的主要目标之一是保持 AWS 基础设施组件尽可能随机,以避免被攻击者发现并阻止。另一个目标是允许定期和精确地摧毁基础设施,以便快速和系统地开始新的环境和变量。通过这种方式,攻击者只能将 AWS IAM 密钥视为全新 AWS 环境的一部分,而不是研究环境的一部分。

总结

分析发现,攻击者扫描了公共 GitHub 存储库中泄漏的 AWS IAM 秘钥。研究人员发现,AWS IAM 密钥在公共 GitHub 存储库中泄漏仅五分钟后便可以检测并启动全面的挖矿。

该活动至少从 2020 年就开始了,尽管 AWS 隔离政策取得了成功,但该活动在受害帐户的数量和频率上仍然持续波动,研究人员认为关注泄漏的 GitHub 秘钥或亚马逊 EC2 实例目标仅仅是攻击目标之一。

为了方便分析,研究人员开发了一个半自动化的 IaC Terraform 架构来跟踪该攻击活动,其中就包括动态创建旨在被破坏和销毁的 AWS 账户。

缓解策略

1. 使用 AWS 隔离策略;

2. 使用 Amazon Lightsail,在泄漏的 IAM 密钥提交到 GitHub 存储库的几分钟内,AWS 启动了此隔离。这一隔离策略必须正确使用,以确保潜在的攻击者不会利用敏感的云数据、服务和资源。

无意中泄漏 AWS IAM 秘钥的组织应立即撤销使用该秘钥建立的任何 API 连接,还应从其 GitHub 存储库中删除 AWS IAM 秘钥,并生成新的 AWS IAM 秘钥以实现所需功能。

密钥管理aws
本作品采用《CC 协议》,转载必须注明作者和本文链接
绿盟科技自2012年开始研究并打造云计算安全解决方案,并于2022年正式推出“T-ONE云化战略”,将安全产品与方案全面向云转型,并构建开放的云化生态。在不同场景下,安全厂商的角色是有所不同的。无疑云计算的敏捷、弹性和编排特性助力CSMA落地。云计算环境中的原子化的安全能力,我们称之为基础云安全能力,它们是云安全的基石。本节将介绍这些复合的安全能力,以及与基础安全能力的关系。
随着区块链和其他加密用例的激增,私钥在经济等方面被赋予更多价值。随之而来的是密钥管理的重要性不断上升,目前,已经有了多个密钥管理系统。本文将进一步深入探讨密钥管理的几个问题及密钥管理系统的取舍方案。
相关研究人员最近发现了一个异常活跃的攻击活动,研究人员称之为 EleKtra-Leak,它会自动窃取 GitHub 公共存储库中泄漏的身份和访问管理 ( IAM ) 密钥
有些CSP也会以另外的模式提供BYOK,这种形式的BYOK连接客户存储并控制KEK的硬件。CSP架构、代码和各种产品还可能存在安全漏洞,会导致遭遇拦截或窃听。采用CSP管理自身敏感数据或生产的参考客户可能也是加强这一信任的重要因素。大多数CSP都会为客户提供自助撤销、轮换和控制KEK的功能。在变动或授予CSP对数据的访问权之前保护好数据可能会增强安全。总结本文的目的是要提起重视而非诋毁CSP。
他们直接联系AWS API,进一步枚举帐户,进而收集信息和泄露数据。不幸的是,AWS集群角色错误配置,拥有过大的读取权限。本意是允许读取特定的S3存储桶,但权限允许角色读取帐户中的一切,这使攻击者得以进一步了解AWS帐户,包括Lambda。受影响的AWS帐户中有不同的Lambda函数,主要与帐户自动化有关。还有证据表明攻击者执行了盗取的软件。
云计算已发展成为大数据应用、跨平台应用的主要解决方案,而虚拟化、大规模、开放性等特征,带来了更多安全威胁和挑战,通过分析云计算安全防御模型架构,分别对云计算安全的技术特征、运行特征、保障模式等方面进行了研究,提出了云计算安全能力软件定义、保障服务化、服务智能化、防御动态化等关键技术,支撑云安全防护灵活部署、高效保障、快速响应,提升云计算环境多样化安全需求的响应能力,以及强对抗环境中云计算持续服务能
新冠疫情和数字化转型加速了广大企业上云,在海外云计算已经成为大多数企业默认的 IT 基础设施,国内的云计算市场份额预计到“十四五”末也将突破万亿。云客户遭遇安全事件的比例有所下降2021 年,27% 的云客户遭遇了公有云安全事件,比 2020 年的 36% 有所下降。勒索软件成为最大威胁勒索软件在云侧、端侧、传统网络环境中到肆意蔓延。
没有云加密,就没有云计算,因为数据丢失的风险太高—磁盘错位、低强度密码、网络窥探或盗窃都会导致数据丢失。
近日,云安全公司Sysdig发布了《2023年全球云威胁报告》,研究了瞄准垂直行业的针对性云攻击,结果发现云攻击者正在通过利用云服务和常见的错误配置,以复杂的方式发展他们的技术和工具包。更重要的是,云中的攻击移动速度很快,侦察到威胁和造成严重破坏之间的间隔可能仅几分钟。
可以认为IAM分成两类,一个是AWS提供的IAM,这是一个完整的身份管理系统,但AWS只提供了系统,基于该系统的配置及信息维护,由客户完全负责。AWS 提供了虚拟网络及其之上的VPC,子网,ACL,安全组等,客户需要准确设计配置自己的网络,以确保正确的隔离和防护。用户控制权限的修改通常由特权用户或者管理员组实现。
VSole
网络安全专家