freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

点我创作

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

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

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

FreeBuf+小程序

FreeBuf+小程序

Cyber​​Volk 勒索软件活动
David_Jou 2024-07-06 01:53:13 86800

前言

最近又火起来的一个CyberVolk 勒索软件,也称为 ".cvenc" 文件病毒 。它设计用于加密文件并将 ".cvenc" 扩展名添加到文件名称上 。CyberVolk 还会显示一个弹出窗口并创建一个名为 "CyberVolk_ReadMe.txt" 的光盘文件,其中包含勒索信息 。CyberVolk 不是通过电子邮件传播的 。与其他勒索软件(如 GandCrab、WannaCry 等)类似,CyberVolk 不仅仅是在侵害受害者的计算机上进行加密,还会要求赎金支付以解密所有加密文件 。

勒索软件流程

1720184703_6687ef7f306b7c86e3765.png!small

1720200395_66882ccb7d2f56e86036a.png!small?1720200397374

1720199220_66882834710ba56cd730a.png!small?1720199221543


打开文件进行修改:

C:\Users\Admin\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\desktop.ini

文件已创建:

C:\Users\Admin\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\desktop.ini.cvenc

文件已创建:

C:\Users\Admin\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\CyberVolk_ReadMe.txt

行为分析

Detect It Easy (DIE) 是一个用于识别文件类型的跨平台工具,也常用于恶意软件分析。它拥有开放的架构,允许用户自定义识别规则和算法。

Detect It Easy 的主要功能包括:

  • 识别多种文件类型:DIE 可以识别超过 200 种文件类型,包括常见的可执行文件、脚本文件、压缩文件等。
  • 识别文件打包器和加壳器:DIE 可以识别常用的文件打包器和加壳,例如 UPX、ASPack 等。
  • 分析文件熵值:DIE 可以计算文件的熵值,帮助识别可能经过加密或混淆处理的文件。
  • 查看文件结构:DIE 可以显示文件头信息、段信息、导入表、导出表等,帮助分析文件的内部结构。
  • 使用脚本自定义识别规则:DIE 支持使用脚本语言编写自定义识别规则,扩展其功能。

通过识别扫描结果表明ransom.exe是一个 32 位的 Windows 可执行文件,它在 Windows Vista 操作系统上运行,并使用控制台模式。 该文件是由 Microsoft Visual C/C++ 编译器编译的,使用的是 2017 版本 (v.15.5-6) 和 19.36.33522 版本,并使用 Microsoft Linker 14.36.33522 进行链接。最终程序是在 Visual Studio 2022 版本 17.6 中创建的,看起来并没有加壳。

1720175698_6687cc5224ae8c8f78a74.png!small?1720175699120


用IDA打开后直接点击 HexView-1 标签可以显示十六进制窗口。此窗口能够展示十六进制转储内容以及对应的 ASCII 字符。默认情况下,十六进制窗口与反汇编窗口(disassembly window)同步,也就是说在反汇编窗口中选中的字节数据会在十六进制窗口中高亮显示。这种同步功能有助于标记内存地址。

十六进制视图窗口(Hex view window)不仅能展示十六进制转储内容,还能展示可执行文件(exe)中的字符串信息。这些字符串信息通常包括程序中用到的各种文本数据,例如错误消息、调试信息、文件路径、用户界面文本等。通过查看这些字符串,分析者可以获得关于程序功能和行为的线索,有助于理解和逆向工程该可执行文件。

