Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >新版本 Redline 使用 Lua 字节码逃避检测

新版本 Redline 使用 Lua 字节码逃避检测

作者头像
FB客服
发布于 2024-06-11 07:30:14
发布于 2024-06-11 07:30:14
1760
举报
文章被收录于专栏:FreeBufFreeBuf
近日,研究人员观察到 Redline Stealer 木马的新变种,开始利用 Lua 字节码逃避检测。

遥测分布

根据遥测数据,Redline Stealer 木马已经日渐流行,覆盖北美洲、南美洲、欧洲和亚洲甚至大洋洲。

感染链

感染链

微软官方账户的 vcpky 仓库被攻击者滥用部署了恶意文件,恶意 URL 为 https[:]//github[.]com/microsoft/vcpkg/files/14125503/Cheat.Lab.2.7.2.zip。

该压缩文件中包含 MSI 安装程序:

MSI 文件

MSI 安装程序包含两个 PE 文件和一个文本文件。

文件内容

Compiler.exe 和 lua51.dll 都是 Lua 开发的二进制文件,攻击者会稍微定制化修改这些文件。而 readme.txt 其中包含 Lua 字节码,配合使用可以在运行时编译和执行。

Lua JIT 是 Lua 编程语言的即时编译器(JIT):

字节码

通常来说,1B 4C 4A 02也就表示着是 Lua 5.1 字节码。这种方式可以将恶意攻击进行混淆,避免安全软件检测到好识别的脚本文件(如 wscript、JScript 或 PowerShell 脚本),进一步增强了攻击的规避能力。

用户点击执行 MSI 安装程序后,就会显示一个用户界面:

安装界面

安装过程中会提示用户将恶意软件安装到其他朋友的计算机上,就可以获得完整的应用程序。

提示信息

在安装过程中,可以发现有三个文件被写入 C:\program Files\Cheat Lab Inc\ Cheat Lab\中。

写入文件

后续这三个文件会被移动到指定路径中:

特定路径

可以看到,compiler.exe 由 msiexec.exe 执行,并以 readme.txt 作为参数。而 lua51.dll 会被加载到 compiler.exe 中,lua51.dll 是 compiler.exe 运行需要的 DLL,攻击者将该 DLL 文件与程序文件放在一起。

操作行为

安装过程中,msiexec.exe 会创建一个计划任务来执行 compiler.exe,并将 readme.txt 作为参数。

计划任务

除了上述持久化技术外,恶意软件还使用另一种备用方式确保恶意软件能够得到执行。恶意软件会将前述三个文件复制到另一个文件夹中,路径非常长而且很随机。

文件移动

请注意,compiler.exe 已经改名为 NzUW.exe。随后在 C:\Windows\Setup\Scripts\ 中释放文件 ErrorHandler.cmd。文件的内容如下所示,攻击者以新名称 NzUw.exe 执行 compiler.exe,并以 Lua 字节码作为参数。

执行命令

执行 ErrorHandler.cmd 会调用 system32 文件夹中的恶意文件。

进程创建

为此还会创建另一个计划任务,程序不带任何参数启动 C:\Windows\system32\oobe\Setup.exe。

计划任务

事实证明,如果将 Payload 放在 c:\WINDOWS\Setup\Scripts\ErrorHandler.cmd 中,则 c:\WINDOWS\system32\oobe\Setup.exe 将在发生错误时加载它。

官方文档

c:\WINDOWS\system32\oobe\Setup.exe 的执行需要参数,如果不提供参数就会触发错误。从而执行 ErrorHandler.cmd 调用 compiler.exe 加载恶意 Lua 代码。

进程树

可以确认 c:\WINDOWS\system32\oobe\Setup.exe 以 ErrorHandler.cmd 脚本作为参数启动 cmd.exe,该脚本运行 NzUw.exe。

继续通过 API 查看所在 IP 的信息:

IP 信息

