Ryuk勒索病毒新变种分析

访客4年前黑客文章1010

一、前言

2020年由于新冠病毒(COVID-19)的持续传播导致远程办公的需求激增,同时 *** 攻击事件也跟着激增,其中勒索病毒最为明显。整个2020年勒索病毒呈爆发状态,攻击规模以及勒索赎金都有了很大的增幅。其中被勒索赎金更高的为富士康勒索事件。2020年12月富士康位于墨西哥工厂的服务器遭到勒索病毒攻击,攻击者要求富士康在限期21天内支付1804.0955枚比特币,约合2.3亿元RMB。

目前最为流行的勒索病毒家族为Maze、REvil、Sodinokibi 、NetWalker、Ryuk等。随着攻防的演进,2020年勒索病毒也增加了新的特点。比如,勒索分成了两阶段勒索。先要求受害者支付赎金换取密钥以解密文件,然后要求受害者支付另一笔赎金来保证机密信息不被公开。同时,勒索病毒的操纵者们从性价比的角度出发,改变策略,攻击目标从广撒网改到精准投放,打击关键的高价值目标,以此换取高额赎金。还有就是从单纯勒索行为到与僵尸 *** ,挖矿等相互结合。

Ryuk勒索病毒最早在2018年由国外安全公司披露出来,其主要特点是通过垃圾邮件以及漏洞利用工具包进行传播。阿里云安全中心最近捕获到一个ryuk新型变种样本,我们对其横向传播技术进行了详细的分析,以此揭示勒索病毒常见的技术手段。通过分析大家会发现,勒索病毒会想尽一切办法进行传播,扩大战果,造成更大的破坏。最后我们会给出防范建议。

二、详细分析

1.反调试和脱壳

样本编译时间为2021.1.22,VT上首次出现的时间为2021.2.2,所以样本还是很新的。之一件事当然是IDA里做静态分析。分析发现样本使用了独有的加壳程序,这会给静态分析带来麻烦。所以我们尝试让它自己运行到脱壳解密的状态,然后我们再做进一步的分析。如下图,样本对使用的资源,比如字符串是有加密的。

image

调试器里运行的时候,发现样本还具有反调试机制。如下:

这里是一个DebugPort的查询操作,指针地址给的1,这当然会触发异常。还有几个类似的地方需要处理掉。

image

解决了反调试问题后,样本的代码会对自身进行脱壳解密,随后我们把内存转储出来,再修复一下IAT,这样再分析代码就会清晰很多了。

2.fileless加密勒索方式

在随后的分析中我们发现一个有意思的地方,Ryuk勒索病毒在感染远程机器的时候,并不是将可执行文件传输过去,然后拉起再加密。而是通过 *** B协议,远程感染加密了文件。这样做的好处是,在被攻击机器上,读写文件的上下文都是系统进程。这对于防御引擎来说,将很难决策是否是恶意的勒索行为。

攻击者使用 *** B协议进行远程登录和文件访问,需要先具备登录权限。在很多企业局域网环境下,服务器的登录口令都是一样的,这种情况下,攻击者通过mimikatz和wce等方式可以拿到账户的登录凭证信息,以此再建立 *** b会话就很容易了。此处不展开讨论。

远程感染的过程分析如下:

我们在测试环境有两台同样用户名密码的测试机:测试机1(192.168.0.28),测试机2(192.168.0.31),在测试机1运行勒索样本,在测试机2抓包分析。

image

在测试机1运行样本后,测试机2的诱饵文件显示已被加密,并写入勒索通知文件。

通过在测试机2抓包发现,测试机1通过 *** B远程登录到测试机2,然后远程对测试机2的诱饵文件进行了加密。

样本在拿到本地凭证的前提下,通过 *** B协议登录局域网内同密码的机器,然后通过 *** B加密远程机器内的文件实现勒索的目的。

通过 *** B协议登录的前提是有明文密码或者NTLM hash,明文密码通过爆破可以拿到,困难度较高,但密码NTLM hash比较容易获得,目前公开的工具:mimikatz、wce(Windows Credentials Editor)都能拿到NTLM hash,所以病毒也能用同样都方式获得NTLM hash。

image

样本先是连接445端口,然后通过 *** B协议使用NTLM认证登录远程机器。

image

Response包显示登录成功。同时远程机器上的日志也记录了登录成功的过程。(192.168.0.28为攻击者IP)

image

此处可见登录成功后去遍历磁盘分区。

