多个恶意软件正在使用 Ezuri
内存 Loader 进行防护,使安全产品无法检测到他们的恶意代码。Ezuri 在 GitHub 上提供了用 Golang 编写的源代码,在恶意软件中变得越来越普及。
Ezuri 解密内存中的 Payload
根据 AT&T Alien Labs 发布的分析报告,多个攻击者正在使用 Ezuri 来加密其恶意软件并逃避安全产品的检测。
尽管 Windows 恶意软件都会采用类似的方式,但攻击者现在也正在 Linux 平台上使用 Ezuri 实现这一目标。
Ezuri 用 Go 语言编写,同时充当 Linux 二进制文件的加密和加载器。Ezuri 使用 AES 加密恶意软件代码,解密后直接在内存中执行 Payload,不会在磁盘上落地任何文件。
Ezuri 的创建者 Guilherme Thomazi Bonicontro('guitmz')于 2019 年在 GitHub上开源了代码,并在他的博客文章中首次展示了该工具的功能。
“此外,用户'TMZ'(可能与先前提到的 'guitmz' 有关)在 8 月下旬在一个共享恶意软件样本的小型论坛上也发布了相同的代码”,AT&T Alien Labs 的研究员 Ofer Caspi 和 Fernando Martinez 解释道。
研究人员指出,解密 AES 加密的 Payload 后,Ezuri 立即将结果作为参数传递给 runFromMemory 函数,而不会在失陷主机上释放文件。
VirusTotal的检测率接近零
AT&T 的研究表明,通常在 VirusTotal 上有一半的反病毒引擎判黑的恶意软件样本在用 Ezuri 加密后,被检测到的概率接近 0。
目前为止, 使用 Ezuri 加密的样本在 VirusTotal 上的检测率还不到 5%。
多个攻击者都在积极使用
在过去的几个月中,Caspi 和 Martinez 确定了几个恶意软件都在将其样本与 Ezuri 捆绑使用。其中包括从 2020 年 4 月开始活跃的网络犯罪组织 TeamTnT。
最初,TeamTnT 会攻击配置错误的 Docker 服务,将失陷主机转变为 DDoS 肉鸡和挖矿的矿工。后来,TeamTnT 的变种会从内存中提取 AWS 凭据。由 Palo Alto Networks Unit42发现的其中一个变种(Black-T)实际上是使用 Ezuri 加密的。”
解密后的 Payload 是一个 UPX 加壳的 ELF 文件,首次出现在 2020 年 6 月。详细信息可参见 ATT&T 的分析文章。