概述
Manner
勒索软件,样本使用“白加黑”的方式运行。根据分析该可能通过恶意下载链接、恶意的程序安装包等方式传播,伪装为虚假的QQMusic播放器向国内用户发起勒索攻击。该勒索软件启动后加密磁盘文件随后通过弹出消息窗口显示勒索信。使用开源对称算法的文件加密程序,经过技术分析被加密的文件能够进行解密恢复。
样本分析
字段 | 内容 |
---|---|
原始文件名 | vcruntime140.dll |
文件大小 | 503 KB |
文件 MD5 | 521f6093b8f3f75c857275c5c654a5ab |
文件类型 | Win32 DLL |
病毒名 | Ransom.Manner!.EA20 |
主要功能 | 勒索病毒侧加载文件,启动后执行文件加密,弹出勒索信。 |
恶意DLL文件名为vcruntime140.dll,通过白文件侧加载启动,根据恶意DLL开发者的PDB信息D:\QQMusicModel\vcruntime140\Release\vcruntime140.pdb
,我们推断使用的白文件是QQMusic.exe。
该样本使用开源的CryptoPP算法库构造初始密钥和IV数据。
.text:6A893D62 call ??0RandomPool@CryptoPP@@QAE@XZ ; CryptoPP::RandomPool::RandomPool(void)
.text:6A893D67 push 32 ; dwLen
.text:6A893D67 ; } // starts at 6A893D4E
.text:6A893D69 ; try {
.text:6A893D69 mov byte ptr [ebp-4], 2
.text:6A893D6D lea ecx, [ebp-0B8h]
.text:6A893D73 mov edi, offset ??_7AutoSeededRandomPool@CryptoPP@@6B@ ; const CryptoPP::AutoSeededRandomPool::`vftable'
.text:6A893D78 push esi ; int
.text:6A893D79 mov [ebp-0B8h], edi
.text:6A893D7F call ?Reseed@AutoSeededRandomPool@CryptoPP@@QAEX_NI@Z ; CryptoPP::AutoSeededRandomPool::Reseed(bool,uint)
创建本地密钥文件用于存储这些数据:
C:\Windows\system32lri.dat
:用于存储ChaCha20的IV占8字节
C:\Windows\system32lrk.dat
:用于存储ChaCha20的KEY占32字节
随后从盘符A – Z依次遍历系统磁盘,加密的文件将在文件末尾追加新的后缀格式_lcry_enc
.text:6A8943CD mov eax, ds:SetFileAttributesA
.text:6A8943D2 lfence
.text:6A8943D5 call eax ; SetFileAttributesA
.text:6A8943D7 lea eax, [ebp+FindFileData.cFileName]
.text:6A8943DD push eax ; int
.text:6A8943DE lea edx, [ebp+var_28] ; int
.text:6A8943E1 lea ecx, [ebp+Src] ; void *
.text:6A8943E4 call _strcat
.text:6A8943E4 ; } // starts at 6A8943A3
.text:6A8943E9 ; try {
.text:6A8943E9 mov byte ptr [ebp+var_4], 2
.text:6A8943ED lea ecx, [ebp+Src]
.text:6A8943F0 mov [esp+204h+var_204], offset aLcryEnc ; "_lcry_enc"
.text:6A8943F7 call strcat_1
使用CryptoPP库的ChaCha算法加密文件数据。
.text:6A89831F mov byte ptr [edx+49h], 1
.text:6A898323 mov eax, edx
.text:6A898325 and eax, 0Fh
.text:6A898328 mov dword ptr [edx+50h], 3FFFFFFFh
.text:6A89832F mov dword ptr [edx+54h], 16
.text:6A898336 add eax, edx
.text:6A898338 mov [edx+58h], eax
.text:6A89833B mov eax, esi
.text:6A89833D mov dword ptr [esi+88h], 20
.text:6A898347 mov dword ptr [esi], offset ??_7?$SymmetricCipherFinal@V?$ConcretePolicyHolder@VChaCha_Policy@CryptoPP@@V?$AdditiveCipherTemplate@V?$AbstractPolicyHolder@UAdditiveCipherAbstractPolicy@CryptoPP@@VSymmetricCipher@2@@CryptoPP@@@2@UAdditiveCipherAbstractPolicy@2@@CryptoPP@@UChaCha_Info@2@@CryptoPP@@6B@ ; const CryptoPP::SymmetricCipherFinal<CryptoPP::ConcretePolicyHolder<CryptoPP::ChaCha_Policy,CryptoPP::AdditiveCipherTemplate<CryptoPP::AbstractPolicyHolder<CryptoPP::AdditiveCipherAbstractPolicy,CryptoPP::SymmetricCipher>>,CryptoPP::AdditiveCipherAbstractPolicy>,CryptoPP::ChaCha_Info>::`vftable'
.text:6A89834D mov dword ptr [esi+4], offset ??_7?$SymmetricCipherFinal@V?$ConcretePolicyHolder@VChaCha_Policy@CryptoPP@@V?$AdditiveCipherTemplate@V?$AbstractPolicyHolder@UAdditiveCipherAbstractPolicy@CryptoPP@@VSymmetricCipher@2@@CryptoPP@@@2@UAdditiveCipherAbstractPolicy@2@@CryptoPP@@UChaCha_Info@2@@CryptoPP@@6B@_0 ; const CryptoPP::SymmetricCipherFinal<CryptoPP::ConcretePolicyHolder<CryptoPP::ChaCha_Policy,CryptoPP::AdditiveCipherTemplate<CryptoPP::AbstractPolicyHolder<CryptoPP::AdditiveCipherAbstractPolicy,CryptoPP::SymmetricCipher>>,CryptoPP::AdditiveCipherAbstractPolicy>,CryptoPP::ChaCha_Info>::`vftable'
.text:6A898354 mov dword ptr [esi+8], offset ??_7?$SymmetricCipherFinal@V?$ConcretePolicyHolder@VChaCha_Policy@CryptoPP@@V?$AdditiveCipherTemplate@V?$AbstractPolicyHolder@UAdditiveCipherAbstractPolicy@CryptoPP@@VSymmetricCipher@2@@CryptoPP@@@2@UAdditiveCipherAbstractPolicy@2@@CryptoPP@@UChaCha_Info@2@@CryptoPP@@6B@_1 ; const CryptoPP::SymmetricCipherFinal<CryptoPP::ConcretePolicyHolder<CryptoPP::ChaCha_Policy,CryptoPP::AdditiveCipherTemplate<CryptoPP::AbstractPolicyHolder<CryptoPP::AdditiveCipherAbstractPolicy,CryptoPP::SymmetricCipher>>,CryptoPP::AdditiveCipherAbstractPolicy>,CryptoPP::ChaCha_Info>::`vftable'
.text:6A89835B mov dword ptr [esi+20h], offset ??_7?$SymmetricCipherFinal@V?$ConcretePolicyHolder@VChaCha_Policy@CryptoPP@@V?$AdditiveCipherTemplate@V?$AbstractPolicyHolder@UAdditiveCipherAbstractPolicy@CryptoPP@@VSymmetricCipher@2@@CryptoPP@@@2@UAdditiveCipherAbstractPolicy@2@@CryptoPP@@UChaCha_Info@2@@CryptoPP@@6B@_2 ; const CryptoPP::SymmetricCipherFinal<CryptoPP::ConcretePolicyHolder<CryptoPP::ChaCha_Policy,CryptoPP::AdditiveCipherTemplate<CryptoPP::AbstractPolicyHolder<CryptoPP::AdditiveCipherAbstractPolicy,CryptoPP::SymmetricCipher>>,CryptoPP::AdditiveCipherAbstractPolicy>,CryptoPP::ChaCha_Info>::`vftable'
在加密结束后通过弹窗提醒受害者,支付赎金100USDT才能够获得解密器解密文件。
预防措施
-
部署网络安全态势感知、预警系统等网关安全产品。
网关安全产品可利用威胁情报追溯威胁行为轨迹,帮助用户进行威胁行为分析、定位威胁源和目的,追溯攻击的手段和路径,从源头解决网络威胁,最大范围内发现被攻击的节点,帮助企业更快响应和处理。
-
使用瑞星Manner勒索解密工具,恢复被加密的文件。
使用Rising_Manner勒索解密工具可以及时恢复被Manner勒索加密的病毒文件,保证重要的文档、文件正常使用。
-
安装有效的杀毒软件,拦截查杀恶意文档和木马病毒。
杀毒软件可拦截恶意文档和木马病毒,如果用户不小心下载了恶意文件,杀毒软件可拦截查杀,阻止病毒运行,保护用户的终端安全。
沦陷信标(IOC)
- MD5
521f6093b8f3f75c857275c5c654a5ab 354d9515b6b9870527992eeb98456d8f f885b80e2ee53a918f16933155f246f4 2a30d7c6413735f3ca2e6816e424b369