WannaCrypt0r分析报告

 

病毒分析报告

 


样本名


WannaCrypt0r


版本


原版


时间


2018-05-08


平台


Windows 7-32位

 

目录

1.样本概况... 3

1.1 样本信息... 3

1.2 测试环境及工具... 3

1.3 分析目标... 3

1.4 样本行为分析... 3

1.4.1查壳... 3

1.4.2 原样本分析... 4

1.4.3 tasksche.exe分析... 6

1.4.3 crypt.dll分析... 12

2,感谢... 17

 

1.样本概况

1.1 样本信息

病毒名称:  永恒之蓝

所属家族:  勒索性病毒/蠕虫病毒(Worm)

大小:       3723264 bytes

MD5值:     DB349B97C37D22F5EA1D1841E3C89EB4

SHA1值:    E889544AFF85FFAF8B0D0DA705105DEE7C97FE26

CRC32:     9FBB1227

1.2 测试环境及工具

Win7 32位、OD/IDA/x64DBG/火绒剑/ExeiofoPE/

1.3 分析目标

分析病毒利用漏洞方式,网络连接,病毒的恶意行为

1.4 样本行为分析

1.4.1查壳

Exeinfo 可查是该程序无壳,使用的是vc++/MFC 程序编写

1.4.2 原样本分析

进入WinMain后,可以发现入口处程序会尝试连接一个域名:

http://www.iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com

成功连接则程序不展开相关行为;否则执行sub_408090;

在sub_408090函数内部,分为两个模块:

在第一轮程序执行的是条件为false的模块,其功能主要是创建服务,释放并执行一个tasksche.exe /i。

创建服务:

创建是一个名为mssecsvc2.0,服务说明为“Microsoft Security Center (2.0) Service”的是服务:

原始样本会从资源中加载,释放一个名为tasksche.exe的文件,并且以tasksche.exe/i的方式启动:

接着分析tasksche.exe;

1.4.3 tasksche.exe分析

tasksche.exe启动后,首先,会将自身拷贝到C:\intel\lgxbrzjmuzoytl531

检查命令行参数中是否有/i这个参数:

sub_401B5F中:检查并尝试在ProgramData目录 或 Intel目录 或 Temp系统临时目录 下创建前面以计算机名算出的标识的目录:

将创建的目录设置为6即为隐藏和系统:(FILE_ATTRIBUTE_HIDDEN 和 FILE_ATTRIBUTE_SYSTEM )

复制自己并重命名为tasksche.exe:

将taskche.exe以服务方式启动,如果失败就以普通方式(/i)启动,这样启动的入口点不一样了,内部实现的逻辑就不一样了:

互斥体检测启动是否成功:

上面几项都成功完成后才能继续,否则退出

创建注册表项HKEY_CURRENT_USER\Software\WanaCrypt0r\wd,写入当前路径值:

然后就从资源中释放加密过的taskdlexe、taskse.exe,有比较复杂的解密函数,key为[email protected]:

在当前目录下读取c.wnry文件:

如果读取到了c.wnry文件,就会把13AM4VW2dhxYgXeQepoHkHSQuy6NgaEb94通过随机数加密后写入c.wnry,而这串数字就是比特币的地址,也就是说c.wnry文件中保存着加密后的比特币地址:

下图是c.wnry的加密算法:

执行这两句命令:

attrib +h .

icacls . /grant Everyone:F /T /C /Q

attrib命令:将DisplayName工作目录设置为隐藏

icacls命令:开放目录的用户权限

接着,会读取前期释放的一个名为t.wnry的文件,并对其中的内容进行解密,解密后的内容为一个dll文件,但是该dll文件并不会写入磁盘,而是在内存中直接执行:

将该文件从内存中dump 出来,重命名为crypt.dll,再次分析

1.4.3 crypt.dll分析

Crypt.dll仅有一个自定义的导出函数,这个导出函数是其行为展开的入口:

先加载了kernel32.dll,动态获取后续需要的API:

创建互斥体,用于判断自身重入问题:

然后创建了四个线程:

分析后作用分别是:

1.将tasksc.exe加入到HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run项,用于开机自启动

2.遍历驱动器,并检查是否有U盘等移动存储插入

3.循环调用taskdl.exe

4.写入并执行vbs脚本

遍历文件并加密文件:

所加密的文件类型约有两百多种:

罗列出部分加密文件的后缀名:

加密方法:

1,遍历到要感染的文件,被AES加密,AES加密使用的KEY,是根据每个文件随机生成的。随机生成的Key,之后会被下一步的RSA 2048加密。

2,样本在针对每一台机器上,会随机生成一对RSA 2048密钥,其中公钥保存在00000000.pky中,用于加密上一步的AES KEY,私钥将被加密后存在文件00000000.eky中

3,上一步的RSA私钥,会被另一个RSA 2048公钥加密,该加密后的私钥仅勒索者本人知道。、

文件加密以WANACRY为特征头:

知道以上思路后,就比较容易理解该样本的加密流程了:

1,新建文件,新文件名为原始文件名.WANACRYT(T表示临时文件,用于临时处理文件加密)

2,在新的文件头部写入8字节的WANACRY!加密标志

3,写入4字节的长度标识,表示后面紧跟的加密后的文件加密密钥的长度

4,写入256字节长度的加密后的文件加密密钥(该密钥解密后为16字节长度的字符串,使用该字符串AES加密文件)

5,写入4字节长度的 勒索者作者定义的类型,不为4的文件类型记录到f.wnry文件中,用于后期免费解密。

6,写入8字节长度的原始文件长度

7,使用随机生成的16位字节的密钥利用AES加密算法进行加密,并写到上述内容之后。

8,修改新文件的文件时间为源文件的时间。

9,删除原文件,并将新文件重命名为WANACRY。

10,     若文件为可免费恢复的文件,则将文件名记录到f.wnry文件中。

 

至此,分析基本结束。

2,感谢

Freebuff的epsky: http://www.freebuf.com/vuls/134602.html

看雪的白小菜:    https://bbs.pediy.com/thread-217636.htm

原文地址:https://www.cnblogs.com/by-clark/p/9126911.html

时间: 2024-07-30 20:12:39

WannaCrypt0r分析报告的相关文章

爱奇艺、优酷、腾讯视频竞品分析报告2016(一)

1 背景 1.1 行业背景 1.1.1 移动端网民规模过半,使用时长份额超PC端 2016年1月22日,中国互联网络信息中心 (CNNIC)发布第37次<中国互联网络发展状况统计报告>,报告显示,网民的上网设备正在向手机端集中,手机成为拉动网民规模增长的主要因素.截至2015年12月,我国手机网民规模达6.20亿,有90.1%的网民通过手机上网. 图 1  2013Q1~2015Q3在线视频移动端和PC端有效使用时长份额对比 根据艾瑞网民行为监测系统iUserTracker及mUserTrac

后台数据管理分析报告.V.1.1

后台数据管理分析报告 负责人:姜敏 合伙人:任小风.贺丽霞 项目分析目标 1.项目目标:把APP后台建造完成 2.课上留的作业完成并放在博客园 3.要创建并连接数据库 4.在R中读出

中华英才网竞品分析报告2016

中华英才网竞品分析报告 1 背景 1.1 行业背景 1) 网民增速不断提升,移动端网民规模过半. 2016年1月22日,中国互联网络信息中心 (CNNIC)发布第37次<中国互联网络发展状况统计报告>.截至2015年12月,中国网民规模达6.88亿, 半数中国人已接入互联网. 其中,2015年新增网民3951万人,增长率为6.1%,较2014年提升1.1个百分点,网民规模增速有所提升. 图 1  2011-2018年中国整体网民数量及增长趋势 <报告>同时显示,网民的上网设备正在向

《亿人帮》与《新米公益》竞品分析报告(简要版)