这里我们可以到看相关的勒索信息!这个勒索软件名为"CyberVolk ransomware"。已经加密了受害者的所有文件。 勒索者要求受害者支付1000美元的比特币(BTC)才能获得解密密钥。 勒索者提供了他们的Telegram频道(@hacker7)和团队网址(https://t.me/cubervolk)作为联系方式。 勒索者警告受害者不要尝试自己恢复文件,否则文件可能会永远丢失。

1720187891_6687fbf3a70d1216d4b64.png!small?1720187892668

并还可以看到勒索软件EXE,0042A7E0-0042A8F0: 这里列出了一些常见的Windows API函数,如MessageBoxWBeginPaintInvalidateRectLoadImageWFindWindowADialogBoxParamWSystemParametersInfoWKillTimerSetRectGetDlgItemwsprintfWSetClipboardDataLoadBitmapWMessageBoxAEmptyClipboardCloseClipboardDrawTextASetTimerGetDlgItemTextAOpenClipboardShowWindow等,这些函数提供了与Windows操作系统进行交互的基本手段,用于创建和管理窗口、处理消息、处理图像、操作剪贴板、格式化文本和定时器等多种任务

1720189209_66880119d6a4ddf74fd8a.png!small?1720189210979

还调用了一些Windows系统DLL中的函数,如USER32.dll中的函数和GDI32.dll中的函数,最后还调用了SHELL32.dll中的SHGetFolderPathA函数,可能是用于文件操作有关,好了这个十六进制视图窗口就先说这样多,大致也可以通过这种方式去查看一些流程,看个人喜欢。

1720189489_66880231dc4f559745d26.png!small?1720189491330

desktop.ini文件

在上面已经介绍过,所有的文件貌似都是通过一个desktop.ini文件来完成加密的,加密后文件是这样desktop.ini.cvenc,(从5fe19b0927...开始)可能是实际的加密数据。这部分数据很可能是使用某种加密算法(如 AES、RSA)加密的二进制文件或文本。

1720201327_6688306f602b130bb0404.png!small?1720201328567

设置壁纸动作

代码中调用了 SystemParametersInfoW 函数,这个函数是 Windows API,用于设置和检索系统参数,包括更改桌面壁纸。SystemParametersInfoW 函数调用的第一个参数是 0x14(SPI_SETDESKWALLPAPER),表示设置桌面壁纸。 第三个参数 pvParam 是新壁纸文件的路径。 第四个参数是 3u,表示立即更新设置(包括在注册表中)。

  • mov ecx, offset aFailedToSetWal:将字符串的地址移动"Failed to set wallpaper.\n"ecx。此字符串可能用于在操作失败时显示错误消息。
  • mov edx, offset aWallpaperSetSu:将字符串的地址移动"Wallpaper set successfully.\n"edx。此字符串可能用于在操作成功时显示成功

1720199597_668829ad9bf1f6131bfb8.png!small

【SystemParametersInfoW API参数】

开始我并没有发现有注册添加动作,后来可能就是利用了API的原因,利用到了注册表修改,为了验证我特定去翻了一下

C:\Users\otsan\AppData\Local\Temp\\tmp.bmp

1720200152_66882bd8e9efc9d583a50.png!small?1720200154147

文件创建动作

1720191155_668808b354776207d0c49.png!small

【文件创建】

通过CreateThread创建线程,在通过调用SHGetFolderPathA函数,获取指定文件夹的路径,将pszPath的地址加载到寄存器eax中。push offset aSDecKeyDat ; "%s\dec_key.dat": 将字符串格式化的地址(包含路径和文件名的格式字符串 "%s\\dec_key.dat")压入堆栈。aSDecKeyDat被压入堆栈,作为sub_4010D0函数的参数,用于生成文件路径。具体来说,sub_4010D0函数将会用某个路径替换掉%s占位符,从而生成完整的文件路径,来为文件进行储存。

1720193403_6688117be15371403fb7d.png!small?1720193408143

1720193456_668811b0ea460e5df51dd.png!small?1720193457901

枚举驱动器

枚举驱动器允许勒索软件扫描整个计算机系统,包括所有连接的硬盘驱动器和网络驱动器。这样可以确保尽可能多的文件被加密,从而最大化勒索者可能的收益。

1720197500_6688217c137e05a4daefe.png!small?1720197501185

  • 初始化驱动器字母从'a''z'(即从97122)。
  • 在循环中,通过修改RootPathName来遍历每个驱动器字母,并调用GetDriveTypeW函数检查驱动器类型。
  • GetDriveTypeW返回的值减去2,将返回值映射为012表示无效驱动器。
  • 如果GetDriveTypeW返回的类型不等于DRIVE_NO_ROOT_DIRDRIVE_REMOVABLEDRIVE_FIXED,则认为是有效驱动器。
  • 对于有效驱动器,创建一个新的线程(sub_422100)进行处理。

IOC

Cyber​​Volk_ReadMe.txt

MD5
ce7ff0a9361571a2dcb08f50500ace3f

SHA1
5d8bed459f55a37e2fcb801d04de337a01c5d623

SHA256
894bc59f5227b4d545412b2a2897367d7ac88090c86f5a1728bf733e70bd93ee

SHA512
bba6d46fae5b4099b047b192f7df21fdf01675b09f3da38a365710fc9aa5b126cc6a2c2547be48deecfaa360e1521cf04a9793af083735de4a8cb7be9bd4c52a

ransom.exe

MD5
648bd793d9e54fc2741e0ba10980c7de

SHA1
f5d0c94b2be91342dc01ecf2f89e7e6f21a74b90

SHA256
102276ae1f518745695fe8f291bf6e69856b91723244881561bb1a2338d54b12

SHA512
d1428b934a360d7f3651947d11081892c93c7cd29a17dc38190cbb46c95939928ac6f805adf586be2937e27fc20aec8bd1fc2c782c681e7e94e9e8d33b8ebf15
# 勒索软件 # 勒索攻击 # 勒索软件攻击 # 勒索病毒 # 勒索软件分析
本文为 David_Jou 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
David_Jou LV.4
仗剑走马 高歌天涯 待到年华垂垂老去时 与他携手归隐去最初见时的地方 夕阳鸿雁 飞花庭院 大概这是他所期待的一生吧
  • 33 文章数
  • 38 关注者
揭秘APT38(Lazarus Group):从索尼影业到ByBit的网络掠夺之路
2025-03-19
UTF-16LE编码与.Bat文件:探讨混淆技术逃避检测
2024-12-10
揭秘Gamaredon APT的精准攻击:针对乌克兰调查局的网络钓鱼与多阶段攻击
2024-12-07
文章目录