freeBuf
主站

分类

云安全 AI安全 开发安全 终端安全 数据安全 Web安全 基础安全 企业安全 关基安全 移动安全 系统安全 其他安全

特色

热点 工具 漏洞 人物志 活动 安全招聘 攻防演练 政策法规

点我创作

试试在FreeBuf发布您的第一篇文章 让安全圈留下您的足迹
我知道了

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

Telegram汉化暗藏玄机,悄无声息释放后门病毒
火绒安全 2024-05-14 18:49:50 280377

近期,火绒安全实验室收到用户反馈称自己下载的 Telegram 汉化文件安装后造成系统异常,火绒安全工程师第一时间为用户提供技术支持,提取样本并进行分析。分析过程中发现该程序在对 Telegram 程序进行汉化的同时还 “悄悄” 释放恶意后门文件,执行远控操作,危害极大。目前,火绒安全产品可对上述病毒进行拦截查杀,请广大用户及时更新病毒库以提高防御能力。

1715670830_66430f2ed550f0b8a4de3.png!small?1715670833518

火绒 6.0 查杀图


样本执行流程图如下所示:

1715670845_66430f3d88de5d063f096.png!small?1715670848323

执行流程图


在此,火绒工程师建议大家在下载软件时,尽量选择官方网站或正规可信的应用商店,同时安装可靠的安全软件保护设备免受恶意软件和病毒的侵害。目前,火绒 6.0 已上线公测,在沿袭核心功能的基础上,专注终端安全,精细化查杀,多重技术深入布局,安全防护再次升级;欢迎大家前往火绒官方网站下载体验。


一、样本分析

起始汉化安装包是一个捆绑了恶意文件的 exe 程序,附带 vmp 壳干扰分析:

1715670860_66430f4c48177725e4d90.png!small?1715670862919

vmp 加壳

双击运行程序时,其会先执行正常的 telegram 汉化操作,链接到正常 telegram 程序并改变界面语言:

1715670867_66430f53dfa27d9c4a24a.png!small?1715670870534

链接到 telegram

1715670874_66430f5aced0e9e66ce84.png!small?1715670877607

汉化

但在执行正常操作的同时,会在内存中解密出第一阶段 payload ,其为一个恶意 dll,用于在内存中加载执行:

1715670882_66430f62a72c8efd7c027.png!small?1715670887746

内存解密dll


Payload1:加载通用.dll

从内存中 dump 出 dll 进行分析,其名称为 "加载通用.dll"。有一个 Hello 的导出函数,但不执行任何操作,所有操作都在 DllMain 中进行:

1715670908_66430f7c6d4eec98e8687.png!small?1715670911136

dll 概览

该 dll 以易语言编写并由黑月编译器编译,特征字符串如下:

1715670916_66430f843d6d75d0b8635.png!small?1715670919289

黑月编译器特征字符串

在执行过程中会先进行一些检测操作,通过判断 SxIn.dll 是否存在来检测 360 的虚拟沙盒。检查 SystemTray_Main 的窗口属性是为了避免重复操作,因为在后面的操作中会有将该窗口属性设置为隐藏的代码:

1715670935_66430f9713e5753b7403d.png!small?1715670939156

检测代码

随后开始初始URL部分,计算文件自身 MD5 并获取前 16 字节部分作为URL路径进行拼接,并生成 FPTOKEN 用于后续 http 通讯:

1715670944_66430fa0befd3c4b22cb8.png!small?1715670947600

拼接 URL

通信相关的函数是通过 WinHTTP 的 COM 对象接口来调的,数据传输时使用的域名是 taobc.tv ,利用前面生成的 URL 路径及FPTOKEN 以验证请求的有效性:

1715670954_66430faa76dd618b43279.png!small?1715670957645

外联操作

接收到的数据为加密数据,如下图所示:

1715670965_66430fb57b1232a19e880.png!small?1715670969706

通信流量截图

在接收到回传的通信数据后,dll 会获取多个系统特定位置路径,作为后续投放第二阶段 Payload 使用:

1715670974_66430fbe7c064e97969d8.png!small?1715670977306

获取系统关键路径

随后通过 ResponseBody 字段来提取加密部分数据,并解密出新的 PE 文件:

1715670984_66430fc844748ff6d27ca.png!small?1715670989845

调用解密函数

1715670994_66430fd204267691db618.png!small?1715670996954

解密数据截图

第二阶段 payload 下发的路径选在 Videos 目录,dll 会创建 VSTELEM 文件夹,并继续创建随机文件夹用以投放第二阶段载荷:

1715671004_66430fdc5ea89d25453d6.png!small?1715671007488

payload 投放位置

通过在循环中读取并定位解密数据中的 PE 文件,陆续投放 rzrue.exe(随机文件名,与文件夹同名)、Language.dll、update.dll 到前面指定的目录中:

1715671013_66430fe5d66119e727984.png!small?1715671016842

释放文件代码

1715671023_66430fef833184c7828e5.png!small?1715671026402

文件展示图

其中,如果检测到文件不存在的话,就会连接第二个 C2 进行告知:

1715671040_66431000dd715a8a3ac60.png!small?1715671043686

发送数据

1715671048_664310080ae37452ca075.png!small?1715671051124

通信截图

完成前面的文件投放后,dll 还会接着以 SYSTEM_START.lnk 快捷键的方式投放到开机启动目录中实现持久化:

1715671056_6643101051a4f31fe4722.png!small?1715671059058

释放 SYSTEM_START.lnk 文件

1715671065_66431019b697d06bc2548.png!small?1715671069114