IP 相关信息会以 JSON 形式写入 inetCache 文件夹中。

写入文件

文件内容如下所示:

文件内容

C&C通信

恶意软件的 C&C 通信使用 HTTP 协议:

C&C 流量

C&C 服务器响应了名为 OTMsOTYs 的任务 ID,包含在 base64 编码的字符串中:

响应信息

响应信息

通过 /loader/screen 的 HTTP PUT 请求发送到攻击者控制的服务器。服务器 IP 地址归属于 Redline,许多引擎都将其标记为恶意。

IP 地址

进一步查看,该数据包传输的是名为 Screen.bmp 的图片文件。值得注意的是,请求使用的 User-Agent 为 Winter。

PUT 请求

图片如下所示,为回传的受害者的屏幕截图。

屏幕截图

字节码

字节码的分析很有挑战,使用很多开源的反编译器可以得到不同的 Lua 脚本。

反编译

调试过程如下所示:

调试信息

通过将数据值传递给两个函数来填充 var_0_19,调试时可以发现 base64 编码的值存储在 var_0_19 中。这些 base64 字符串多是编码数据,而不是字符串。

函数传递

var_0_19 中的所有数据都会被分配给 var_0_26:

调试信息

同样的方式填充第二个 table(var_0_20),其中包含编码数据的替换密钥:

解密代码

解密代码如上所示,逐个元素迭代 var_0_26 并进行解密。循环很长并且包含很多垃圾代码,循环结束时将解密的值还给 var_0_26。

恶意代码

调试信息

断点设置在 1174 行并监测 var_0_26:

调试信息

当多次命中断点时,监视窗口可以看到更多加密数据:

调试信息

解密的字符串例如 var_0_26 中的 Tamper Detected!。

加载 LuaJIT 字节码

在加载 LuaJIT 字节码前,会创建一个新状态。每个 Lua 状态都维护其全局环境、堆栈与加载的库,从而在不同的 Lua 代码间提供隔离。

恶意代码

恶意软件使用 Lua_openlib 函数加载库,并加载 debug、io、math、ffi 和其他支持的库。

恶意代码

使用 lua51 的导出函数 luaL_loadfile 加载 LuaJIT 字节码,会使用 fread 函数读取 JIT 字节码,然后使用 memmove 函数移动到分配的内存。

调试信息

调试信息

文件中的字节码使用 memmove 函数将字节码从一个偏移量更改为另一个偏移量。使用 memmove 函数复制 JIT 字节码中 200 字节定长数据。

调试信息

获取 table 的值并使用浮点算术或异或指令对其进行处理:

调试信息

使用 memmove 函数将字节从源缓冲区移动到目标缓冲区。

调试信息

进一步分析后,该脚本中将使用变量和参数进行定义:

调试信息

API 会使用 ffi 从 Lua 代码中直接访问 Windows API,定义 API 函数如下所示:

函数信息

它会使用 CreateMutexExW 创建名为 Winter750 的互斥量:

调试信息

也会使用 ntdll.dll 中的 LdrLoaddll 函数在运行时加载 dll,使用 LuaJIT ffi 调用该函数。

调试信息

使用 ffi 使用 RegQueryValueEx 函数从 Windows 注册表检索 MachineGuid 项。使用 RegOpenKeyExA 打开注册表项SOFTWARE\Microsoft\Cryptography 并从打开的注册表项查询 MachineGuid 的值。

调试信息

使用 ffi 的 GetComputerNameA 函数从 Windows 注册表中检索 ComputerName。

调试信息

收集以下信息并将其发送到 C&C 服务器:

回传信息

回传信息

微软已经从官方存储库中删除了存在问题的文件。

IOC