image

此处可见远程加密重命名诱饵文件。

image

以上过程通过 *** B协议在不投放病毒的情况下,实现了对目标机的文件加密勒索。对于防守方,这给检测防御带来了一定的困难。

3.持久化和蠕虫化

此处可见勒索病毒通过 *** B拷贝了病毒自身过来,放到了 C:\User\Public\目录下。

image

传播病毒后,后面的流程自然是建立启动项和进程拉起。通过PronMon监控发现,Ryuk这个勒索病毒是通过schtasks给远端的受害者机器建立了一个计划任务。计划任务建立后,马上发送了Run的命令来进行拉起。通过这个过程实现了病毒自身的传播和传导,勒索病毒实现了持久化和蠕虫化。

image

image

IDA里找到创建计划任务这部分的逻辑对应的代码如下。

image

image

image

总结下来,传播的过程是这样的:

image

总结:

Ryuk这款勒索样本,有加壳加密,有本地勒索,也实现了横向传播和远程勒索,技术相对全面。另外一个有意思的地方,我们发现这个勒索病毒会通过打印机打印自己的勒索声明,可以说是很嚣张了。

Ryuk这个勒索病毒还在持续演进,防守方需要一直关注样本演化的趋势,并提出新的防御,检测和修复方案。

三、防护建议

1.除非明确需要,Windows服务器强烈建议封禁445端口。

2.局域网内机器不要使用弱口令,也不要使用统一的口令。

3.操作系统要及时安装补丁,安全软件也要保持更新。

4.重要文件定期备份,防患于未然。

四、阿里云安全中心解决方案

通用防勒索解决方案为您提供逐层递进的纵深式防御体系:

· 实时防御已知勒索病毒借助云上全方位的威胁情报,云安全中心实现了对大量已知勒索病毒的实时防御。在服务器被病毒感染的之一时间拦截勒索病毒,避免发生文件被病毒加密而进行勒索的情况。

· 诱捕、拦截新型未知勒索病毒通过放置诱饵的方式,云安全中心实时捕捉可能存在的勒索病毒行为。针对新型未知的勒索病毒,一旦识别到有异常加密行为发生,会立刻拦截病毒,同时通知您进行排查清理。

· 支持恢复被病毒感染文件在对勒索病毒进行防御的同时,云安全中心还支持文件备份服务,能定期对指定文件进行备份,支持按时间或文件版本恢复服务器数据。在发生极端情况导致文件被加密时,能够通过文件恢复的方式找回数据,确保服务器数据的安全。

相关文章

如何实时监控别人的微信聊天记录不被发现已解

<1>IsArray 函数   返回 Boolean 值指明某变量是否为数组。      语法  IsArray(varname)  varname 参数可以是任意变量。      说明 ...

山东被顶替上大学农家女想重新入学 山东理工:努力帮她实现愿望

6月22日晚,@山东理工大学发微博称,近日,陈春秀女士通过媒体表达了重新到高校就读的意愿。我校对此高度重视,主动与其进行沟通,了解诉求。我们将积极协调,努力帮助其实现愿望。 近日,山东农家女陈春秀被...

如何在家提炼精油(自己提炼精油的方法)

尽管人体非常累,但双眼是保持清醒的 ,难以入眠,睡眠浅等 。这种状况全是因为休息不好,因此 人体的疲惫是不太可能修复的 ,大白天都没有精神实质,这就造成 了两极化。 改进失眠症的单方精油:熏衣草、甜...

怎么才能找到老公现在的位置

我就是做涂料调色的,以前都是人工调色,又慢。调色还不准确。去年我用了赋彩调色机,方便多了 这个是没必要的,这么做无非就是两个结果1,真做了对不起你的事,2,没有做对不起你的事。无论你得知的结果是哪一点...

怎么查看领导历史开房信息

. 新生宝宝的胃容量比较小,家长应该如何给宝宝正确的喂养。关于婴儿喂养有哪些注意事项,那么补充配方奶粉什么时候添加呢? 婴儿奶粉喂养方法 正确冲调奶粉。冲泡奶粉应该选择冷却至40~50度的水,水...

如何查询别人的手机目前在什么位置(通话清单查询)

如何查询别人的手机目前在什么位置(通话清单查询) 专业盗取微信密码,开房查询,通话记录查询,查询微信聊天记录,非常靠谱!作为“新四大发明”之一的移动支付,已经成为当今社会中最主流的支付方式,在微信和...