相关文件属性

随后创建进程,执行下落的 rzrue.exe 文件并等待线程执行,如果进程执行正常,就会更改前面提到的 SystemTray_Main 窗口属性,用以避免重复操作:

1715671074_6643102295ae0c84bac0f.png!small?1715671079703

创建进程并设置窗口属性

如果 WaitForSingleObject 返回 WAIT_TIMEOUT 超时,同样会连接新的 C2 进行告知:

1715671081_66431029acafcde7a2ea7.png!small?1715671085438

通信截图


payload2

释放的文件中 rzrue.exe 是白文件,用于加载同目录下的 Language.dll 并调用其中导出函数 LangDLLMain 和 SetRegPath,但实际上并没有 SetRegPath 导出函数,关键操作都在 DllMain 中:

1715671095_66431037b02d558f16c29.png!small?1715671098358

加载 Language.dll

被加载的 Language.dll 同样由 vmp 加密来干扰分析:

1715671105_664310418056bed8ef0a7.png!small?1715671108229

vmp 加壳

Language.dll 被加载后会读取同目录下的 Update.log,Update.log 是一个加密的字节码文件,其最终会被解密成 dll 并在内存中加载执行:

1715671113_664310499a9b31a21137b.png!small?1715671116661

读取 Update.log 并解密

1715671120_6643105061366f9e5a819.png!small?1715671123083

Update.log 字节码展示


XTFG110.dll

由 Update.log 解密出来的 dll 名为 XTFG110.dll,只有一个导出函数 "Fuck"。其中 DllMain 函数主要负责初始化操作,Fuck 导出函数主要负责通信操作:

1715671139_66431063b362c2e7a4678.png!small?1715671142289

DLL 相关信息

XTFG110.dll 同样是易语言编写:

1715671148_6643106cd63e1e38b7795.png!small?1715671152607

易语言程序入口点

在 DllMain 中,先初始化要连接的 C2 及端口等数据:

1715671157_664310755e179d5d381fc.png!small?1715671160046

初始化 C2

随后在 C:\ProgramData 目录下创建 Lexicon 目录,并在其中创建相关文件夹,猜测是用于后续控制过程中的配置写入以及起到标识操作已完成的作用:

1715671164_6643107c91ce5e7dacffb.png!small?1715671167218

相关文件创建

将执行目录设置为当前路径,方便后续操作:

1715671172_664310846b791cab8c628.png!small?1715671174969

设置当前路径

接着该 dll 会根据预设的标志执行指定的操作,这些操作包括休眠,文件创建,进程注入等:

1715671190_6643109604fbfea3b3c7b.png!small?1715671192582

可选操作

其中进程注入操作依旧是将 Update.log 解密后(该 dll 自身)写入到其它进程内存中继续执行:

1715671202_664310a2d441b86d893c0.png!small?1715671205568

进程注入

最后挂钩键盘事件,监听键盘记录:

1715671210_664310aa6585e3aa839cc.png!small?1715671214942

监听键盘事件


·导出函数执行

导数函数 Fuck 是指定执行的,在前面 DllMain 初始化的文件和域名基础上,主要执行通信部分的操作,获取系统信息进行传输并接收 C2 的下一步指令:

1715671261_664310ddc80b409b4e32d.png!small?1715671264859

函数代码展示


系统信息收集:

在接收数据前,该函数会先收集系统信息进行传输,包括设备名称,频率等:

1715671274_664310eab783cde19bc24.png!small?1715671278499

获取设备信息

并且函数还会检查上一阶段文件存在情况,做好记录:

1715671284_664310f4901fb1afed406.png!small?1715671288393

查看文件

最后函数会收集系统相关注册表及计划任务的存在情况:

1715671292_664310fc8e89f1c98d3e7.png!small?1715671295626

收集相关信息

对于收集到的信息,进行整理后会以加密的形式进行发送:

1715671299_66431103325c18dd36cbe.png!small?1715671303013

数据加密

传输数据如下图所示:

1715671307_6643110b013a227b1be85.png!small?1715671309955

流量截图


数据接收:

在前面将收集到的系统数据发送后,函数进入新的循环中开始接受 C2 数据。接收数据具体实现如下:第一次获取数据时,其会先定位回传数据的第 7 个字节(从 0 开始算),以此作为新缓冲区的长度进行第二次数据获取:

1715671318_66431116baac523322086.png!small?1715671321668

循环监听

对于接收的所有数据同样需要解密后才能进行操作,解密逻辑同前面加密一样:

1715671333_66431125a791698bb8c31.png!small?1715671338608

解密函数

然后进入数据处理函数中,其中第二次获取数据的第一字节会作为判断值来决定分发情况。根据不同的值,跳转到不同的执行分支中,其中包括系统信息获取、进程注入、下发插件等等,以此实现对受害者主机的完全控制,这里不再一一分析:

1715671341_6643112dab5f91b4c89d6.png!small?1715671345180

可选择的执行分支


二、附录

C&C:

1715671367_664311474565029836efb.png!small?1715671371980

HASH:

1715671374_6643114e63050e6377c4d.png!small?1715671376891

# 黑客 # 网络安全 # 企业安全
本文为 火绒安全 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
火绒安全 LV.7
火绒安全软件官方账号
  • 78 文章数
  • 35 关注者
信息盗取的隐性威胁:Rhadamanthys木马无痕窃密
2025-04-16
游戏MOD伴随盗号风险,仿冒网站借“风灵月影”窃密
2025-04-03
伪FinalShell官网“钓鱼”,后门病毒窃密企业SSH凭证
2025-04-03