<亿人帮>与<新米公益>竞品分析报告(简要版) --白斌 [email protected] iOS. APP版本皆为最新版 2016.12.12 竞品选择:<新米公益> 理由:都是互联网+公益,项目模式相同,两款APP均在2015年第二季度上线,SWOT四方面两者几乎是同样的起点.下面从产品的五个层次对二者进行分析并提出建议 一.战略层: 1.产品比较 产品名称 志愿者参与方式 slogan <新米公益> 走路.早起.答题 不止更好的自己 <亿人帮&

你的竞品分析报告是否有深入思考

竞品分析应该是一个长期且深入的工作.既要观察竞品的演变过程,又要能对竞品做深入的分析. 分析竞品的目的无非是,竞品是否能给到我们借鉴的作用?而竞品的迭代,也无外乎两个,用户想要的(需求),产品想要的(价值). 一. 我是怎么做竞品分析的? 首先,我做竞品的方法,一般包括以下两种.并行. 1 .选定要观察的竞品.然后,定期观察竞品是否有迭代,迭代的内容记录下来.如果有特别重要的变更,发出来进行讨论.每个月汇总一次竞品观察,邮件发送到要知悉的人. 2 .每次选择一款竞品深入地体验,做到大部分的用户流

“找出水王”分析报告

“找出水王”分析报告 一.题目要求 三人行设计了一个灌水论坛.信息学院的学生都喜欢在上面交流灌水,传说在论坛上有一个“水王”,他不但喜欢发帖,还会回复其他ID发的每个帖子.坊间风闻该“水王”发帖数目超过了帖子数目的一半. 如果你有一张当前论坛的帖子(包括回帖)列表,其中帖子的作者的ID也在其中,你能快速的找到这个传说中的水王吗? 二.设计思路 1.水王的发帖数超过所有人的一半,这个是个重要信息. 2.这个就和开心消消乐一样,一对一对的把不同的id消去,剩下的一定就是水王的id. 3.因为水王的i

国际软件设计文档——测试分析报告

1 引言 1.1 编写目的 说明这份测试分析报告的具体编写目的,指出预期的阅读范围. 1.2 背景 说明: 被测试软件系统的名称: 该软件的任务提出者.开发者.用户及安装此软件的计算中心,指出测试环境与实际运行环境 之间可能存在的差异以及这些差异对测试结果的影响. 1.3 定义 列出本文件中用到的专问术语的定义和外文首字母组词的原词组. 1.4 参考资料 列出要用到的参考资料,如: a.  本项目的经核准的计划任务书或合同.上级机关的批文: b.  属于本项目的其他已发表的文件: c.  本文件

08年写的感染类病毒分析报告

贴这个呢,有点不好意思,但是也是加分项.1分也是分. 这里要做一个简单介绍. 这篇报告呢: 1.分析的病毒样本是感染型的.但是呢,它同时又是个后门型的,比较有意思. 2.这篇也算是代码级的分析,毕竟用了ollydbg嘛,F7跟了,还手动把壳脱了.大牛别笑话我啊. 3.我本人倾向于应用.做过三年的CERT的工作,对于一般的病毒啊啥的还能应付. 4.对病毒了解的话呢,要求对整个系统有个比较系统的了解,所以呢,一般的应用问题,即使没遇到过,也是可以通过思考解决的.这点请注意. 这篇文章是当年张晓兵经理

whatsapp协议分析报告

WhatsApp协议分析报告 0.分析结论: 1.whatsapp音视频通信,必须在对方同意通信的基础上,才能够获取对方的外网IP地址, 经过对whatsapp 通信的流程分析,发现要想在对方不知情的情况下获取对IP地址,是无法实现的.具体详见下面的分析过程. 2.whatsapp语音通话是经过加密处理的,密钥在通话开始前经过XMPP协议传送给对方的, 所以通信过程音视频通信包是无法监听聊天内容的.具体详见下面的分析过程. 1.语音通信之获取对端外网IP 分析过程: 情景: ClientA 给