吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 15228|回复: 27
收起左侧

[转载] GandCrab v5.0.x 那些事儿——行为分析、免疫与救援须知

[复制链接]
Caitingting 发表于 2018-11-28 15:26
使用论坛附件上传样本压缩包时必须使用压缩密码保护,压缩密码:52pojie,否则会导致论坛被杀毒软件等误报,论坛有权随时删除相关附件和帖子!
病毒分析分区附件样本、网址谨慎下载点击,可能对计算机产生破坏,仅供安全人员在法律允许范围内研究,禁止非法用途!
禁止求非法渗透测试、非法网络攻击、获取隐私等违法内容,即使对方是非法内容,也应向警方求助!
本帖最后由 Caitingting 于 2018-12-4 10:02 编辑

12月4日更新内容——微软或正在积极免疫勒索软件

今日凌晨,我的windows10得到了一次重大更新推送,安装折腾了约40分钟。
重新进入系统之后,发现了一些变化,比如小伙伴们高频使用的截屏工具↓

捕获0.JPG


而最让我眼前一亮的,是它:
windows已经在系统内部集成了“勒索软件防护”

捕获.JPG

详细的,点开相关设置选项,感觉还是比较不错的

捕获1.JPG

除了云备份至系统登陆账户关联的onedrive之外,系统自身已经新增“文件夹限制访问”的能力。你可以把照片、视频等个人数据放入专门的文件夹,然后添加这些文件夹至“受保护的文件夹”。

捕获3.JPG

捕获4.JPG

↑然后,除了受保护文件夹的自定义,windows在开启勒索软件防护后,应该系统底层已经有了某种“免疫机制”(个人猜测)
在下文中小伙伴们可以看到,勒索软件行为千变万化,各种壳各种花……但是
“生成一对密钥,用公钥加密文件,然后删除原文件并扔掉私钥”的行为是不可能变的
windows应该能够识别一些“不友好”的行为了——譬如非用户自己操作的对文件加密的行为
目前正在虚拟机安装最新windows10企业版,将测试看看,GandCrab系列能不能让系统“故意中毒”。有结果,此贴会继续更新内容。

//------------------------------------------------------------------------------
写在前面:

根据我个人“独家采访”位于四川成都某知名数据救援中心负责人,他表示:
5.0.3/4 目前无法解密,只能通过技术手段尝试恢复被病毒体删掉的原始文件,成功率不高(但是也不至于T级容量的硬盘只能恢复出一些无关紧要的小文件)。
另外个人要提醒大家,不要病急乱投医,若中毒,切勿相信“某度”之类的乌烟瘴气的地方,那些号称能大概率恢复文件的都是骗子!
因为骗子工作室会不断给你中途加价,和新闻里报道的“xx男科包皮切到一半加价一万否则不善后”一样。而正规的数据救援中心,报价后是要签合同的,虽贵,但却是明明白白消费。

本文系转载+二次综合编辑,内容来源如下:


病毒分析
https://xz.aliyun.com/t/2891
https://xz.aliyun.com/t/2885


卖咖啡技术原文:
https://securingtomorrow.mcafee.com/mcafee-labs/rapidly-evolving-ransomware-gandcrab-version-5-partners-with-crypter-service-for-obfuscation/


CVE-2018-8120高危漏洞技术细节:
https://www.mcafee.com/enterprise/es-es/threat-center/threat-landscape-dashboard/vulnerabilities-details.cve-2018-8120.html

//----------------------------------------------------------------------------------------------

免疫——

目前独立安全研究者Valthek(推特号 @ValthekOn)已发布有效的免疫工具,可以预防GandCrab 4.x 到5.0.2不被加密。

具体参见:https://29wspy.ru/reversing.html   <----个人建议沙盒模式访问,网站本身不是恶意站点,但是不能保证啥时候被坏人攻陷

对Version 4.x版本,删除影子卷是不可避免的,但至少文件本身是安全的。

对Version 5.x版本,加密文件是可以避免的,但创建和修改墙纸无法避免。恶意软件不能创建随机扩展来加密文件,但是这些随机字符串已经准备好的。如果墙纸在%TEMP%文件夹中,运行免疫工具可以移除墙纸。

------------------------------------------------------------------------------------------------

简介——

根据卖咖啡今年10月发布的一份报告,GandCrab V5版本使用了许多机制来感染系统。
下图是GandCrab的行为概览:

20181013225140-7e30fafa-cef7-1.png

