[原创]勒索病毒分析-Cryptoshield
这篇文章主要分析一下Cryptoshield, 来自于RITEST RIG EK的一个勒索病毒。病毒样本可以从这里得到:
http://www.malware-traffic-analysis.net/2017/01/31/index2.html
此文我曾经发在自己的博客上,不过是英文版本,原文地址:
http://xdshao.com/2018/01/07/Malware-analysis-Cryptoshield/
首先,给病毒脱壳。在Ollydbg中打开病毒,调试设置处设置在每个新的dll处下断。按F9直到我们看到内存视图中出现了两个新的节。这个时候如果我们点击这两个节就会发现是PE格式的内容。猜测应该是payload,后面分析验证了这个猜测。

将这部分内容存储起来,然后在IDA中打开进行分析。

在最初,我们可以看到两个函数 sub_402A10 和sub_402980。
第一个函数获得了磁盘的序列号(serial number)。如果我们进入这个函数,我们可以发现他从’A’循环到’Z’,当它循环到’C’的时候,GetVolumeInformation 这个API成功获得了C盘的序列号并且跳出了循环。在我的虚拟机里面,’C’盘的序列号是EC4EBD1D。在第二个函数里面,它用了GetUserName这个API并且用用户名称来计算出一个数字。

分析一下大致的算法就是,把每个字母的ascii值乘以128然后加下一个字母,一直循环下去。所以我的用户名’sam’就得到了1CF0ED。
在此之后,我们看到两个API分别是CreateMutex和WaitForSingleObject。他们是用来保证不重复感染的。Mutex的名字就是我们先前那两个函数获得的数字链接在一起。

在函数sub_403180这个地方,它创建了一个文件C://Users/sam/AppData/Roaming/1FAAXB2.tmp 但是失败了。在此之后,是函数sub_4024D0。这是病毒用来永驻系统的。它复制了自身,并且通过设置注册表来达到这个目的。看下注册表的改变。

好了,我们继续。

我划了红线那个函数就是加密函数了。双击进入。

这个病毒检测了磁盘的类型。我虚拟机C盘就是DRIVE_FIXED。如果我们用了虚拟机的sharefolder就应该是DRIVE_REMOTE,所以这个病毒会把共享文件夹也给加密了。在检查了磁盘的类型后,它开始了加密。实际的加密函数很长,这里看下重点位置。

我们可以看到一些加密用的API。

这里是加密开始的地方。我们可以看到它把文件内容读了进去。我这里C盘病毒查找到的一个文件是python安装包里面的一个,所以可以看到python字样。

大家可以看到,加密之后内容发生了改变。
为了让整个过程更加清晰,我画了一个图来表示整个过程。

大致就是这个流程。
有想进行交流的朋友可以发我邮件哈~当然啦,如果有什么高精尖的讨论小组想找个新人讨论讨论的也求拉我一波,虽然技术就这点,但是很有热情hhh
xudong_shao@hotmail.com
注意:上传附件及图片大小不得大于30M。
⚠️ 版权声明:
本博客所有内容(含教程、源码、工具)仅供个人技术学习与研究交流使用,严禁商用、倒卖、二次分发及非法用途。
未经作者书面授权,任何组织或个人不得转载、复制或用于其他平台,违者将追究相关责任。
