恶意软件分析之WebCobra
摘要: 安全研究人员发现一款新的俄罗斯恶意软件WebCobra,该恶意软件可以使用受害者机器的计算能力来进行加密货币挖矿活动。
加密货币挖矿恶意软件很难检测。因为一旦机器被黑,恶意APP就会在后台运行,唯一的暗示就是性能降级。随着恶意软件消耗的计算力越来越多,机器运行速度就会变慢。
研究人员最近发现一款俄罗斯的应用程序WebCobra,会静默地释放和安装Cryptonight加密货币挖矿机或Claymore的Zcash挖矿机。主要感染的区域有巴西、南非和美国。
该加密货币挖矿恶意软件与其他加密货币软件不同的是会根据受感染的机器配置不同释放不同类型的挖矿机。
恶意软件行为分析
图1:成功启动后,恶意软件会使用以下命令释放并解压一有密码保护的Cabinet归档文件:
图2: 解压释放的文件的命令
CAB文件含有两个文件:
- LOC:用于解密data.bin的DLL文件
bin:包含加密的payload
CAB文件会用下面的脚本来执行ERDNT.LOC:
图3:加载DLL文件ERDNT.LOC的脚本
ERDNT.LOC会解密data.bin并传递执行流到该路径:
[PlainText_Byte] = (([EncryptedData_Byte] + 0x2E) ^ 0x2E) + 0x2E
图4:解密过程
恶意程序通过检查运行环境以启动相应的挖矿程序的过程,如下图所示:
图5:执行哪一种挖矿程序取决于系统架构
解密并执行data.bin后,它会尝试一些反调试,反虚拟环境以及反沙箱技术的执行,并检查系统上运行的其他安全产品。这些措施使得恶意软件的存活时间更加长久。
大多数安全产品都会hook一些API来监控恶意软件的行为。为了避免被这种技术发现,WebCobra将ntdll.dll和user32.dll作为数据文件加载到内存中,并覆盖这些函数的前8个字节,使得这些API函数无法通过常规手段被hook。
unhooked ntdll.dll APIs列表
LdrLoadDll
ZwWriteVirtualMemory
ZwResumeThread
ZwQueryInformationProcess
ZwOpenSemaphore
ZwOpenMutant
ZwOpenEvent
ZwMapViewOfSection
ZwCreateUserProcess
ZwCreateSemaphore
ZwCreateMutant
ZwCreateEvent
RtlQueryEnvironmentVariable
RtlDecom
pressBuffer
unhooked user32.dll APIs列表
SetWindowsHookExW
SetWindowsHookExA
恶意软件会注入恶意代码到svchost.exe,并用无限循环来检查所有打开的窗口来比较每个窗口的标题文本。这是WebCobra使用的另外一个检查技术来确定是否运行在用于恶意软件分析的隔离环境中。
- adw
- emsi
- avz
- farbar
- glax
- delfix
- rogue
- exe
- asw_av_popup_wndclass
- snxhk_border_mywnd
- AvastCefWindow
- AlertWindow
- UnHackMe
- eset
- hacker
- AnVir
- Rogue
- uVS
- malware
如果前述这些字符串中任何一个显示在Windows标题栏文本中,则打开的窗口将被终止。
图6: 如果窗口标题栏中含有特定字符串就终止该进程
进程监视器执行后,它将miner(释放的挖矿程序)的配置文件指定为参数创建一个svchost.exe实例,并注入Cryptonight miner代码。
图7:创建svchost.exe实例并执行Cryptonight miner。
最后,恶意软件使得Cryptonight miner进程在后台悄悄运行,并消耗掉几乎所有的CPU资源。
图8:感染Cryptonight miner的x86计算机。
感染x64系统
恶意软件如果发现有wireshark运行就终止感染过程。
图9:检查wireshark
恶意软件会检查GPU的品牌和模式。如果安装了以下GPU才会运行:
- Radeon
- Nvidia
- Asus
图10:检查GPU mode
如果以上检查都已经通过,则恶意软件会创建一个隐藏文件夹,并在其中下载、执行一来自远端服务器的Claymore’s Zcash miner(另一种挖矿程序)。
C:\Users\AppData\Local\WIX Toolset 11.2
图11:下载Claymore’s Zcash miner的网络请求数据包。
图12: Claymore挖矿机
图13:根据其配置文件执行挖矿程序。
最后在%temp%\–xxxxx.cMD中释放一个batch文件来删除[WindowsFolder]\{DE03ECBA-2A77-438C-8243-0AF592BDBB20}\*.*.的dropper
图14: 删除dropper的batch文件
挖矿程序的配置文件如下:
图15:Cryptonight’s miner配置文件
配置文件含有:
The mining pool: 5.149.254.170
Username: 49YfyE1xWHG1vywX2xTV8XZzbzB1E2QHEF9GtzPhSPRdK5TEkxXGRxVdAq8LwbA2Pz7jNQ9gYBxeFPHcqiiqaGJM2QyW64C
Password: soft-net
图16: Claymore Zcash挖矿机配置文件
配置文件含有:
The mining pool: eu.zec.slushpool.com
Username: pavelcom.nln
Password: zzz
MITRE攻击技术一览
- 通过命令和控制信道窃取数据
- 命令行接口
- Hook
- 本地系统的数据
- 文件和目录发现
- 查询注册表
- 系统时间发现
- 进程注入
- 数据加密
- 多层加密
- 文件删除
- 数据混淆
IoC
IP addresses
• 149.249.13:2224
• 149.254.170:2223
• 31.92.212
Domains
• fee.xmrig.com
• fee.xmrig.com
• ru
• zec.slushpool.com
总结
由于网络犯罪分子通过这种相对容易的途径可以获得较高的经济效益,我们认为挖矿恶意软件将会继续发展。在其他人的计算机上挖矿相比与勒索软件来说投资更少,承担的风险也更小。此外,挖矿恶意软件不依赖于受害者同意汇款以解除计算机勒索的比例大小,直到受害者发现自己电脑上运行挖矿程序之前,恶意软件方都一直有很大的收获。
(作者:区块链安全档案,内容来自链得得内容开放平台“得得号”;本文仅代表作者观点,不代表链得得官方立场)
评论(0)
Oh! no
您是否确认要删除该条评论吗?