5e37b3289054d5e774c02a6ec4915a60156d715f3a02aaceb7256cc3ebdc6610 873aa2e88dbc2efa089e6efd1c8a5370e04c9f5749d7631f2912bcb640439997 751f97824cd211ae710655e60a26885cd79974f0f0a5e4e582e3b635492b4cad dfbf23697cfd9d35f263af7a455351480920a95bfc642f3254ee8452ce20655a 213[.]248[.]43[.]58 hxxps://github.com/microsoft/STL/files/14432565/Cheater.Pro.1.6.0.zip https[:]//github[.]com/microsoft/vcpkg/files/14125503/Cheat.Lab.2.7.2.zip

https://www.mcafee.com/blogs/other-blogs/mcafee-labs/redline-stealer-a-novel-approach/

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-05-31,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 FreeBuf 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
为什么黑客都喜欢通过YouTube 传播木马/恶意软件
年初时就有研究人员提醒,上传到 YouTube 上与 AI 生成有关的视频表面在传播破解软件,其实是传播恶意软件。尽管 AI 生成的视频热度在下降,但这种攻击媒介仍然可行,且会被攻击者持续利用。
FB客服
2024/03/18
2320
为什么黑客都喜欢通过YouTube 传播木马/恶意软件
新Zloader感染链改进隐身和检测逃避技术
ZLoader(又称 Terdot)于 2016 年被首次发现,是臭名昭著的 Zeus 银行木马的一个变种。目前,该恶意软件仍然在积极开发中,平均每周发布 1 到 2 个新版本。
FB客服
2021/10/11
8530
Adobe Flash零日漏洞(CVE-2018-4878)在野攻击完全分析报告
背景 2018年1月31日,韩国计算机应急响应小组发布了一则关于Adobe Flash Player的 0day 漏洞警告,并称早在2017年11月中旬,就有黑客利用该漏洞实施有针对性的攻击。 2018年2月1日, Adobe官方发布了Adobe Flash Player系列产品的安全通告(APSA18-01),一个最新的AdobeFlash零日漏洞被发现针对韩国地区的人员发起攻击,该0day漏洞编号为CVE-2018-4878。 2018年2月5日,Adobe官方发布漏洞补丁,修复CVE-2018-487
FB客服
2018/02/23
1.3K0
Adobe Flash零日漏洞(CVE-2018-4878)在野攻击完全分析报告
KBOT研究报告
KBOT通过Internet或本地网络或受感染的外部媒介攻击用户计算机。受感染的文件启动后在系统中写入启动程序和任务调度程序,然后进行web注入窃取受害者的银行和个人数据。KBOT可以下载额外的窃取模块,把所有的用户信息发送给C&C服务器,包括密码/登录、钱包数据、文件列表和已安装的应用程序等。恶意软件将其所有文件和收集的数据存储在RC6加密的虚拟文件系统中,因此很难被检测到。
FB客服
2020/02/27
1.2K0
窃密恶意软件通过仿冒盗版软件下载网站进行传播
攻击者正在针对寻求下载盗版软件的用户进行攻击,由于用户自己知道获取与使用盗版软件是违法的,许多下载盗版软件的用户都不会对下载来源进行安全审查,这些用户最终可能会付出更大的代价。 介绍 自从 Napster 在互联网上发布盗版已经有二十余年,海盗湾种子下载站出现也近十年。尽管许多国家都针对此发布了相关的法律与禁令,但是盗版依旧屡禁不止,许多人都会下载与使用。互联网上也有很多宣传破解软件的的广告,出现在 Google 的搜索结果与网站的广告位中。 【Google 搜索结果中的仿冒盗版下载网站】 安全研究
FB客服
2023/03/30
7980
窃密恶意软件通过仿冒盗版软件下载网站进行传播
WSP ( CVE-2022-24934 ) APT
我们最近发现了一个APT我们正在调用的活动Operation Dragon Castling。该活动的目标是似乎在投注的公司South East Asia,更具体地说是位于Taiwan、Philippines和的公司Hong Kong。有了适度的信心,我们可以将活动归因于一个Chinese speaking APT group,但不幸的是不能将攻击归因于特定的群体,并且不确定攻击者的目标是什么。
Khan安全团队
2022/03/25
4.8K1
NuggetPhantom分析报告
近期,绿盟威胁情报中心(NTI)在一次应急响应中,发现一起使用模块化恶意工具集“NuggetPhantom(掘金幽灵)”的安全事件。据我们观测,本次安全事件背后的组织最早出现于2016年底,其曾在2016年底的“天翼校园客户端蓝屏事件”以及2017年底的“天翼校园客户端挖矿程序事件”中有所行动。
绿盟科技研究通讯
2019/12/11
1.1K0
NuggetPhantom分析报告
探索编译的V8 JavaScript在恶意软件中的应用
为了静态分析编译后的JavaScript文件,研究人员使用了一个新开发的定制工具「View8」,专门用于将V8字节码反编译为高级可读语言。借助View8,研究人员成功反编译了数千个恶意编译的V8应用程序,涵盖各种恶意软件类型,如远程访问工具(RAT),窃取程序,挖矿程序甚至勒索软件。
FB客服
2024/07/22
2980
探索编译的V8 JavaScript在恶意软件中的应用
【最新】LuaJIT 32/64 位字节码,从编译到使用全纪录
网上关于 LuaJIT 的讨论,已经显得有些陈旧。如果你对 LuaJIT 编译 Lua 源文件为具体的 32位或64位字节码,极其具体使用感兴趣的话,不妨快速读一下这篇文章。此文章针对尝试在 iOS 或 Android 上使用 LuaJIT 的小伙伴。限于篇幅,此处假定,你可以成功在 iOS/Android App 中集成了 LuaJIT,并且已经可以执行源码形式的 Lua 文件。
ios122
2018/07/31
3.4K0
Lua和Luajit
一、什么是lua&luaJit lua(www.lua.org)其实就是为了嵌入其它应用程序而开发的一个脚本语言, luajit(www.luajit.org)是lua的一个Just-In-Time也就是运行时编译器,也可以说是lua的一个高效版。 二、优势 1)lua是一个免费、小巧、简单、强大、高效、轻量级的嵌入式的脚本语言,lua当前的发行版本5.3.1只有276k。 2)它是用C语言开发的项目,所以可以在大部分的操作系统上运行 3)lua是目前速度最快的脚本语言,既可以提升语言的灵
全栈程序员站长
2022/11/08
1.6K2
针对交易软件 TradingView 的供应链攻击
RedLine、RecordBreaker、ArkeiStealer、Vidar、Satacom、BatLoader 等窃密类恶意软件通常使用恶意软件即服务(MaaS)模式进行销售,并且不断更新升级攻击方式。
FB客服
2023/02/10
6200
针对交易软件 TradingView 的供应链攻击
Quantum 构建工具使用新的 TTP 投递 Agent Tesla
Zscaler 的研究人员发现暗网上正在出售名为 Quantum Builder 的构建工具,该工具可以投递 .NET 远控木马 Agent Tesla。与过去的攻击行动相比,本次攻击转向使用 LNK 文件。
FB客服
2022/11/14
1.6K0
Quantum 构建工具使用新的 TTP 投递 Agent Tesla
RomCom 攻击者使用投毒的应用程序攻击乌克兰与英国
被称为 RomCom 的攻击者正在利用 SolarWinds、KeePass 与 PDF Technologies 等公司的软件作为诱饵,开展一系列的攻击行动。研究人员发现攻击者通过虚假软件针对乌克兰军事机构发起攻击,并且投递 RomComRAT 远控木马。 RomCom 在攻击行动中仿冒了 SolarWinds Network Performance Monitor、KeePass Open-Source Password Manager 与 PDF Reader Pro 这几款软件。 根据恶意网站的服务
FB客服
2023/03/29
4910
RomCom 攻击者使用投毒的应用程序攻击乌克兰与英国
研究传播 Dridex 新变种的 Excel 文档
Dridex也称为 Bugat 或 Cridex,可以从失陷主机上窃取敏感信息并执行恶意模块(DLL)的木马。
FB客服
2021/10/11
1.4K0
Windows 11更新要小心了,恶意软件已经盯上它
2022年年初,微软官方一再发布消息催促用户及时更新Windows 11系统,并表示Windows 11 系统的推广部署工作已经进入尾声。微软此前曾承诺在2022年年中完成Windows 11的推广工作,现在看来,该公司很有可能与这一最初的时间表保持一致。而一旦错过了这个推广期,后续用户很有可能无法继续享受免费更新Windows 11系统的服务。
FB客服
2022/02/25
5580
Windows 11更新要小心了,恶意软件已经盯上它
Lazarus针对COVID-19发起攻击
随着COVID-19影响持续升级,攻击者正在试图通过任何手段加速疫苗研发。有证据表明,Lazarus正在通过攻击与COVID-19研究有关的实体来获取此类情报。他们在9月底攻击了一家制药公司和COVID-19有关的政府部门。
FB客服
2021/02/07
9080
[译] APT分析报告:04.Kraken新型无文件APT攻击利用Windows错误报告服务逃避检测
这是作者新开的一个专栏,主要翻译国外知名的安全厂商APT报告文章,了解它们的安全技术,学习它们溯源APT组织的方法,希望对您有所帮助。前文分享了APT组织Fin7 / Carbanak的Tirion恶意软件,包括OpBlueRaven行动。这篇文章将介绍一种新型无文件APT攻击Kraken,它会利用Windows错误报告服务逃避检测。其中,DllMain函数反分析检查,以确保它不在分析/沙箱环境或调试器中运行非常值得我们学习。
Eastmount
2021/12/03
1.1K0
[译] APT分析报告:04.Kraken新型无文件APT攻击利用Windows错误报告服务逃避检测
Naikon APT组织分析
近期Check Point发现Naikon APT组织正在对亚太地区(APAC)国家政府进行网络攻击活动,使用了名为Aria-body的新后门控制受害者的网络。本报告将详细分析Naikon APT组织在过去5年中使用的战术,技术,程序和基础设施。
FB客服
2020/06/03
1.1K0
新型OpcJacker恶意软件通过虚假的VPN传播恶意广告
趋势科技研究人员发现了一种新型恶意软件,将其命名为 "OpcJacker"(取其opc配置设计“opc”和加密货币劫持“hijack”能力英文前后缀opc-jack而成),该恶意软件自2022年下半年以来一直传播。OpcJacker是一个有趣的恶意软件,因为它的配置文件使用一个自定义的文件格式来定义窃取者的行为。具体来说,该文件格式类似于自定义的虚拟机代码,配置文件中存在的十六进制数字标识符使得窃密器可运行所需的功能。使用这种设计的目的可能是为了使研究人员更难理解和分析恶意软件的代码流。 恶意软件OpcJa
FB客服
2023/04/26
1K0
新型OpcJacker恶意软件通过虚假的VPN传播恶意广告
数字取证技术 | Windows内存信息提取
0×00概述 后面会花一部分时间,写一些数字取证相关的文章。攻击技术贴多如牛毛,眼下不管是网安,还是安全厂商, 欠缺的是对取证技术的研究。 大致想了一下,主要会从以下几个方面逐一介绍吧: - 内存 - 硬盘镜像 - 网络 - Timeline利用 - 威胁情报在取证中的作用等 0×01 windows内存取证 取证的时候为什么要做内存分析?因为在内存里面可以看到操作系统在做的几乎所有的事情。当内存块不被覆盖的情况下,很多历史信息同样被保留。主要有: - 进程和线程 - 恶意软件,包括rootk
FB客服
2018/02/23
2.9K0
数字取证技术 | Windows内存信息提取
相关推荐
为什么黑客都喜欢通过YouTube 传播木马/恶意软件
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档