WannaCry蠕虫详细分析

背景:

2017年5月12日,WannaCry蠕虫通过MS17-010漏洞在全球范围大爆发,感染了大量的计算机,该蠕虫感染计算机后会向计算机中植入敲诈者病毒,导致电脑大量文件被加密,本文对其进行详细分析。

木马概况:

WannaCry木马利用前阵子泄漏的方程式工具包中的“永恒之蓝”漏洞工具,进行网络端口扫描攻击,目标机器被成功攻陷后会从攻击机下载WannaCry木马进行感染,并作为攻击机再次扫描互联网和局域网其他机器,行成蠕虫感染大范围超快速扩散。

木马母体为mssecsvc.exe,运行后会扫描随机ip的互联网机器,尝试感染,也会扫描局域网相同网段的机器进行感染传播,此外会释放敲诈者程序tasksche.exe,对磁盘文件进行加密勒索。

木马加密使用AES加密文件,并使用非对称加密算法RSA 2048加密随机密钥,每个文件使用一个随机密钥,理论上不可破解。

详细分析:

mssecsvc.exe行为:

1、开关:

木马在网络上设置了一个开关,当本地计算机能够成功访问http://www.iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com时,退出进程,不再进行传播感染。目前该域名已被安全公司接管。

2、蠕虫行为:

通过创建服务启动,每次开机都会自启动。

从木马自身读取MS17_010漏洞利用代码,playload分为x86和x64两个版本。

创建两个线程,分别扫描内网和外网的IP,开始进程蠕虫传播感染。

对公网随机ip地址445端口进行扫描感染。

对于局域网,则直接扫描当前计算机所在的网段进行感染。

感染过程,尝试连接445端口。

如果连接成功,则对该地址尝试进行漏洞攻击感染。

3、释放敲诈者

tasksche.exe行为:(敲诈者)

解压释放大量敲诈者模块及配置文件,解压密码为WNcry@2ol7

  首先关闭指定进程,避免某些重要文件因被占用而无法感染。

遍历磁盘文件,避开含有以下字符的目录。

\ProgramData

\Intel

\WINDOWS

\Program Files

\Program Files (x86)

\AppData\Local\Temp

\Local Settings\Temp

This folder protects against ransomware. Modifying it will reduce protection

同时,也避免感染木马释放出来的说明文档。

木马加密流程图:

遍历磁盘文件,加密以下178种扩展名文件。

.doc, .docx, .xls, .xlsx, .ppt, .pptx, .pst, .ost, .msg, .eml, .vsd, .vsdx, .txt, .csv, .rtf, .123, .wks, .wk1, .pdf, .dwg, .onetoc2, .snt, .jpeg, .jpg, .docb, .docm, .dot, .dotm, .dotx, .xlsm, .xlsb, .xlw, .xlt, .xlm, .xlc, .xltx, .xltm, .pptm, .pot, .pps, .ppsm, .ppsx, .ppam, .potx, .potm, .edb, .hwp, .602, .sxi, .sti, .sldx, .sldm, .sldm, .vdi, .vmdk, .vmx, .gpg, .aes, .ARC, .PAQ, .bz2, .tbk, .bak, .tar, .tgz, .gz, .7z, .rar, .zip, .backup, .iso, .vcd, .bmp, .png, .gif, .raw, .cgm, .tif, .tiff, .nef, .psd, .ai, .svg, .djvu, .m4u, .m3u, .mid, .wma, .flv, .3g2, .mkv, .3gp, .mp4, .mov, .avi, .asf, .mpeg, .vob, .mpg, .wmv, .fla, .swf, .wav, .mp3, .sh, .class, .jar, .java, .rb, .asp, .php, .jsp, .brd, .sch, .dch, .dip, .pl, .vb, .vbs, .ps1, .bat, .cmd, .js, .asm, .h, .pas, .cpp, .c, .cs, .suo, .sln, .ldf, .mdf, .ibd, .myi, .myd, .frm, .odb, .dbf, .db, .mdb, .accdb, .sql, .sqlitedb, .sqlite3, .asc, .lay6, .lay, .mml, .sxm, .otg, .odg, .uop, .std, .sxd, .otp, .odp, .wb2, .slk, .dif, .stc, .sxc, .ots, .ods, .3dm, .max, .3ds, .uot, .stw, .sxw, .ott, .odt, .pem, .p12, .csr, .crt, .key, .pfx, .der

