GandCrabV4.3详细分析报告
字数 1737 2025-08-20 18:17:53

GandCrab勒索病毒V4.3深度分析与防御指南

一、GandCrab勒索病毒概述

GandCrab勒索病毒于2018年1月首次出现,在短短半年时间内迅速发展,从V1.0快速迭代到V4.4版本,具有极强的变种能力。该病毒主要通过以下四种方式传播:

  1. RDP爆破攻击:通过暴力破解远程桌面协议(RDP)进行传播
  2. 垃圾邮件传播:携带恶意链接或附件的钓鱼邮件
  3. 软件捆绑传播:伪装成正常软件的恶意程序
  4. 漏洞利用工具包:利用RigEK等漏洞利用工具包传播

二、样本技术分析

1. 初始加载与反分析技术

样本采用多层加密和混淆技术:

  • Shellcode解密:初始阶段解密出shellcode代码
  • 内存操作函数获取:动态获取VirtualAlloc、VirtualProtect、VirtualFree等关键函数
  • PE重建:在内存中重建PE文件结构
  • 输入表重建:动态重建导入函数表
  • 反反汇编技术:使用静态对抗反汇编的混淆技术

2. 环境检测与规避机制

病毒执行前会进行多重环境检测:

进程检测与终止

msftesql.exe, sqlagent.exe, sqlbrowser.exe, sqlwriter.exe, oracle.exe, 
ocssd.exe, dbsnmp.exe, synctime.exe, agntsvc.exe, isqlplussvc.exe, 
xfssvccon.exe, sqlservr.exe, mydesktopservice.exe, ocautoupds.exe, 
encsvc.exe, firefoxconfig.exe, tbirdconfig.exe, mydesktopqos.exe, 
ocomm.exe, mysqld.exe, dbeng50.exe, sqbcoreservice.exe, excel.exe, 
infopath.exe, msaccess.exe, mspub.exe, onenote.exe, outlook.exe, 
powerpnt.exe, steam.exe, thebat.exe, thunderbird.exe, visio.exe, 
winword.exe, wordpad.exe

地域规避机制

  • 检测输入法是否为俄语(Russian)
  • 检测系统语言是否为特定国家/地区:
    • 419 (俄语)
    • 422 (乌克兰语)
    • 423 (白俄罗斯语)
    • 428 (塔吉克语)
    • 42B (亚美尼亚语)
    • 42C (阿塞拜疆拉丁语)
    • 437 (格鲁吉亚语)
    • 43F (哈萨克语)
    • 440 (吉尔吉斯语)
    • 442 (土库曼语)
    • 443 (乌兹别克拉丁语)
    • 444 (鞑靼语)
    • 818/819 (未知)
    • 82C (阿塞拜疆西里尔语)
    • 843 (乌兹别克语)

3. 持久化与防重复感染

  • 创建随机名称的互斥变量防止重复感染
  • 将RSA密钥写入注册表:
    HKEY_CURRENT_USER\SOFTWARE\keys_data\data
    

4. 信息收集与C2通信

收集的主机信息

  • 用户名、主机名、工作组
  • 操作系统语言和键盘输入法
  • 操作系统版本信息
  • CPU类型及型号
  • 安全软件信息
  • 磁盘类型及空间信息

安全软件检测列表

AVP.EXE, ekrn.exe, avgnt.exe, ashDisp.exe, NortonAntiBot.exe, 
Mcshield.exe, avengine.exe, cmdagent.exe, smc.exe, persfw.exe, 
pccpfw.exe, fsguiexe.exe, cfp.exe, msmpeng.exe

C2通信机制

  • 从预设域名列表中选择C2服务器
  • 使用随机路径构建URL:
    wp-content, static, content, includes, data, uploads, news
    
  • 添加随机后缀:
    images, pictures, image, graphic, assets, pics, imgs, tmp
    
  • 使用随机文件名组合:
    im, de, ka, ke, am, es, so, fu, se, da, he, ru, me, mo, th, zu
    
  • 使用随机扩展名:
    jpg, png, gif, bmp
    
  • 通过POST方式发送HTTP请求

5. 加密机制