V5.0版本一共发布过两个版本。第一个版本由于编译时的重大错误,主要运行在win7及之后的平台上。因为恶意软件作者用正常的函数调用来写利用代码。因此编译时,二进制文件的IAT充满了调用所需的DLL。而DLL并不存在于Windows Vista和XP系统中,因此恶意软件不能运行在win7以前的系统中,编译时就会出错。

V5.0利用两个漏洞来进行权限提升。首先检查操作系统的版本和进程的TokenIntegrityLevel类,如果SID Subauthority是SECURITY_MANDATORY_LOW_RID (0x1000),并且通过mutex值检查,就尝试执行漏洞利用。

第二个版本是黑客SandboxEscaper今年8月在Twitter和GitHub上发布的漏洞利用:

  • GitHub页面为https://github.com/SandboxEscaper/randomrepo
  • Twitter页面为https://twitter.com/sandboxescaper

该漏洞利用尝试使用Windows操作系统处理高级本地过程调用(advanced local procedure call)不当时任务系统(Task System)的漏洞。GandCrab作者称没有CVE的漏洞利用,但实际上有CVE-2018-8440。

该漏洞利用影响win7到win10的服务器。第二个发布的版本使用动态调用,并混淆了漏洞利用中的字符串,如下图所示。

20181010-Gandcrab-7.png



第二个漏洞利用涵盖了CVE-2018-8120,可以在win7、Windows server 2008 R2和Windows server 2008上进行权限提升。因为system进程token的对象有错误,改变了恶意软件中的token,最终导致恶意软件以system权限运行了。 20181010-Gandcrab-8.png 恶意软件会检查操作系统的版本和用户的类型,以确定在应用漏洞利用前是否可以获取进程的token提权信息。在一些案例中,是不能成功感染的。比如,在Windows XP系统中,v5的第二个发布版本可以允许,但是不能加密文件。研究人员和Lemmou发现了Version 5.0.2中的问题,对注册表做一些修改就可以使恶意软件正常运行,但白帽怎么可以帮黑客修复恶意软件呢。但第二个版本使用的扩展是随机的5个字母,而不是之前版本中看到的.CRAB或.KRAB扩展。恶意软件会将该信息以二进制数据的形式保存在ext_data\data中的一个新注册表中,值为ext.。 20181010-Gandcrab-9.png
恶意软件会在HKEY_LOCAL_MACHINE的根key下创建新的记录。如果用户没有管理权限,就不能成功创建,然后将会将该记录放在HKEY_CURRENT_USER的根key中。文件加密后,一些样本中的该记录会被删除。


//----------------------------------------------------------------------
病毒体分析——


恶意软件开始使用两个漏洞利用进行权限提升。第一个漏洞利用对函数IsWoW64Process进行动态调用来检测操作系统运行的32位还是64位。 20181010-Gandcrab-10.png
根据结果,恶意软件有两个嵌入的DLL,用XOR 0x18进行简单加密操作。
20181010-Gandcrab-11.png
恶意软件作者用fuzzing技巧来绕过检测:DLL的前2个字节是垃圾信息,在之后的版本中修复了。
解密和加载漏洞利用后,DLL会在系统中创建一个mutex和一些管道来与主恶意软件进行通信。
恶意软件会创建一个DLL之后读取的管道,并准备一些字符串作为DLL的mutex字符串。
20181010-Gandcrab-12.png DLL的这些字符串有dummy string(虚拟字符串)。
20181010-Gandcrab-13.png

恶意软件开始时会检查该mutex。
函数返回的1或0却决于是否可以打开mutex。然后检查结果,如果mutex可以打开,恶意软件就不会检查版本并不会用这两个漏洞利用来进行提权。


20181010-Gandcrab-14.png



GandCrab V4.x版本之后,恶意软件会在之后检查版本。如果是Vista或之后版本,会尝试获取TokenIntegrityLevel类并重启二进制文件来提权,并以runas应用调用ShellExecuteExW。如果系统是Windows XP,代码就会继续正常流。并不会为主恶意软件创建mutex,mutex是为利用漏洞加载的DLL创建的。为了更好地理解,看一下下面的IDA片段:
20181010-Gandcrab-15.png
本版本还修改了桌面墙纸,是在运行时创建的,并用加密文件的扩展填充。勒索信文本或HTML的名为<extension_in_uppercase>_DECRYPT. <txt|html>和机器用户名。
20181010-Gandcrab-16.png 检查用户名,如果用户是SYSTEM,恶意软件就在墙纸上显示USER。
20181010-Gandcrab-17.png


在文件夹 %TEMP%中创建名为pidor.bmp的墙纸:

20181010-Gandcrab-18.png


这是墙纸名所用的字符串,检查用户名和格式的字符串:
20181010-Gandcrab-19.png


最后,对所有用户设置墙纸:


20181010-Gandcrab-20.png


恶意软件会检查系统语言,解密字符串,并根据系统语言写出对应的勒索信。


//--------------------------------------------------------------------------------
5.0.3的JS脚本分析——

GandCrabV5.0.3的JS脚本主要功能:
(1)对抗Avast杀软
(2)对抗Windows Defender
(3)对抗MSE微软杀毒服务
(4)对抗Ahnlab安博士杀软
(5)生成GandCrabV5.0.3勒索病毒变种样本并执行
详细分析如下
1.JS代码,如下所示:

2.从以上JS脚本中提取出里面的解密后的代码,如下所示:

对里面的函数功能进行介绍,ffnoui生成相应的js脚本或GandCrab勒索病毒程序,如下所示:

hmvfdhlkxzz获取系统所有服务及运行状态,如下所示:

vwuyaxrl调用WScript.Shell执行生成的相应的JS脚本,如下所示:

3.对抗Avast杀软,如果检测到系统服务中包含Avast杀软服务,则生成相应的脚本并执行,如下所示:

生成的kyoxks.js脚本内容,如下所示:

解密出相应的JS脚本内容,如下所示:

以上脚本的功能是先将一代PowerShell脚本代码写入到注册表项中,相应的注册表项:
HKEY_CURRENT_USER\SOFTWARE\ycsdrr\pvrylqzhlnv,相应的PowerShell脚本解密之后,如下所示:
查找并启动Avast更新程序,同时拷贝相应的杀软文件到临时目录,清除缓存数据等,如下所示:

遍历Avast更新程序进程,如下所示:

查找Avast更新程序窗口进程ID,如下所示:

发送相应的消息,如下所示:

将上述的PowerShell命令代码写入到注册表之后,再通过PowerShell创建相应的计划任务并执行,通过计划任务执行上面的PowerShell代码,如下所示:

4.对抗Windows Defender,如果检测到系统服务中包含WdNisSvc或WinDefend服务,则生成相应的脚本并执行,如下所示:

生成的nykvwcajm.js脚本,如下所示:

解密出相应的JS脚本内容,查找WdNisSvc或WinDefend服务,如下所示:

将关闭Windows Defender软件实时监控和结束相关进程的命令写入到注册表项中,相应的注册表项,如下所示:
HKEY_CURRENT_USER\Software\Classes\ms-settings\shell\open\command\
HKEY_CURRENT_USER\Software\Classes\mscfile\shell\open\command\
相应的命令行,如下所示:
cmd.exe /C "powershell Set-MpPreference -DisableRealtimeMonitoring $true && taskkill /im MSASCui /f /t
cmd.exe /C "sc stop WinDefend && taskkill /im MSASCui
/f /t
然后通过启动相关程序,执行命令,如下所示:

最后删除相应的注册表项,注册表项如下:
HKEY_CURRENT_USER\Software\Classes\ms-settings\shell\open\command\
HKEY_CURRENT_USER\Software\Classes\mscfile\shell\open\command\
5.对抗MSE微软杀毒服务,如果检测到系统服务中包含NisSrv,则生成相应的脚本并执行,如下所示:

生成的bervcptyvulur.js脚本的内容,如下所示:

解密出相应的JS脚本内容,查找系统服务中是否存在NisSrv服务,如下所示:

将关闭MSE进程的代码写入到注册表中,相应的注册表项:
HKEY_CURRENT_USER\Software\Classes\ms-settings\shell\open\command\
HKEY_CURRENT_USER\Software\Classes\mscfile\shell\open\command\
相应的代码:
MsiExec.exe /X{2AA3C13E-0531-41B8-AE48-AE28C940A809} ACCEPT=YES /qr+ /quiet
然后启动相关进程,执行关闭MSE的代码,如下所示:

最后删除相应的注册表项,注册表项如下:
HKEY_CURRENT_USER\Software\Classes\ms-settings\shell\open\command\
HKEY_CURRENT_USER\Software\Classes\mscfile\shell\open\command\
6.对抗安博士杀软,如果检测到系统服务中包含V3 Service,则生成相应的脚本并执行,如下所示:

生成的recjyzcz.js脚本的内容,如下所示:

解密出相应的JS脚本内容,查找系统服务中是否存在V3 Service服务,如下所示:

将一串base64加密的字符串写入到相应的注册表项,如下所示:

写入的注册表项为:HKEY_CURRENT_USER\Software\capvzgf\cazysa,通过Base64解密出相应的字符串,查找Ahnlab安博士杀软的卸载程序,并执行卸载程序,如下所示:

然后将执行此注册表项命令的PowerShell脚本写入到相应的注册表项,并通过启动相应的程序执行,如下所示:

执行注册表项的PowerShell命令解密出来的代码,如下所示:

最后通过执行PowerShell脚本,查找启动Ahnlab的卸载程序,卸载Ahnlab杀毒软件,同时删除相应的注册表项,注册表项如下:
HKEY_CURRENT_USER\Software\Classes\ms-settings\shell\open\command\
HKEY_CURRENT_USER\Software\Classes\mscfile\shell\open\command\
7.最后生成GandCrabV5.0.3的勒索病毒母体,并执行勒索病毒加密主机,如下所示:

生成的相应的GandCrabV5.0.3版本的勒索病毒样本,样本运行之后,如下所示:

勒索信息文本文件,如下所示:

解密的TOR链接相关信息,如下所示:


8.这里我也简单分析一下GandCrabV5.0.3的勒索病毒样本吧,主要是教一些人怎么提取一下Payload代码,虽然这不是本文的重点,但你不说总有人不会,GandCrabV5.0.3第一层解密操作,如下所示:

解密出相应的代码,如下所示:

9.然后动态调试,执行到如下地址处,进行第二层Payload的解密操作,如下所示:

解密出第二层GandCrabV5.0.3的核心Payload代码,从内存中Dump出来,修复PE文件之后,如下所示:

可以看到这个GandCrab勒索病毒的版本为GandCrabV5.0.3,如下所示:

这里就不详细分析GandCrab核心Payload代码了,GandCrabV5.0.3的核心代码与GandCrabV5.0的核心代码是差不多的,可以参考之前我分析发表过的GandCrabV5.0勒索病毒分析报告(百度搜索:勒索病毒GandCrabV5.0最新变种来袭)。从JS脚本释放的GandCrabV5.0.3的母体是一个外壳,它会在内存中通过二次解密出相应的GandCrabV5.0.3的核心加密Payload代码,这也是母体样本分析的重点,也是动态调试的关键点,解密出相应的核心代码之后,然后再在内存中执行相应的加密操作,有兴趣的可以自己动态调试分析。


//-----------------------------------------------------------------------------
病毒样本下载:请前往原文出处页面底部: https://xz.aliyun.com/t/2885   自行下载(注意安全,切勿实机测试!)

免费评分

参与人数 5吾爱币 +5 热心值 +5 收起 理由
fr33m4n + 1 + 1 用心讨论,共获提升!
lookerJ + 1 + 1 用心讨论,共获提升!
xinkui + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
wangjiankai + 1 + 1 热心回复!
52user + 1 + 1 谢谢@Thanks!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

xxnbyy 发表于 2019-2-13 18:34 来自手机
被老外锤了
Screenshot_2019-02-13-18-29-08-220_com.twitter.android.png
Screenshot_2019-02-13-18-29-15-195_com.twitter.android.png

点评

好生猛,完全看不明白了怎么办  发表于 2019-2-15 02:21
 楼主| Caitingting 发表于 2019-2-14 12:33

啊哈哈哈哈。。。我开篇就说了我的文章是转载+二次综合整理
这帮人要喷也不该喷我啊(多半是因为中文不好吧)

而且根据姐过80级的英文水平来看,这两个人很可能也不是什么“老外”~
不过。。。感谢亲的提示,我去twitter围观一下
YOYOCHUENG 发表于 2018-11-28 17:04
sdbxzl 发表于 2018-11-28 17:17
看不懂 不明觉厉啊
sighout 发表于 2018-11-28 17:39
好生猛,完全看不明白了怎么办
丶Lucian 发表于 2018-11-28 18:48
不明觉厉。
cqdxh 发表于 2018-11-28 19:47
不明觉厉。
52Tao 发表于 2018-11-28 22:31
感谢楼主分享心得
头像被屏蔽
Jaz 发表于 2018-11-28 23:33
提示: 作者被禁止或删除 内容自动屏蔽
digitalhouse 发表于 2018-11-29 08:47
感謝樓主分享心得
吾爱破解18 发表于 2018-11-29 08:52
完全不懂嘛。。
这是什么东西,?
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则 警告:本版块禁止灌水或回复与主题无关内容,违者重罚!

快速回复 收藏帖子 返回列表 搜索

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-4-26 18:24

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表