程序中内置两个RSA 2048公钥,用于加密,其中一个含有配对的私钥,用于演示能够解密的文件,另一个则是真正的加密用的密钥,程序中没有相配对的私钥。

木马随机生成一个256字节的密钥,并拷贝一份用RSA2048加密,RSA公钥内置于程序中。

构造文件头,文件头中包含有标志、密钥大小、RSA加密过的密钥、文件大小等信息。

使用CBC模式AES加密文件内容,并将文件内容写入到构造好的文件头后,保存成扩展名为.WNCRY的文件,并用随机数填充原始文件后再删除,防止数据恢复。

完成所有文件加密后释放说明文档,弹出勒索界面,需支付价值数百美元不等的比特比到指定的比特比钱包地址,三个比特币钱包地址硬编码于程序中。

115p7UMMngoj1pMvkpHijcRdfJNXj6LrLn

12t9YDPgwueZ9NyMgw519p7AA8isjr6SMw

13AM4VW2dhxYgXeQepoHkHSQuy6NgaEb94

解密程序:

木马解密程序中内置了其中一个公钥的配对私钥,可以用于解密使用该公钥加密的几个文件,用于向用户“证明”程序能够解密文件,诱导用户支付比特币。

此后,程序判断本地是否存在“00000000.dky”文件,该文件为真实解密所需私钥文件。若存在,则通过解密测试文件来检测密钥文件是否正确。

  若正确,则解密,若错误或不存在,木马将程判断解压后的Tor目录下是否存在taskhsvc.exe,若不存在,则生成该文件,并且调用CreateProcessA拉起该进程:

该程序主要为tor匿名代理工具,该工具启动后会监听本地9050端口,木马通过本地代理通信实现与服务器连接。

在点击“Check Payment”按钮后,由服务端判断是否下发解密所需私钥。若私钥下发,则会在本地生成解密所需要的dky文件。

而后,程序便可利用该dky文件进行解密。不过,到目前为止,未曾有解密成功的案例。

文件列表及作用:

b.wnry: 中招敲诈者后桌面壁纸

c.wnry: 配置文件,包含洋葱域名、比特币地址、tor下载地址等

r.wnry: 提示文件,包含中招提示信息

s.wnry: zip文件,包含Tor客户端

t.wnry: 测试文件

u.wnry: 解密程序

f.wnry: 可免支付解密的文件列表

安全建议:

由于之前爆发过多起利用445端口共享漏洞攻击案例,运营商对个人用户关闭了445端口。因校园网是独立的,故无此设置,加上不及时更新补丁,所以在本次事件中导致大量校园网用户中招。管家提供以下安全建议:

1、关闭445、139等端口,方法详见:http://mp.weixin.qq.com/s/7kArJcKJGIZtBH1tKjQ-uA

2、下载并更新补丁,及时修复漏洞(目前微软已经紧急发布XP、Win8、Windows server2003等系统补丁,已经支持所有主流系统,请立即更新)。

XP、Windows Server 2003、win8等系统访问:http://www.catalog.update.microsoft.com/Search.aspx?q=KB4012598

Win7、win8.1、Windows Server 2008、Windows 10, Windows Server 2016等系统访问: https://technet.microsoft.com/zh-cn/library/security/ms17-010.aspx

3、安装腾讯电脑管家,电脑管家会自动开启主动防御进行拦截查杀;

4、支付比特币并不能解密文件,不要支付比特币,保留被加密的文件,等待解密

来源:www.freebuf.com/articles/system/134578.html

转载于:https://www.cnblogs.com/day0Sec/p/6852298.html