RSA密钥生成

  • 使用硬编码数据作为种子生成RSA公钥和私钥
  • 公钥示例:
    06 02 00 00 00 A4 00 00 52 53 41 31 00 08 00 00 
    01 00 01 00 BB EF 02 46 0B 5E 8C 72 8E A0 A0 31 
    AE 95 33 82 D6 67 89 32 B2 ED 92 A8 16 0A BC 28 
    C1 4D 3E 00 A3 DC 48 47 3D E9 9A C1 31 AE 41 C5 
    E8 22 70 6A 7F 75 98 8F C6 EB EE 65 9B 1B 96 D3 
    4D AA 3F 75 0B A5 75 E7 71 CD 88 A0 77 E0 CB 2F 
    33 A2 0D AB E4 E3 40 82 3F D9 95 50 A4 92 56 AA 
    77 61 05 75 F2 25 81 DA A1 BE 30 A7 CB DA 2B A3
    9E 85 AB 03 8D BB D3 F0 BB 9C 71 9A D4 98 CF C6 
    C2 A8 62 84 32 85 4C 1B 2C FF E4 D8 D9 E5 2A BB 
    18 06 08 6A F4 D8 D1 8D 00 E3 41 FC E7 C5 20 25 
    D2 DD 47 FF 27 09 1F 6D 34 6C 8A 0A EB AB 13 48 
    09 F6 24 24 98 84 22 DD C1 A1 1C 60 63 06 71 EE 
    00 4A 21 BA 1F AF 4C 03 D2 C7 3F BA 64 39 35 B4 
    44 0B 17 5F B5 2C 8C 4E B2 E6 61 B2 23 21 4D AD 
    FB D4 1D 96 4B A1 FC 7F BF 98 78 BB D3 72 F1 E3 
    46 1F 03 4C 05 18 96 C1 47 C0 A0 6F 17 07 11 10 
    2B 2D D4 C8
    

文件加密过程

  1. 遍历本地磁盘和网络共享文件夹
  2. 创建多线程进行加密操作
  3. 生成以.KRAB为后缀的加密文件
  4. 创建随机lock文件记录感染时间

排除目录

\ProgramData\, \IEIldCache\, \Boot\, \Program Files\, 
\Tor Browser\, \All Users\, \Local Settings\, \Windows\

排除文件

desktop.ini, autorun.inf, ntuser.dat, iconcache.db, 
bootsect.bak, boot.ini, ntuser.dat.log, thumbs.db, 
KRAB-DECRYPT.html, KRAB-DECRYPT.txt, CRAB-DECRYPT.txt, 
ntldr, NTDETECT.COM, Bootfont.bin

6. 勒索信息与支付机制

  • 在每个加密文件夹下创建KRAB-DECRYPT.txt勒索信息文件
  • 提供暗网支付链接
  • 使用ShellExecuteW调用wmic.exe删除磁盘卷影

7. 对抗技术

  • 攻击杀毒软件驱动(DeviceIoControl)
  • 删除磁盘卷影副本防止恢复
  • 对抗静态分析的反汇编技术

三、防御与缓解措施

1. 预防措施

  1. 强化RDP安全

    • 禁用不必要的RDP访问
    • 使用强密码策略
    • 启用网络级认证(NLA)
    • 限制RDP访问IP范围
  2. 邮件安全

    • 部署高级邮件过滤解决方案
    • 教育用户识别钓鱼邮件
    • 禁用可疑附件类型
  3. 补丁管理

    • 及时更新操作系统和软件补丁
    • 重点关注Office、浏览器等常见攻击面
  4. 最小权限原则

    • 限制用户权限
    • 实施应用程序白名单

2. 检测措施

  1. 监控异常行为

    • 监控大量文件修改操作
    • 检测异常进程创建(wmic.exe等)
    • 监控注册表异常修改
  2. 网络监控

    • 检测与可疑域名的通信
    • 监控异常HTTP POST请求
  3. 安全软件

    • 部署具有行为检测能力的终端防护
    • 启用勒索软件防护功能

3. 应急响应

  1. 隔离感染主机

    • 立即断开网络连接
    • 不要关闭电源以保留内存证据
  2. 取证分析

    • 收集内存转储
    • 检查注册表键值
    • 分析网络日志
  3. 恢复方案

    • 从干净备份恢复
    • 检查是否有未加密的卷影副本
    • 联系专业安全团队协助

四、总结

GandCrab V4.3展现了高度复杂的技术特征:

  • 多层加密和混淆技术增加分析难度
  • 精细的环境检测和规避机制
  • 复杂的信息收集和C2通信机制
  • 针对性的文件加密策略
  • 多重对抗技术

防御此类勒索软件需要采取纵深防御策略,结合技术控制、用户教育和应急响应计划,才能有效降低风险。

