勒索病毒那点事(一)
2023-4-6 23:29:24 Author: 蓝极战队(查看原文) 阅读量:18 收藏

事情是这么回事...

去年6月份左右一直持续到年底,陆陆续续都有中勒索病毒的客户,提取的病毒样本都是一致的fast.exe

到今年三月份的时候,有团队的小伙伴去处理一个勒索病毒的应急,提取回来的样本依然是这个,我这个暴脾气,还没完没了了是吧!

因为问的人太多,索性就写一篇文章科普一下这个fast.exe的整个"业务"逻辑。

Fast.exe勒索病毒样本分析详解

0X01 病毒概述

文件为winpe 32位程序

该程序采用了RSA+AES双重加密,加密逻辑为AES密钥是使用10H字节的随机数据和10H字节的数据从解密的公共密钥生成的。

RSA公钥是Sub_401706中的常量值提供

后续信息是加密的AES密钥(80H字节)的相关数据,该数据是使用卷序列号“%systemdrive%”以及解密后的一些数据生成的。

加密的AES密钥后的最后四个字节是以上两部分的CRC32哈希值。

0x02 勒索病毒的业务执行逻辑

0x21 程序启动后首先直接调了sub_4029F5

0x22 sub_4029F5 中在一系列的系统、环境等等检查后

0x23 在LABEL_86块下,直接调用sub_401A76开始遍历驱动及文件

0x24 sub_401A76 中调用GetLogicalDrives函数遍历本地驱动及共享文件驱动

0x25 再通过sub_405840 扫描所有的文件

0x26 sub_408782 加密核心事件

0x03 总结

该勒索病毒理论只要获取到AES的key和IV就能够解密被加密的文件,但是为了保护AES密钥,攻击者使用带有公钥的RSA算法对其进行加密。因此,即使通过暴力破解也很难获得带有保存在病毒中公共密钥的RSA私有密钥。私钥始终由攻击者保留。

加密的AES密钥将记录在加密的文件中。 

IV(初始化向量)数据的长度为10H字节,通常是随机生成的。它也像加密的AES密钥一样记录在加密的文件中。IV与AES密钥一起用于数据加密,就像MD5算法的盐一样。

所以目前没有更好的办法通过本地的方式去解密被加密的文件!!!

用C++复刻了一遍这个病毒,但是我不想发布不出来,于是我退而求其次用golang复刻一下这个病毒,主要是讲解原理,如果你要去搞破坏,我也没办法,但是我有干掉你的办法。

下一篇文章详细来跟着我的思路一步步复刻这个不要face的辣鸡勒索病毒😊


文章来源: http://mp.weixin.qq.com/s?__biz=MzkwMDMyOTA1OA==&mid=2247484122&idx=1&sn=b0ba1b7ccf23393df7c67574d99dc2b1&chksm=c044f9d7f73370c16dbca0c3bb0cf01fb17ea34c9219299d1f89907abf252d4acae116718b08#rd
如有侵权请联系:admin#unsafe.sh