转载:WannaCry蠕虫详细分析相关推荐

  1. [转载]TMS320F2812引脚详细分析(转帖整理)

    原文地址:TMS320F2812引脚详细分析(转帖整理)作者:simplorer 转帖自eyes札记的21icblog,地址:http://blog.21ic.com/user1/6012/archi ...

  2. [系统安全] 二十八.WannaCry勒索病毒分析 (4)全网“最“详细的蠕虫传播机制解读

    您可能之前看到过我写的类似文章,为什么还要重复撰写呢?只是想更好地帮助初学者了解病毒逆向分析和系统安全,更加成体系且不破坏之前的系列.因此,我重新开设了这个专栏,准备系统整理和深入学习系统安全.逆向分 ...

  3. 对尼姆达蠕虫的详细分析 (转)

    对尼姆达蠕虫的详细分析 (转)[@more@] 作者:tombkeeper 2001.9.18晚,我习惯性的打开了tcp/80,用这个简单的批处理程序: -------------cut here-- ...

  4. WannaCry蠕虫分析与预防

    背景: 2017年5月12日,WannaCry蠕虫通过MS17-010漏洞在全球范围大爆发,感染了大量的计算机,该蠕虫感染计算机后会向计算机中植入敲诈者病毒,导致电脑大量文件被加密,本文对其进行详细分 ...

  5. JAVA--位移运算符详细分析【转载】

    文章目录 1. <<表示左移移,不分正负数,低位补0 2. >>表示右移,如果该数为正,则高位补0,若为负数,则高位补1: 3. >>>表示无符号右移,也叫逻 ...

  6. [转载]kaldi学习笔记:run.sh(egs/timit/s5)详细分析:从数据准备到特征提取

    from:http://blog.csdn.net/xingxingdeyuanwang6/article/details/47401875 首先看一下前三行: . ./cmd.sh [ -f pat ...

  7. 硬盘FAT文件系统原理的详细分析——转载

    首先给大家分享一个巨牛巨牛的人工智能教程,是我无意中发现的.教程不仅零基础,通俗易懂,而且非常风趣幽默,还时不时有内涵段子,像看小说一样,哈哈-我正在学习中,觉得太牛了,所以分享给大家!点这里可以跳转 ...

  8. [翻译]震荡波蠕虫技术分析(振荡波蠕虫技术分析)

    [翻译]震荡波蠕虫技术分析(振荡波蠕虫技术分析) 本帖被 EvilOctal 从 论坛原创{ Original Paper } 移动到本区(2007-03-19) 文章翻译:冰血封情 [E.S.T] ...

  9. 腾讯安全团队深入解析wannacry蠕虫病毒

    背景: 2017年5月12日,WannaCry蠕虫经过MS17-010漏洞在全球规模大迸发,传染了很多的计算机,该蠕虫传染计算机后会向计算机中植入敲诈者病毒,致使电脑很多文件被加密,这篇文章对其进行详 ...

最新文章

  1. python使用textwrap包在已经生成的长字符串中嵌入回车符实战
  2. 饥荒自建服务器崩了之后没有记录了,请问一下为什么服务器建一次之后就再也成功不了了。。...
  3. (Spring)Spring的使用
  4. NoSQL 是否可以用来做日志中心 ?
  5. ×××常见问题原因与解决
  6. 想成领袖?先瞄准老板身边的位置
  7. “我创业成功的十大秘诀”
  8. base64 convert to file
  9. 语言软件生成outsid_常用的C语言开发工具有哪些
  10. 【Oracle】基础知识查漏补缺
  11. android公交车代码,android实现查询公交车还有几站的功能
  12. 简单粗暴卸载Oracle RAC
  13. Fddb数据集人脸label可视化(matlab)
  14. 裁员,缩招,冻结HC,程序员如何应对?
  15. python算法_02字符串(罗马类型的转换整数)
  16. Java数据结构和算法-图
  17. Android面试知识总结
  18. android.permission.camera,Android - revoked permission android.permission.CAMERA
  19. godaddy空间如何建网站教程
  20. python全套壁纸_Python 全自动壁纸更新系统

热门文章

  1. 什么是aws,云计算?怎么学?
  2. 小米max2 android p,小米max2 升级miui11全程跟进推送
  3. 小米4刷Android8.0过程,小米一代神机抢先刷入Android8.0 体验震惊了
  4. Vue中v-for指令
  5. 终于知道如何 把MATLAB中的 程序字体变大了!
  6. 序号47指标横向展示.xlsx_云南烟酒柜台展柜展示柜哪家好_尚式展示道具有限公司...
  7. 面向对象编程(OOP)理解
  8. Java基础课程设计——DVD管理器
  9. JavaBeans是什么?
  10. JS学习笔记-判断文本域当中滚动条的位置、滚动条下拉至底部才可以提交