GandCrab勒索病毒V4.3深度分析与防御指南 一、GandCrab勒索病毒概述 GandCrab勒索病毒于2018年1月首次出现,在短短半年时间内迅速发展,从V1.0快速迭代到V4.4版本,具有极强的变种能力。该病毒主要通过以下四种方式传播: RDP爆破攻击 :通过暴力破解远程桌面协议(RDP)进行传播 垃圾邮件传播 :携带恶意链接或附件的钓鱼邮件 软件捆绑传播 :伪装成正常软件的恶意程序 漏洞利用工具包 :利用RigEK等漏洞利用工具包传播 二、样本技术分析 1. 初始加载与反分析技术 样本采用多层加密和混淆技术: Shellcode解密 :初始阶段解密出shellcode代码 内存操作函数获取 :动态获取VirtualAlloc、VirtualProtect、VirtualFree等关键函数 PE重建 :在内存中重建PE文件结构 输入表重建 :动态重建导入函数表 反反汇编技术 :使用静态对抗反汇编的混淆技术 2. 环境检测与规避机制 病毒执行前会进行多重环境检测: 进程检测与终止 : 地域规避机制 : 检测输入法是否为俄语(Russian) 检测系统语言是否为特定国家/地区: 419 (俄语) 422 (乌克兰语) 423 (白俄罗斯语) 428 (塔吉克语) 42B (亚美尼亚语) 42C (阿塞拜疆拉丁语) 437 (格鲁吉亚语) 43F (哈萨克语) 440 (吉尔吉斯语) 442 (土库曼语) 443 (乌兹别克拉丁语) 444 (鞑靼语) 818/819 (未知) 82C (阿塞拜疆西里尔语) 843 (乌兹别克语) 3. 持久化与防重复感染 创建随机名称的互斥变量防止重复感染 将RSA密钥写入注册表: 4. 信息收集与C2通信 收集的主机信息 : 用户名、主机名、工作组 操作系统语言和键盘输入法 操作系统版本信息 CPU类型及型号 安全软件信息 磁盘类型及空间信息 安全软件检测列表 : C2通信机制 : 从预设域名列表中选择C2服务器 使用随机路径构建URL: 添加随机后缀: 使用随机文件名组合: 使用随机扩展名: 通过POST方式发送HTTP请求 5. 加密机制 RSA密钥生成 : 使用硬编码数据作为种子生成RSA公钥和私钥 公钥示例: 文件加密过程 : 遍历本地磁盘和网络共享文件夹 创建多线程进行加密操作 生成以.KRAB为后缀的加密文件 创建随机lock文件记录感染时间 排除目录 : 排除文件 : 6. 勒索信息与支付机制 在每个加密文件夹下创建KRAB-DECRYPT.txt勒索信息文件 提供暗网支付链接 使用ShellExecuteW调用wmic.exe删除磁盘卷影 7. 对抗技术 攻击杀毒软件驱动(DeviceIoControl) 删除磁盘卷影副本防止恢复 对抗静态分析的反汇编技术 三、防御与缓解措施 1. 预防措施 强化RDP安全 : 禁用不必要的RDP访问 使用强密码策略 启用网络级认证(NLA) 限制RDP访问IP范围 邮件安全 : 部署高级邮件过滤解决方案 教育用户识别钓鱼邮件 禁用可疑附件类型 补丁管理 : 及时更新操作系统和软件补丁 重点关注Office、浏览器等常见攻击面 最小权限原则 : 限制用户权限 实施应用程序白名单 2. 检测措施 监控异常行为 : 监控大量文件修改操作 检测异常进程创建(wmic.exe等) 监控注册表异常修改 网络监控 : 检测与可疑域名的通信 监控异常HTTP POST请求 安全软件 : 部署具有行为检测能力的终端防护 启用勒索软件防护功能 3. 应急响应 隔离感染主机 : 立即断开网络连接 不要关闭电源以保留内存证据 取证分析 : 收集内存转储 检查注册表键值 分析网络日志 恢复方案 : 从干净备份恢复 检查是否有未加密的卷影副本 联系专业安全团队协助 四、总结 GandCrab V4.3展现了高度复杂的技术特征: 多层加密和混淆技术增加分析难度 精细的环境检测和规避机制 复杂的信息收集和C2通信机制 针对性的文件加密策略 多重对抗技术 防御此类勒索软件需要采取纵深防御策略,结合技术控制、用户教育和应急响应计划,才能有效降低风险。