新型OpcJacker恶意软件通过虚假的VPN传播恶意广告
cac55 2024-12-12 11:03 44 浏览 0 评论
趋势科技研究人员发现了一种新型恶意软件,将其命名为 "OpcJacker"(取其opc配置设计“opc”和加密货币劫持“hijack”能力英文前后缀opc-jack而成),该恶意软件自2022年下半年以来一直传播。OpcJacker是一个有趣的恶意软件,因为它的配置文件使用一个自定义的文件格式来定义窃取者的行为。具体来说,该文件格式类似于自定义的虚拟机代码,配置文件中存在的十六进制数字标识符使得窃密器可运行所需的功能。使用这种设计的目的可能是为了使研究人员更难理解和分析恶意软件的代码流。
恶意软件OpcJacker的主要功能包括键盘记录、屏幕截图、从浏览器中窃取敏感数据、加载附加模块,以及替换剪贴板中的加密货币地址以达到劫持目的。
图1. OpcJacker的感染链
研究人员观察到OpcJacker通过不同的活动进行传播,包括伪装成加密货币相关的应用和其他合法软件,然后攻击者通过虚假网站进行传播。在最近一次(2023年2月)涉及OpcJacker的活动中,感染链始于恶意广告,恶意广告对伊朗用户进行地理定位。这些恶意广告被伪装成合法的VPN服务,欺骗受害者下载一个包含OpcJacker的文档。
该恶意软件是通过在已安装得应用更新一个合法的DLL库时加载的,该应用也会加载另一个恶意DLL库。然后,恶意DLL库汇编并运行shellcode,shellcode是另一个恶意可执行文件的loader和runner,可执行文件是文件数据块里存储OpcJacker的各种格式的数据文件,如WAV和CHM。该loader自命名为”Babadeda” crypter以来,已经使用了一年多。这些活动背后的攻击者对加密器本身进行了一些改变,然后增加了一个全新的payload(一个窃密器/剪切器/记键器)。
OpcJacker通常是释放(或下载)和运行额外的模块,这些模块是远程访问工具,不是NetSupport RAT就是一个隐藏虚拟网络计算(hVNC)的变体。我们还发现一份报告分享了一个名为 "Phobos Crypter"(实际上与OpcJacker是同一个恶意软件)的loader被用来加载Phobos勒索软件的信息。
传播
正如介绍中提到的,OpcJacker是通过不同的活动传播的,包括以虚假网站宣传看似合法的软件和加密货币相关的应用,但实际都是托管恶意软件。由于这些活动除了OpcJacker之外,还会传播一些其他不同的恶意软件,因此它们很可能是OpcJacker的控制者所使用的不同类型的按次安装服务。
在最近一次(2023年2月)涉及OpcJacker的活动中,研究人员注意到OpcJacker是通过针对伊朗恶意广告的地理定位传播的。这些恶意广告链接到一个恶意网站,这个恶意网站伪装成合法VPN软件的网站。网站的内容是从一个合法的商业VPN服务的网站上复制的,然而链接被修改为指向到一个内嵌恶意内容被黑网站。
恶意网站检查客户的IP地址以确定受害者是否使用VPN服务。如果IP地址没有使用VPN服务,它就将受害者重定向到第二个被黑网站,诱使他们下载一个包含OpcJacker的文档。如果受害者正在使用VPN服务,就不会发生上述攻击行为。
图2. 一个用于提供OpcJacker的恶意广告的例子
此外,研究人员还发现了一些ISO镜像和RAR/ZIP档案,其中包含各种软件被修改过的安装程序,其导致OpcJacker加载。这些安装程序以前被其他活动使用过,被托管在各种被黑的WordPress框架的网站或软件开发平台,如GitHub。攻击者喜欢使用ISO文件的一个可能的原因是为了绕过IE浏览器的 Mark-of-the-Web 警告。
以下是我们发现的一些文件名例子:
- CLF_security.iso
- Cloudflare_security_setup.iso
- GoldenDict-1.5.0-RC2-372-gc3ff15f-Install.zip
- MSI_Afterburner.iso
- tigervnc64-winvnc-1.12.0.rar
- TradingViewDesktop.zip
- XDag.x64.rar
Babadeda加密器
在安装程序释放所有必要的文件后,它就会加载主可执行文件(RawDigger.exe),这是一个干净的合法文件。
图3. 安装程序释放的文件列表;虽然大多数是安全文件,但有些是补丁或恶意文件
可执行文件加载了一个DLL库,其中包括打了补丁的导入(librawf.dll)
图4. 导入的DLL库列表;高亮显示的库为修补后可加载另外恶意DLL的库
修补后的DLL(librawf.dll,与合法应用RawDigger(一个原始镜像分析器)相关)的导入地址表被进一步修补,修补包括了两个额外的DLL库。在下图中,请注意FirstThunk地址(新添加的库)是如何以001Dxxxx开始的,而不是原始库的FirstThunk地址中使用的0012xxxx。
图5. 一个经过修补的导入地址表
图5中高亮显示的库(libpushpp.dll)随后被加载和执行。它的主要任务是打开其中一个数据文件(hm)并加载存储在其中的第一阶段的shellcode。
图6. 恶意库打开一个数据文件
第一阶段shellcode的偏移量和大小被硬编码到DLL库中。
图7. 恶意库从偏移量0x37D50复制第一阶段的shellcode;shellcode的大小为0x75A字节
在较新版本的Babadeda加密器中,另一个DLL库(mdb.dll,来自虚假VPN的安装程序)被加载到内存中,然后第一阶段shellcode覆盖写入到一个硬编码随机选择的内存块。请注意,这种变化只是一个小细节,对第一阶段shellcode的整体功能没有影响。
图8. 内存加载合法库(mdb.dll),然后第一阶段shellcode(0x7B5字节)被复制到库的内存空间中
在第一阶段shellcode的末尾有一个配置表,包含了加密块的偏移量和它们各自的大小。然后,第一阶段shellcode解密并整合所有的块,形成第二阶段的shellcode(一个加载器)和主要的恶意软件(OpcJacker能加载其他恶意模块)。
图9. 第一阶段shellcode的配置表
配置表以至少八个相同的字符开始(图9中红色的 "*",但在其他样本中可能使用不同的字符),然后是数据文件的总长度(绿色字体;hm的长度=0x1775e0=1537504字节),加密密钥(黄色字体;0x18),shellcode第二阶段块数(棕色字体;0x07),最后,由主恶意软件的块数(白色字体;0x08)。0x07(红线框)和0x08(蓝线框)的列表相当于每个块的15个地址和大小。
在数据文件(hm)的开头,我们可以看到(WAV)文件头,因为它试图模仿WAVE文件格式。请注意,数据文件可以是不同的文件格式,CHM格式能被模仿篡改。
图10. 以WAV头开始的数据文件
主要的窃密器组件(OpcJacker)
主要的恶意软件组件(OpcJacker)是一个有趣的窃密器,首先解密并加载其配置文件。配置文件的格式类似于用自定义机器语言编写的字节码,其中每条指令都被解析,获得单独的操作码,然后执行具体的处理程序。
在分析自定义字节码时,我们注意到以下模式:
ASCII字符串被编码为01 xx xx xx <string bytes>;其中xx xx xx xx是字符串的长度。
图11. 配置文件内编码的ASCII字符串
同样地,宽的字符串从第02字节开始,而二进制数组从第03字节开始。
图12. 配置文件内编码的UNICODE字符串
图13. 配置文件内的编码二进制阵列
配置文件的格式是一个指令序列,其中指令以三个4字节的小端(DWORD)数字开始。第一个数字是虚拟程序计数器,第二个可能是父指令的虚拟程序计数器,而第三个是处理程序ID(将在虚拟机中执行的代码),后面是数据字节或附加处理程序ID。
基于这些观察,研究人员写了一个指令解析器,从中得到了以下输出。尽管对虚拟机内部实现的观察和理解是不完整的,但解析器让研究人员很好地理解了配置文件中定义的行为是什么。
解密和解码后的配置文件从某些系统变量的初始化开始,其中 "test "和 "rik "很可能是活动ID。由SHA256 c5b499e886d8e86d0d85d0f73bc760516e7476442d3def2feeade417926f04a5释放的配置文件包含不同的关键词 "test "和 "ilk "作为活动ID。同时,2023年2月的最新活动所释放的配置文件(SHA256 565EA7469F9769DD05C925A3F3EF9A2F9756FF1F35FD154107786BFC63703B52)包含关键词 "test_installs "和 "yorik"。
图14. 初始化命令
然后初始化剪贴板替换功能(剪切)。
图15. 剪贴板替换器(clipper)的初始化
然后,变量 "exe "被初始化为可执行文件字节(见4d 5a 90 = MZ标记)。这个可执行文件是一个远程访问工具。
图16. 嵌入式模块(PE EXE格式)
恶意软件通过注册表运行和任务调度器方法设置了持久性。请注意用于保存当前进程文件名的$itself_exe变量。
图17. 设置持久性的方法
然后,该恶意软件启动剪切功能,即监控剪报板上的加密货币地址,并将其替换为由攻击者自己的加密货币地址。
图18. 剪切器功能
最后,virtual_launch_exe函数运行先前嵌入的可执行文件,这些文件是RAT,要么是NetSupport RAT、NetSupport RAT下载器,要么是hVNC。
图19. 运行嵌入式可执行文件的功能
自定义虚拟机中的处理程序ID
从前面几张截图中的第三列(或解码后的 "命令 "变量)可以看出,虚拟机实现了许多内部处理程序。其中大部分都与各种数据操作有关。我们在表1中列出了几个值得注意的处理程序,它们具有特定的高级功能。偷窃器实现的功能包括:剪贴(剪贴板内容替换)、键盘记录、文件执行和列出、杀死进程、窃取Chrome证书、检测空闲和检测虚拟机。然而,在我们的测试场景中,我们观察到窃密器大多只是设置持久性和提供额外的模块(远程访问工具)。
Handler ID | Function |
0x3E9 | Used for persistence (registry; HKCU) |
0x3EA | Used for persistence (registry; HKLM) |
0x3EB | Used for persistence (startup folder) |
0x3EC;0x3ED | Used for persistence (task scheduler) |
0x7d1 | Lists files |
0x579 | Starts clipper |
0x57A | Stops clipper |
0x12d | Puts the machine into sleep mode |
0x385 | Terminates process |
0x387 | Exits process |
0x388; 0x38B | Runs PE executable |
0x389 | Runs shellcode |
0x38A | Runs PE executable export routine |
0x76D | Gets current committed memory limit (ullTotalPageFile) |
0x76E | Gets the amount of actual physical memory (ullTotalPhys) |
0x641 | Steals sensitive data from Chromium |
0x259 | Checks if the machine is idle and if the cursor is not moving |
0x25B | Checks if the machine is idle and if no new process is being created |
0x25D | Checks if the machine idle and if no new window is being created |
0x835 | Starts keylogger |
0x836 | Starts keylogger for a certain period |
0x837 | Stops keylogger |
0x839 | Copies data (likely logs) then return 0x83a (klogs) |
0x1F5 | Retrieves VMWare via CPUID |
0x1f7 | Searches for 'virtual' in SYSTEM\\ControlSet001\\Services\\disk\\Enum |
0x83A | Writes file(s) to klogs// |
0x89a | Writes file(s) to screenshots\\ |
0x596 | Writes to clp\clp_log.txt |
0xf6 | Writes file(s) to chromium_creds\\ |
0xCE | Copies files to filesystem\\ |
0x321 | Creates messagemonitor window, which needed for the clipper |
0x322 | Destroys messagemonitor window, which is needed for the clipper |
0x5DC | Gets environment ID |
0x5E0 | Runs GetModuleFileNameW, which is needed for resolving $itself_exe |
表1. 虚拟机命令ID
图20. 在窃密器的二进制中实现的与键盘记录器有关的命令;在截图中也可以看到命令ID(0x835;0x837;0x836;0x839)
嵌入式模块
NetSupport RAT模块
一些嵌入式模块包含NetSupport RAT的client32.exe(SHA256 18DF68D1581C11130C139FA52ABB74DFD098A9AF698A250645D6A4A65EFCBF2D或SHA256 49A568F8AC11173E3A0D76CFF6BC1D4B9BDF2C35C6D8570177422F142DCFDBE3)文件。然而,这个单一的文件是不够的,因为NetSupport工具需要额外的DLL库和一个配置文件。请注意,这些缺失的文件已经被修改后的安装程序丢进了安装目录。
对于研究人员来说,最重要的文件叫做client32.ini,它包含重要的设置,如网关地址、网关密钥(GSK)和端口。
图21. NetSupport RAT的配置文件
NetSupport RAT下载器模块
一些嵌入式模块包含NetSupport RAT下载器(SHA256 C68096EB0A655924CA840EA1C71F9372AC055F299B52335AD10DDFA835F3633D)。这个下载器对URL的payload进行解密,然后下载并执行它。
图22. 解密后的下载器配置文件,额外的URL以清晰的文字显示出来
解密后的配置包含两个URL,一个通向包含NetSupport RAT的档案,就像之前的模块一样,而第二个则包含一些批处理脚本,显示的信息如图23中的信息。后来,这些批处理脚本中的一个下载了额外的窃密器。
图23. 告诉受害者等待程序安装的钓鱼信息
hVNC模块
一些嵌入式模块包含一个修改的hVNC模块F772B652176A6E40012969E05D1C75E3C51A8DB44712454975678F04DEDAAA。这个模块,除了标准的远程桌面功能外,还包含搜索以下加密货币相关的谷歌浏览器、微软Edge和火狐浏览器扩展(钱包)存在的例程:
Google Chrome extension ID | Extension name |
ffnbelfdoeiohenkjibnmadjiehjhajb | Yoroi |
ibnejdfjmmkpcnlpebklmnkoeoihofec | TronLink |
jbdaocneiiinmjbjlgalhcelgbejmnid | Nifty Wallet |
nkbihfbeogaeaoehlefnkodbefgpgknn | MetaMask |
afbcbjpbpfadlkmhmclhkeeodmamcflc | Math Wallet |
hnfanknocfeofbddgcijnmhnfnkdnaad | Coinbase Wallet |
fhbohimaelbohpjbbldcngcnapndodjp | Binance Wallet |
odbfpeeihdkbihmopkbjmoonfanlbfcl | Brave Wallet |
hpglfhgfnhbgpjdenjgmdgoeiappafln | Guarda Wallet |
blnieiiffboillknjnepogjhkgnoapac | Equall Wallet |
cjelfplplebdjjenllpjcblmjkfcffne | Jaxx Liberty |
fihkakfobkmkjojpchpfgcmhfjnmnfpi | BitApp Wallet |
kncchdigobghenbbaddojjnnaogfppfj | iWallet |
amkmjjmmflddogmhpjloimipbofnfjih | Wombat |
fhilaheimglignddkjgofkcbgekhenbh | Oxygen |
nlbmnnijcnlegkjjpcfjclmcfggfefdm | MyEtherWallet |
nanjmdknhkinifnkgdcggcfnhdaammmj | GuildWallet |
nkddgncdjgjfcddamfgcmfnlhccnimig | Saturn Wallet |
fnjhmkhhmkbjkkabndcnnogagogbneec | Ronin Wallet |
aiifbnbfobpmeekipheeijimdpnlpgpp | Station Wallet |
fnnegphlobjdpkhecapkijjdkgcjhkib | Harmony |
aeachknmefphepccionboohckonoeemg | Coin98 |
cgeeodpfagjceefieflmdfphplkenlfk | EVER Wallet |
pdadjkfkgcafgbceimcpbkalnfnepbnk | KardiaChain |
bfnaelmomeimhlpmgjnjophhpkkoljpa | Phantom |
fhilaheimglignddkjgofkcbgekhenbh | Oxygen |
mgffkfbidihjpoaomajlbgchddlicgpn | Pali |
aodkkagnadcbobfpggfnjeongemjbjca | BoltX |
kpfopkelmapcoipemfendmdcghnegimn | Liquality |
hmeobnfnfcmdkdcmlblgagmfpfboieaf | XDEFI |
lpfcbjknijpeeillifnkikgncikgfhdo | Nami |
dngmlblcodfobpdpecaadgfbcggfjfnm | MultiversX DeFi |
表2. 针对Chrome浏览器的扩展程序
Microsoft Edge extension ID | Extension name |
akoiaibnepcedcplijmiamnaigbepmcb | Yoroi |
ejbalbakoplchlghecdalmeeeajnimhm | MetaMask |
dfeccadlilpndjjohbjdblepmjeahlmm | Math Wallet |
kjmoohlgokccodicjjfebfomlbljgfhk | Ronin Wallet |
ajkhoeiiokighlmdnlakpjfoobnjinie | Terra Station |
fplfipmamcjaknpgnipjeaeeidnjooao | BDLT wallet |
niihfokdlimbddhfmngnplgfcgpmlido | Glow |
obffkkagpmohennipjokmpllocnlndac | OneKey |
kfocnlddfahihoalinnfbnfmopjokmhl | MetaWallet |
表3. 针对EDGE浏览器的扩展程序
Mozilla Firefox extension ID | Extension name |
{530f7c6c-6077-4703-8f71-cb368c663e35}.xpi | Yoroi |
ronin-wallet@axieinfinity.com.xpi | Ronin Wallet |
webextension@metamask.io.xpi | MetaMask |
{5799d9b6-8343-4c26-9ab6-5d2ad39884ce}.xpi | TronLink |
{aa812bee-9e92-48ba-9570-5faf0cfe2578}.xpi | |
{59ea5f29-6ea9-40b5-83cd-937249b001e1}.xpi | |
{d8ddfc2a-97d9-4c60-8b53-5edd299b6674}.xpi | |
{7c42eea1-b3e4-4be4-a56f-82a5852b12dc}.xpi | Phantom |
{b3e96b5f-b5bf-8b48-846b-52f430365e80}.xpi | |
{eb1fb57b-ca3d-4624-a841-728fdb28455f}.xpi | |
{76596e30-ecdb-477a-91fd-c08f2018df1a}.xpi |
表4. 针对火狐浏览器的扩展程序
在我们分析的样本中,命令和控制(C&C)通信以下列魔法开始:
图24. HVNC网络通信魔法
下面的片段显示,有些值是硬编码到可执行文件中的,其他的是由MachineGuid生成的或随机生成的。注意图25中看到的字符串 "7.7",这可能是修改后的hVNC版本。
图25. 生成hVNC数据包魔法的代码
总结
OpcJacker的控制者的使用动机看起来是出于经济利益,因为该恶意软件的主要目的是从钱包中窃取加密货币资金。然而,其多功能性也允许OpcJacker作为一个窃密器或恶意软件loader,这意味着它可以在其最初的预期用途之外被使用。
我们在样本中发现的活动ID,如 "test "和 "test_installs",表明OpcJacker可能仍处于开发和测试阶段。鉴于其独特的设计与各种类似虚拟机的功能相结合,该恶意软件有可能广受攻击者欢迎,因此可能在未来的威胁活动中使用。
from https://www.freebuf.com/articles/paper/363188.html
相关推荐
- MIRIX重塑AI记忆:超Gemini 410%,节省99.9%内存,APP同步上线
-
MIRIX,一个由UCSD和NYU团队主导的新系统,正在重新定义AI的记忆格局。在过去的十年里,我们见证了大型语言模型席卷全球,从写作助手到代码生成器,无所不能。然而,即使最强大的模型依...
- 硬盘坏了怎么把数据弄出来对比10种硬盘数据恢复软件
-
机械硬盘或固态硬盘损坏导致数据丢失时,应立即停止对硬盘的读写操作,并根据损坏类型选择逻辑层恢复工具或专业物理恢复服务。紧急处置措施立即停止通电使用:发现硬盘异响、无法识别或数据异常时,需立即断开连接,...
- 蓝宝石B850A WIFI主板新玩法:内存小参调节体验
-
蓝宝石前段时间发布了一款性价比极高的主板:NITRO氮动B850AWIFI主板。这款主板的售价只要1349元,相比普遍1500元以上的B850主板,确实极具竞争力。虽然价格实惠,蓝宝石NITR...
- 内存卡损坏读不出怎么修复?这5个数据恢复工具汇总,3秒挽回!
-
在数字化生活的浪潮中,内存卡凭借小巧便携与大容量存储的特性,成为相机、手机、行车记录仪等设备存储数据的得力助手,承载着无数珍贵回忆与重要文件。然而,当内存卡突然损坏无法读取,无论是误删、格式化、病毒入...
- 内存卡修复不再难,2025年必学的6款软件工具
-
内存卡出现问题时,通常是因为文件系统损坏、物理损坏或病毒感染。通过专业的修复工具,我们可以尝试恢复数据并修复内存卡。内存卡修复利器:万兴恢复专家万兴恢复专家是一款功能强大的数据恢复软件,支持多种设备和...
- 有5款内存卡修复工具汇总,内存卡数据轻松找回!
-
在如今的数字时代,内存卡作为不可或缺的存储介质,广泛应用于相机、手机、行车记录仪等各类设备中,承载着我们珍贵的照片、视频以及重要文件。然而,数据丢失的风险却如影随形,误删、格式化、病毒入侵、硬件故障等...
- 揭秘:如何通过多种方式精准查询内存条型号及规避风险?
-
以下是内存条型号查询的常用方法及注意事项,综合了物理查看、软件检测、编码解析等多种方式:一、物理标签查看法1.拆机查看标签打开电脑主机/笔记本后盖找到内存条,观察标签上的型号标识。例如内存标签通常标...
- 内存卡数据恢复5个工具汇总推荐,轻松找回珍贵记忆!
-
在这个数字化时代,内存卡作为我们存储珍贵照片、重要文件的常用载体,广泛应用于手机、相机、平板电脑等设备。但数据丢失的意外却常常不期而至,误删除、格式化、病毒攻击,甚至内存卡的物理损坏,都可能让辛苦保存...
- 电脑内存智能监控清理,优化性能的实用软件
-
软件介绍Memorycleaner是一款内存清理软件。功能很强,效果很不错。Memorycleaner会在内存用量超出80%时,自动执行“裁剪进程工作集”“清理系统缓存”以及“用全部可能的方法清理...
- TechPowerUp MemTest64:内存稳定性测试利器
-
TechPowerUpMemTest64:内存稳定性测试利器一、软件简介TechPowerUpMemTest64,由知名硬件信息工具GPU-Z的出品公司TechPowerUp发布,是一款专为64位...
- 微软推出AI恶意软件检测智能体Project Ire,精确度高达98%
-
IT之家8月6日消息,当地时间周二,微软宣布推出可自主分析恶意软件的AI检测系统原型——ProjectIre。该项目由微软研究院、Defender研究团队及Discovery&a...
- 农村老木匠常用的20种老工具,手艺人靠它养活一家人,你认识几种
-
生活中的手艺老匠人是非常受到尊敬和崇拜的,特别是在农村曾经的老匠人都是家里的“座上宾”。对于民间传统的手艺人,有一种说法就是传统的八大匠:木匠、泥匠、篾匠、铁匠、船匠、石匠、油匠和剃头匠。木匠的祖始爷...
- 恶意木马新变种伪装成聊天工具诱人点击
-
国家计算机病毒应急处理中心通过对互联网监测发现,近期出现一种恶意木马程序变种Trojan_FakeQQ.CTU。该变种通过伪装成即时聊天工具,诱使计算机用户点击运行。该变种运行后,将其自身复制到受感染...
- 学习网络安全 这些工具你知道吗?
-
工欲善其事必先利其器,在新入门网络安全的小伙伴而言。这些工具你必须要有所了解。本文我们简单说说这些网络安全工具吧!Web安全类web类工具主要是通过各种扫描工具,发现web站点存在的各种漏洞...
- 5分钟盗走你的隐私照片,这个全球性漏洞到底有多可怕?
-
这个时代,大家对电脑出现漏洞,可能已经习以为常。但如果机哥告诉大家,这个漏洞能够在5分钟内,破解并盗取你所有加密文件,而且还无法通过软件和补丁修复...这可就有点吓人啦。事情是酱婶的。来自荷兰埃因...
你 发表评论:
欢迎- 一周热门
- 最近发表
- 标签列表
-
- 如何绘制折线图 (52)
- javaabstract (48)
- 新浪微博头像 (53)
- grub4dos (66)
- s扫描器 (51)
- httpfile dll (48)
- ps实例教程 (55)
- taskmgr (51)
- s spline (61)
- vnc远程控制 (47)
- 数据丢失 (47)
- wbem (57)
- flac文件 (72)
- 网页制作基础教程 (53)
- 镜像文件刻录 (61)
- ug5 0软件免费下载 (78)
- debian下载 (53)
- ubuntu10 04 (60)
- web qq登录 (59)
- 笔记本变成无线路由 (52)
- flash player 11 4 (50)
- 右键菜单清理 (78)
- cuteftp 注册码 (57)
- ospf协议 (53)
- ms17 010 下载 (60)