Wannacry

介绍

什么是 WannaCry 勒索软件攻击?

WannaCry 通过使用名为“EternalBlue”的漏洞利用进行传播。EternalBlue 仅适用于较旧的、未打补丁的 Microsoft Windows 版本,但运行此类版本的机器数量足以让 WannaCry 迅速传播开来。

*勒索软件是一种恶意软件,它通过加密锁住文件和数据,并索取赎金。

WannaCry 包含一个不寻常的函数:在执行之前,它将查询 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com。这个网站并不存在。

在 Hutchins 注册了这个域之后,WannaCry 的副本继续传播,但他们停止了执行。从本质上讲,一旦 WannaCry 开始收到来自 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com 的响应,它就会自行关闭。

Wannacry

介绍

什么是 WannaCry 勒索软件攻击?

WannaCry 通过使用名为“EternalBlue”的漏洞利用进行传播。EternalBlue 仅适用于较旧的、未打补丁的 Microsoft Windows 版本,但运行此类版本的机器数量足以让 WannaCry 迅速传播开来。

*勒索软件是一种恶意软件,它通过加密锁住文件和数据,并索取赎金。

WannaCry 包含一个不寻常的函数:在执行之前,它将查询 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com。这个网站并不存在。

在 Hutchins 注册了这个域之后,WannaCry 的副本继续传播,但他们停止了执行。从本质上讲,一旦 WannaCry 开始收到来自 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com 的响应,它就会自行关闭。

为什么这能阻止攻击?

虽然不能确定 WannaCry 作者的动机,但据推测,WannaCry 中包含了这种域名查询功能的目的是让赎金软件能够检查它是否在沙盒内。

沙盒是一种反恶意软件工具。它是一个虚拟机,与所有其他系统和网络分开运行。它提供了一个安全的环境来执行不受信任的文件,看看它们是做什么的。

沙盒实际上没有连接到互联网。但沙盒的目的是尽可能地模仿真实的计算机,因此它们可能会对恶意软件针对特定域的查询产生一个虚假的响应。因此,恶意软件检查其是否在沙盒内的一种方法是向一个假的域名发送查询。如果它得到一个“真实的”响应(由沙盒生成),它可以认为自己是在沙盒中,并关闭自己,这样沙盒就不会检测到它是恶意的。

然而,如果恶意软件将其测试查询发送到一个硬编码的域名,那么如果有人注册了这个域名,它就会被欺骗,以为自己始终在沙盒中。这可能是 WannaCry 发生的情况:世界各地的 WannaCry 副本被欺骗,认为它们在沙盒内,并关闭自己。(从恶意软件作者的角度来看,一个更好的设计是查询一个每次都不同的随机域名,这样一来,从沙盒外的域名得到回应的几率就接近零了)。

事情起因

国庆假期结束后的第一节网络攻防课,老师安排测试wannacry病毒的任务。

详细过程

由于病毒具有破坏性,因此在本地直接运行是极其危险的行为,一旦控制不慎,不仅自己电脑的数据要被破坏和丢失,甚至可能导致电脑成为肉鸡,去攻击其他联网设备。
为了安全考虑,首先需要准备好病毒运行的环境。

  • 支持虚拟化技术的电脑
  • VMware Workstation Pro 软件
  • 操作系统安装包
  • 计算机病毒样本

虚拟机环境配置

系统:Windows XP
安装教程:
VMware虚拟机之WindowsXP系统超详细下载安装与使用教程
itellyou官网 - 系统镜像下载

这个教程非常详细,而且每一步都有图片,即使小白也能轻松使用。

本地文件如何与虚拟机交互

方法一:

因为VMware自带有工具Vmware Tools,能够直接实现主机和虚拟机之间的文件共享,同时支持自由拖拽文件进行上传和下载,因此最简单且好用的办法就是在虚拟机安装Vmware Tools。

附上官方文档:VMware Tools 用户指南 - VMware Tools 11.2.5

说明:由于上一步安装虚拟机后,我的XP虚拟机自动安装了Vmware Tools(所以显示重新安装vmware tool),因此以下内容并未具体尝试,可能以下安装步骤中会出现一些报错或bug,请酌情查看。

具体步骤如下:

windows:

在 Windows 上手动安装 VMware Tools

[如何在Windows操作系统安装VMwareTools_VMware服务-阿里云帮助中心 (aliyun.com)](https://help.aliyun.com/document_detail/412878.html#:~:text=安装VMware Tools(Windows操作系统) 1 Windows操作系统安装完成后,VMware vSphere控制台会提示“该虚拟机上未安装VMware Tools” 2 鼠标右击虚拟机,选择,。 7 选择 安装 ,开始安装。 8 正在安装,如下图所示。 更多项目)

linux:

打开linux虚拟机,在VMware菜单栏里点击虚拟机选项,找到安装VMware tools选项。

对linux系统的tool安装需要控制台执行,下面附上代码:

1
2
3
4
5
6
7
8
// 解压下载的安装包
tar -zxvf [文件名]
//进入解压完成的文件夹
cd [wen'jian'ji]
//查看文件夹下的文件
ls
//执行文件夹下的可执行文件。
sudo ./vmware-install.pl

完成以上步骤后重启系统。

方法二:(以下内容只是对该博客的简略,并非原创)

将本机文件复制到安装的虚拟机系统中的两种方法_vmware怎么将本地文件下载到虚拟机除了vmwaretool_灼_灼的博客-CSDN博客

进入虚拟机设置,选择硬盘,再点击映射

在打开的映射虚拟磁盘,选择要复制到虚拟机里的哪个盘,记得取消勾选“以只读模式打开文件”,然后点击确定。

点击本地资源管理器,选择已经映射的盘

如果没有出现需要格式化弹窗,就可以直接把文件复制到映射盘中了,然后在虚拟机里,对应的你刚才选中的虚拟机里的磁盘就可以看到复制的文件了。

注意:要是有提示格式化,然后有文件较为重要,建议不要格式化

复制完文件记得断开连接

隔离措施

做好隔离措施。此步骤非常重要!!!

注意:为了安全起见,强烈建议拔掉插在电脑上的U盘。

打开虚拟机操作系统上的网络与共享中心,单击已经连接因特网的本地连接,在弹出的对话框中单击“禁用“按钮。

点击VMware Workstation Pro软件上方的虚拟机菜单,选择设置,单击设置窗口左侧的网络适配器,之后在网络适配器设置的设备状态栏内将两个勾去掉。

如何安全地做电脑病毒实验?

单击上方的“选项”选项卡,在左侧列表框内确认共享文件夹已禁用。设置完后单击确定按钮。

如何安全地做电脑病毒实验?

拍摄快照。为了防止病毒发作导致虚拟机系统崩溃后恢复麻烦,建议在运行病毒程序前拍摄快照,如图所示。该步骤需要几分钟时间,注意观察虚拟机软件的左下角。

如何安全地做电脑病毒实验?

实战

**针对病毒特性,设好模型。**比如:如果要运行勒索病毒,则需在虚拟机桌面上象征新地放置几个文本文件,观察中毒前后文件内容变化。

在确认做好隔离措施后(特别是检查是否已经断网),在虚拟机上把病毒样本压缩包解压缩并小心运行病毒程序。

**观察实验效果。**如:我们刚刚放置的文件已经被加密而乱码;桌面变了;弹出勒索对话框。如图。

病毒似乎并不能把已经运行的程序强制关闭,但这些打开的源文件已经不在桌面了,因此可以知道病毒并不直接修改内存。应该只是操作硬盘数据。

*解毒具体步骤*

打开wannakey-master,阅读readme.txt,由于wannacry会识别后缀名为txt的文件并标记为重要文件进行加密,因此readme的后缀名有可能被改成了其他形式,此时应该改回txt格式,采用记事本打开。

根据readme.txt中提供的信息,参照自己的windows版本,在bin中选择合适的exe进行运行:

运行wannakey.exe程序

多核系统使用wannakey_omp.exe

运行后会跳出cmd窗口(窗口可能会一闪而过,注意观察),如果显示秘钥已经成功生成(key has been generated),那么秘钥已经获取成功,此时前往恶意软件窗口,单击解密(decrypt)按钮,在后续的窗口里选择自己要解密的对象点击start,即可进行解密。

此时下方的目录表中会显示所有被解密了的文件的路径,可以根据路径进行核实和查看。

**恢复。**实验完后,恢复中毒前的状态。依次单击VMware Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。大约半分钟后就虚拟机就恢复到了中毒前的状态。

病毒逆向

病毒分析之WannaCry勒索病毒 - 『病毒分析区』 - 吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

[系统安全] 三十.WannaCry勒索病毒分析 (4)全网“最”详细的蠕虫传播机制解读-腾讯云开发者社区-腾讯云 (tencent.com)

[系统安全] 二十七.WannaCry勒索病毒分析 (3)蠕虫传播机制分析及IDA和OD逆向-腾讯云开发者社区-腾讯云 (tencent.com)

WannaCry利用Windows系统的SMB漏洞获取系统的最高权限,该工具通过恶意代码扫描开放445端口的Windows系统。WannaCry利用永恒之蓝漏洞进行网络端口扫描攻击,目标机器被成功攻陷后会从攻击机下载WannaCry蠕虫进行感染,并作为攻击机再次扫描互联网和局域网的其他机器,形成蠕虫感染大范围超快速扩散。

WannaCry勒索病毒主要行为是传播和勒索。
该病毒分为两个部分:

(1) 蠕虫部分,利用基于445端口的SMB漏洞MS17-010(永恒之蓝)进行病毒传播,并释放出勒索病毒。

(2) 勒索病毒部分,加密用户文件索要赎金。释放文件,包括加密器、解密器、说明文件、语言文件等;加密文件;设置桌面背景、窗体信息及付款账号等。

勒索病毒部分详细分析 (待修改)

CryptGenKey 函数生成随机加密会话密钥公钥/私钥对。密钥或密钥对的句柄在 phKey 中返回。

勒索主逻辑执行,先会导入一个存放在镜像中的RSA公钥,之后调用CryptGenKey生成一组RSA算法的Session key。之后将这组Key的公钥通过CryptExportKey导出,再写入到00000000.pky文件中。将Session key中的私钥用刚导入RSA公钥进行加密,存放在00000000.eky如下图所示:

img

如果遍历到的文件扩展名在欲加密的文件扩展名列表中,如下图所示:

img

则会将当前文件路径加入到文件操作列表中,在遍历文件结束后一并进行文件操作。代码如下图:

img

对于每个需要加密的文件,都会调用CryptGenRadom随机生成AES密钥,之后使用Session Key中的RSA公钥对AES密钥进行加密,存放在加密后的数据文件头中,之后将原始文件数据用该AES密钥进行加密。如下图所示:

img

整体加密流程,如下图所示:

img

因为病毒是生成加密过的用户文件后再删除原始文件,所以存在通过文件恢复类工具恢复原始未加密文件的可能。但是因为病毒对文件系统的修改操作过于频繁,导致被删除的原始文件数据块被覆盖,致使实际恢复效果有限。且随着系统持续运行,恢复类工具恢复数据的可能性会显著降低。

Wannakey的恢复

因为所有文件都是用随机生成的AES

WannaCry 在加密文件时会将加密密钥存储在内存中,而没有进行及时的清除。WannaKey 利用了这个漏洞,通过扫描内存中的数据,找到并提取出加密文件的解密密钥。

因此,WannaKey 能够解密 WannaCry 加密的文件,是因为它能够获取到加密文件的解密密钥。通过使用这个解密密钥,WannaKey 可以还原被 WannaCry 加密的文件,使受害者能够恢复其文件的原始状态。

病毒样本下载

计算机病毒样本分享_勒索病毒样本下载-CSDN博客

注意:为了安全起见,建议直接在虚拟机上上网搜索、下载,*在做好隔离措施前不要解压缩*。

参考资料

[如何安全地做电脑病毒实验-百度经验 (baidu.com)](https://jingyan.baidu.com/article/8cdccae9bacc6b705413cdf9.html#:~:text=恢复。 实验完后,恢复中毒前的状态。 依次单击VMware,Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。 大约半分钟后就虚拟机就恢复到了中毒前的状态。)

WannaCry - wiki

Wannakey

勒索病毒WannaCry深度技术分析—— 详解传播、感染和危害细节

为什么这能阻止攻击?

虽然不能确定 WannaCry 作者的动机,但据推测,WannaCry 中包含了这种域名查询功能的目的是让赎金软件能够检查它是否在沙盒内。

沙盒是一种反恶意软件工具。它是一个虚拟机,与所有其他系统和网络分开运行。它提供了一个安全的环境来执行不受信任的文件,看看它们是做什么的。

沙盒实际上没有连接到互联网。但沙盒的目的是尽可能地模仿真实的计算机,因此它们可能会对恶意软件针对特定域的查询产生一个虚假的响应。因此,恶意软件检查其是否在沙盒内的一种方法是向一个假的域名发送查询。如果它得到一个“真实的”响应(由沙盒生成),它可以认为自己是在沙盒中,并关闭自己,这样沙盒就不会检测到它是恶意的。

然而,如果恶意软件将其测试查询发送到一个硬编码的域名,那么如果有人注册了这个域名,它就会被欺骗,以为自己始终在沙盒中。这可能是 WannaCry 发生的情况:世界各地的 WannaCry 副本被欺骗,认为它们在沙盒内,并关闭自己。(从恶意软件作者的角度来看,一个更好的设计是查询一个每次都不同的随机域名,这样一来,从沙盒外的域名得到回应的几率就接近零了)。

事情起因

国庆假期结束后的第一节网络攻防课,老师安排测试wannacry病毒的任务。

详细过程

由于病毒具有破坏性,因此在本地直接运行是极其危险的行为,一旦控制不慎,不仅自己电脑的数据要被破坏和丢失,甚至可能导致电脑成为肉鸡,去攻击其他联网设备。
为了安全考虑,首先需要准备好病毒运行的环境。

  • 支持虚拟化技术的电脑
  • VMware Workstation Pro 软件
  • 操作系统安装包
  • 计算机病毒样本

虚拟机环境配置

系统:Windows XP
安装教程:
VMware虚拟机之WindowsXP系统超详细下载安装与使用教程
itellyou官网 - 系统镜像下载

这个教程非常详细,而且每一步都有图片,即使小白也能轻松使用。

本地文件如何与虚拟机交互

方法一:

因为VMware自带有工具Vmware Tools,能够直接实现主机和虚拟机之间的文件共享,同时支持自由拖拽文件进行上传和下载,因此最简单且好用的办法就是在虚拟机安装Vmware Tools。

附上官方文档:VMware Tools 用户指南 - VMware Tools 11.2.5

说明:由于上一步安装虚拟机后,我的XP虚拟机自动安装了Vmware Tools(所以显示重新安装vmware tool),因此以下内容并未具体尝试,可能以下安装步骤中会出现一些报错或bug,请酌情查看。

Wannacry

介绍

什么是 WannaCry 勒索软件攻击?

WannaCry 通过使用名为“EternalBlue”的漏洞利用进行传播。EternalBlue 仅适用于较旧的、未打补丁的 Microsoft Windows 版本,但运行此类版本的机器数量足以让 WannaCry 迅速传播开来。

*勒索软件是一种恶意软件,它通过加密锁住文件和数据,并索取赎金。

WannaCry 包含一个不寻常的函数:在执行之前,它将查询 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com。这个网站并不存在。

在 Hutchins 注册了这个域之后,WannaCry 的副本继续传播,但他们停止了执行。从本质上讲,一旦 WannaCry 开始收到来自 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com 的响应,它就会自行关闭。

为什么这能阻止攻击?

虽然不能确定 WannaCry 作者的动机,但据推测,WannaCry 中包含了这种域名查询功能的目的是让赎金软件能够检查它是否在沙盒内。

沙盒是一种反恶意软件工具。它是一个虚拟机,与所有其他系统和网络分开运行。它提供了一个安全的环境来执行不受信任的文件,看看它们是做什么的。

沙盒实际上没有连接到互联网。但沙盒的目的是尽可能地模仿真实的计算机,因此它们可能会对恶意软件针对特定域的查询产生一个虚假的响应。因此,恶意软件检查其是否在沙盒内的一种方法是向一个假的域名发送查询。如果它得到一个“真实的”响应(由沙盒生成),它可以认为自己是在沙盒中,并关闭自己,这样沙盒就不会检测到它是恶意的。

然而,如果恶意软件将其测试查询发送到一个硬编码的域名,那么如果有人注册了这个域名,它就会被欺骗,以为自己始终在沙盒中。这可能是 WannaCry 发生的情况:世界各地的 WannaCry 副本被欺骗,认为它们在沙盒内,并关闭自己。(从恶意软件作者的角度来看,一个更好的设计是查询一个每次都不同的随机域名,这样一来,从沙盒外的域名得到回应的几率就接近零了)。

事情起因

国庆假期结束后的第一节网络攻防课,老师安排测试wannacry病毒的任务。

详细过程

由于病毒具有破坏性,因此在本地直接运行是极其危险的行为,一旦控制不慎,不仅自己电脑的数据要被破坏和丢失,甚至可能导致电脑成为肉鸡,去攻击其他联网设备。
为了安全考虑,首先需要准备好病毒运行的环境。

  • 支持虚拟化技术的电脑
  • VMware Workstation Pro 软件
  • 操作系统安装包
  • 计算机病毒样本

虚拟机环境配置

系统:Windows XP
安装教程:
VMware虚拟机之WindowsXP系统超详细下载安装与使用教程
itellyou官网 - 系统镜像下载

这个教程非常详细,而且每一步都有图片,即使小白也能轻松使用。

本地文件如何与虚拟机交互

方法一:

因为VMware自带有工具Vmware Tools,能够直接实现主机和虚拟机之间的文件共享,同时支持自由拖拽文件进行上传和下载,因此最简单且好用的办法就是在虚拟机安装Vmware Tools。

附上官方文档:VMware Tools 用户指南 - VMware Tools 11.2.5

说明:由于上一步安装虚拟机后,我的XP虚拟机自动安装了Vmware Tools(所以显示重新安装vmware tool),因此以下内容并未具体尝试,可能以下安装步骤中会出现一些报错或bug,请酌情查看。

具体步骤如下:

windows:

在 Windows 上手动安装 VMware Tools

[如何在Windows操作系统安装VMwareTools_VMware服务-阿里云帮助中心 (aliyun.com)](https://help.aliyun.com/document_detail/412878.html#:~:text=安装VMware Tools(Windows操作系统) 1 Windows操作系统安装完成后,VMware vSphere控制台会提示“该虚拟机上未安装VMware Tools” 2 鼠标右击虚拟机,选择,。 7 选择 安装 ,开始安装。 8 正在安装,如下图所示。 更多项目)

linux:

打开linux虚拟机,在VMware菜单栏里点击虚拟机选项,找到安装VMware tools选项。

对linux系统的tool安装需要控制台执行,下面附上代码:

1
2
3
4
5
6
7
8
// 解压下载的安装包
tar -zxvf [文件名]
//进入解压完成的文件夹
cd [wen'jian'ji]
//查看文件夹下的文件
ls
//执行文件夹下的可执行文件。
sudo ./vmware-install.pl

完成以上步骤后重启系统。

方法二:(以下内容只是对该博客的简略,并非原创)

将本机文件复制到安装的虚拟机系统中的两种方法_vmware怎么将本地文件下载到虚拟机除了vmwaretool_灼_灼的博客-CSDN博客

进入虚拟机设置,选择硬盘,再点击映射

在打开的映射虚拟磁盘,选择要复制到虚拟机里的哪个盘,记得取消勾选“以只读模式打开文件”,然后点击确定。

点击本地资源管理器,选择已经映射的盘

如果没有出现需要格式化弹窗,就可以直接把文件复制到映射盘中了,然后在虚拟机里,对应的你刚才选中的虚拟机里的磁盘就可以看到复制的文件了。

注意:要是有提示格式化,然后有文件较为重要,建议不要格式化

复制完文件记得断开连接

隔离措施

做好隔离措施。此步骤非常重要!!!

注意:为了安全起见,强烈建议拔掉插在电脑上的U盘。

打开虚拟机操作系统上的网络与共享中心,单击已经连接因特网的本地连接,在弹出的对话框中单击“禁用“按钮。

点击VMware Workstation Pro软件上方的虚拟机菜单,选择设置,单击设置窗口左侧的网络适配器,之后在网络适配器设置的设备状态栏内将两个勾去掉。

如何安全地做电脑病毒实验?

单击上方的“选项”选项卡,在左侧列表框内确认共享文件夹已禁用。设置完后单击确定按钮。

如何安全地做电脑病毒实验?

拍摄快照。为了防止病毒发作导致虚拟机系统崩溃后恢复麻烦,建议在运行病毒程序前拍摄快照,如图所示。该步骤需要几分钟时间,注意观察虚拟机软件的左下角。

如何安全地做电脑病毒实验?

实战

**针对病毒特性,设好模型。**比如:如果要运行勒索病毒,则需在虚拟机桌面上象征新地放置几个文本文件,观察中毒前后文件内容变化。

在确认做好隔离措施后(特别是检查是否已经断网),在虚拟机上把病毒样本压缩包解压缩并小心运行病毒程序。

**观察实验效果。**如:我们刚刚放置的文件已经被加密而乱码;桌面变了;弹出勒索对话框。如图。

病毒似乎并不能把已经运行的程序强制关闭,但这些打开的源文件已经不在桌面了,因此可以知道病毒并不直接修改内存。应该只是操作硬盘数据。

*解毒具体步骤*

打开wannakey-master,阅读readme.txt,由于wannacry会识别后缀名为txt的文件并标记为重要文件进行加密,因此readme的后缀名有可能被改成了其他形式,此时应该改回txt格式,采用记事本打开。

根据readme.txt中提供的信息,参照自己的windows版本,在bin中选择合适的exe进行运行:

运行wannakey.exe程序

多核系统使用wannakey_omp.exe

运行后会跳出cmd窗口(窗口可能会一闪而过,注意观察),如果显示秘钥已经成功生成(key has been generated),那么秘钥已经获取成功,此时前往恶意软件窗口,单击解密(decrypt)按钮,在后续的窗口里选择自己要解密的对象点击start,即可进行解密。

此时下方的目录表中会显示所有被解密了的文件的路径,可以根据路径进行核实和查看。

**恢复。**实验完后,恢复中毒前的状态。依次单击VMware Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。大约半分钟后就虚拟机就恢复到了中毒前的状态。

病毒逆向

病毒分析之WannaCry勒索病毒 - 『病毒分析区』 - 吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

[系统安全] 三十.WannaCry勒索病毒分析 (4)全网“最”详细的蠕虫传播机制解读-腾讯云开发者社区-腾讯云 (tencent.com)

[系统安全] 二十七.WannaCry勒索病毒分析 (3)蠕虫传播机制分析及IDA和OD逆向-腾讯云开发者社区-腾讯云 (tencent.com)

WannaCry利用Windows系统的SMB漏洞获取系统的最高权限,该工具通过恶意代码扫描开放445端口的Windows系统。WannaCry利用永恒之蓝漏洞进行网络端口扫描攻击,目标机器被成功攻陷后会从攻击机下载WannaCry蠕虫进行感染,并作为攻击机再次扫描互联网和局域网的其他机器,形成蠕虫感染大范围超快速扩散。

WannaCry勒索病毒主要行为是传播和勒索。
该病毒分为两个部分:

(1) 蠕虫部分,利用基于445端口的SMB漏洞MS17-010(永恒之蓝)进行病毒传播,并释放出勒索病毒。

(2) 勒索病毒部分,加密用户文件索要赎金。释放文件,包括加密器、解密器、说明文件、语言文件等;加密文件;设置桌面背景、窗体信息及付款账号等。

勒索病毒部分详细分析 (待修改)

CryptGenKey 函数生成随机加密会话密钥公钥/私钥对。密钥或密钥对的句柄在 phKey 中返回。

勒索主逻辑执行,先会导入一个存放在镜像中的RSA公钥,之后调用CryptGenKey生成一组RSA算法的Session key。之后将这组Key的公钥通过CryptExportKey导出,再写入到00000000.pky文件中。将Session key中的私钥用刚导入RSA公钥进行加密,存放在00000000.eky如下图所示:

img

如果遍历到的文件扩展名在欲加密的文件扩展名列表中,如下图所示:

img

则会将当前文件路径加入到文件操作列表中,在遍历文件结束后一并进行文件操作。代码如下图:

img

对于每个需要加密的文件,都会调用CryptGenRadom随机生成AES密钥,之后使用Session Key中的RSA公钥对AES密钥进行加密,存放在加密后的数据文件头中,之后将原始文件数据用该AES密钥进行加密。如下图所示:

img

整体加密流程,如下图所示:

img

因为病毒是生成加密过的用户文件后再删除原始文件,所以存在通过文件恢复类工具恢复原始未加密文件的可能。但是因为病毒对文件系统的修改操作过于频繁,导致被删除的原始文件数据块被覆盖,致使实际恢复效果有限。且随着系统持续运行,恢复类工具恢复数据的可能性会显著降低。

Wannakey的恢复

因为所有文件都是用随机生成的AES

WannaCry 在加密文件时会将加密密钥存储在内存中,而没有进行及时的清除。WannaKey 利用了这个漏洞,通过扫描内存中的数据,找到并提取出加密文件的解密密钥。

因此,WannaKey 能够解密 WannaCry 加密的文件,是因为它能够获取到加密文件的解密密钥。通过使用这个解密密钥,WannaKey 可以还原被 WannaCry 加密的文件,使受害者能够恢复其文件的原始状态。

病毒样本下载

计算机病毒样本分享_勒索病毒样本下载-CSDN博客

注意:为了安全起见,建议直接在虚拟机上上网搜索、下载,*在做好隔离措施前不要解压缩*。

参考资料

[如何安全地做电脑病毒实验-百度经验 (baidu.com)](https://jingyan.baidu.com/article/8cdccae9bacc6b705413cdf9.html#:~:text=恢复。 实验完后,恢复中毒前的状态。 依次单击VMware,Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。 大约半分钟后就虚拟机就恢复到了中毒前的状态。)

WannaCry - wiki

Wannakey

勒索病毒WannaCry深度技术分析—— 详解传播、感染和危害细节

具体步骤如下:

windows:

在 Windows 上手动安装 VMware Tools

[如何在Windows操作系统安装VMwareTools_VMware服务-阿里云帮助中心 (aliyun.com)](https://help.aliyun.com/document_detail/412878.html#:~:text=安装VMware Tools(Windows操作系统) 1 Windows操作系统安装完成后,VMware vSphere控制台会提示“该虚拟机上未安装VMware Tools” 2 鼠标右击虚拟机,选择,。 7 选择 安装 ,开始安装。 8 正在安装,如下图所示。 更多项目)

linux:

打开linux虚拟机,在VMware菜单栏里点击虚拟机选项,找到安装VMware tools选项。

对linux系统的tool安装需要控制台执行,下面附上代码:

1
2
3
4
5
6
7
8
// 解压下载的安装包
tar -zxvf [文件名]
//进入解压完成的文件夹
cd [wen'jian'ji]
//查看文件夹下的文件
ls
//执行文件夹下的可执行文件。
sudo ./vmware-install.pl

完成以上步骤后重启系统。

方法二:(以下内容只是对该博客的简略,并非原创)

将本机文件复制到安装的虚拟机系统中的两种方法_vmware怎么将本地文件下载到虚拟机除了vmwaretool_灼_灼的博客-CSDN博客

进入虚拟机设置,选择硬盘,再点击映射

Wannacry

介绍

什么是 WannaCry 勒索软件攻击?

WannaCry 通过使用名为“EternalBlue”的漏洞利用进行传播。EternalBlue 仅适用于较旧的、未打补丁的 Microsoft Windows 版本,但运行此类版本的机器数量足以让 WannaCry 迅速传播开来。

*勒索软件是一种恶意软件,它通过加密锁住文件和数据,并索取赎金。

WannaCry 包含一个不寻常的函数:在执行之前,它将查询 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com。这个网站并不存在。

在 Hutchins 注册了这个域之后,WannaCry 的副本继续传播,但他们停止了执行。从本质上讲,一旦 WannaCry 开始收到来自 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com 的响应,它就会自行关闭。

为什么这能阻止攻击?

虽然不能确定 WannaCry 作者的动机,但据推测,WannaCry 中包含了这种域名查询功能的目的是让赎金软件能够检查它是否在沙盒内。

沙盒是一种反恶意软件工具。它是一个虚拟机,与所有其他系统和网络分开运行。它提供了一个安全的环境来执行不受信任的文件,看看它们是做什么的。

沙盒实际上没有连接到互联网。但沙盒的目的是尽可能地模仿真实的计算机,因此它们可能会对恶意软件针对特定域的查询产生一个虚假的响应。因此,恶意软件检查其是否在沙盒内的一种方法是向一个假的域名发送查询。如果它得到一个“真实的”响应(由沙盒生成),它可以认为自己是在沙盒中,并关闭自己,这样沙盒就不会检测到它是恶意的。

然而,如果恶意软件将其测试查询发送到一个硬编码的域名,那么如果有人注册了这个域名,它就会被欺骗,以为自己始终在沙盒中。这可能是 WannaCry 发生的情况:世界各地的 WannaCry 副本被欺骗,认为它们在沙盒内,并关闭自己。(从恶意软件作者的角度来看,一个更好的设计是查询一个每次都不同的随机域名,这样一来,从沙盒外的域名得到回应的几率就接近零了)。

事情起因

国庆假期结束后的第一节网络攻防课,老师安排测试wannacry病毒的任务。

详细过程

由于病毒具有破坏性,因此在本地直接运行是极其危险的行为,一旦控制不慎,不仅自己电脑的数据要被破坏和丢失,甚至可能导致电脑成为肉鸡,去攻击其他联网设备。
为了安全考虑,首先需要准备好病毒运行的环境。

  • 支持虚拟化技术的电脑
  • VMware Workstation Pro 软件
  • 操作系统安装包
  • 计算机病毒样本

虚拟机环境配置

系统:Windows XP
安装教程:
VMware虚拟机之WindowsXP系统超详细下载安装与使用教程
itellyou官网 - 系统镜像下载

这个教程非常详细,而且每一步都有图片,即使小白也能轻松使用。

本地文件如何与虚拟机交互

方法一:

因为VMware自带有工具Vmware Tools,能够直接实现主机和虚拟机之间的文件共享,同时支持自由拖拽文件进行上传和下载,因此最简单且好用的办法就是在虚拟机安装Vmware Tools。

附上官方文档:VMware Tools 用户指南 - VMware Tools 11.2.5

说明:由于上一步安装虚拟机后,我的XP虚拟机自动安装了Vmware Tools(所以显示重新安装vmware tool),因此以下内容并未具体尝试,可能以下安装步骤中会出现一些报错或bug,请酌情查看。

具体步骤如下:

windows:

在 Windows 上手动安装 VMware Tools

[如何在Windows操作系统安装VMwareTools_VMware服务-阿里云帮助中心 (aliyun.com)](https://help.aliyun.com/document_detail/412878.html#:~:text=安装VMware Tools(Windows操作系统) 1 Windows操作系统安装完成后,VMware vSphere控制台会提示“该虚拟机上未安装VMware Tools” 2 鼠标右击虚拟机,选择,。 7 选择 安装 ,开始安装。 8 正在安装,如下图所示。 更多项目)

linux:

打开linux虚拟机,在VMware菜单栏里点击虚拟机选项,找到安装VMware tools选项。

对linux系统的tool安装需要控制台执行,下面附上代码:

1
2
3
4
5
6
7
8
// 解压下载的安装包
tar -zxvf [文件名]
//进入解压完成的文件夹
cd [wen'jian'ji]
//查看文件夹下的文件
ls
//执行文件夹下的可执行文件。
sudo ./vmware-install.pl

完成以上步骤后重启系统。

方法二:(以下内容只是对该博客的简略,并非原创)

将本机文件复制到安装的虚拟机系统中的两种方法_vmware怎么将本地文件下载到虚拟机除了vmwaretool_灼_灼的博客-CSDN博客

进入虚拟机设置,选择硬盘,再点击映射

在打开的映射虚拟磁盘,选择要复制到虚拟机里的哪个盘,记得取消勾选“以只读模式打开文件”,然后点击确定。

点击本地资源管理器,选择已经映射的盘

如果没有出现需要格式化弹窗,就可以直接把文件复制到映射盘中了,然后在虚拟机里,对应的你刚才选中的虚拟机里的磁盘就可以看到复制的文件了。

注意:要是有提示格式化,然后有文件较为重要,建议不要格式化

复制完文件记得断开连接

隔离措施

做好隔离措施。此步骤非常重要!!!

注意:为了安全起见,强烈建议拔掉插在电脑上的U盘。

打开虚拟机操作系统上的网络与共享中心,单击已经连接因特网的本地连接,在弹出的对话框中单击“禁用“按钮。

点击VMware Workstation Pro软件上方的虚拟机菜单,选择设置,单击设置窗口左侧的网络适配器,之后在网络适配器设置的设备状态栏内将两个勾去掉。

如何安全地做电脑病毒实验?

单击上方的“选项”选项卡,在左侧列表框内确认共享文件夹已禁用。设置完后单击确定按钮。

如何安全地做电脑病毒实验?

拍摄快照。为了防止病毒发作导致虚拟机系统崩溃后恢复麻烦,建议在运行病毒程序前拍摄快照,如图所示。该步骤需要几分钟时间,注意观察虚拟机软件的左下角。

如何安全地做电脑病毒实验?

实战

**针对病毒特性,设好模型。**比如:如果要运行勒索病毒,则需在虚拟机桌面上象征新地放置几个文本文件,观察中毒前后文件内容变化。

在确认做好隔离措施后(特别是检查是否已经断网),在虚拟机上把病毒样本压缩包解压缩并小心运行病毒程序。

**观察实验效果。**如:我们刚刚放置的文件已经被加密而乱码;桌面变了;弹出勒索对话框。如图。

病毒似乎并不能把已经运行的程序强制关闭,但这些打开的源文件已经不在桌面了,因此可以知道病毒并不直接修改内存。应该只是操作硬盘数据。

*解毒具体步骤*

打开wannakey-master,阅读readme.txt,由于wannacry会识别后缀名为txt的文件并标记为重要文件进行加密,因此readme的后缀名有可能被改成了其他形式,此时应该改回txt格式,采用记事本打开。

根据readme.txt中提供的信息,参照自己的windows版本,在bin中选择合适的exe进行运行:

运行wannakey.exe程序

多核系统使用wannakey_omp.exe

运行后会跳出cmd窗口(窗口可能会一闪而过,注意观察),如果显示秘钥已经成功生成(key has been generated),那么秘钥已经获取成功,此时前往恶意软件窗口,单击解密(decrypt)按钮,在后续的窗口里选择自己要解密的对象点击start,即可进行解密。

此时下方的目录表中会显示所有被解密了的文件的路径,可以根据路径进行核实和查看。

**恢复。**实验完后,恢复中毒前的状态。依次单击VMware Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。大约半分钟后就虚拟机就恢复到了中毒前的状态。

病毒逆向

病毒分析之WannaCry勒索病毒 - 『病毒分析区』 - 吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

[系统安全] 三十.WannaCry勒索病毒分析 (4)全网“最”详细的蠕虫传播机制解读-腾讯云开发者社区-腾讯云 (tencent.com)

[系统安全] 二十七.WannaCry勒索病毒分析 (3)蠕虫传播机制分析及IDA和OD逆向-腾讯云开发者社区-腾讯云 (tencent.com)

WannaCry利用Windows系统的SMB漏洞获取系统的最高权限,该工具通过恶意代码扫描开放445端口的Windows系统。WannaCry利用永恒之蓝漏洞进行网络端口扫描攻击,目标机器被成功攻陷后会从攻击机下载WannaCry蠕虫进行感染,并作为攻击机再次扫描互联网和局域网的其他机器,形成蠕虫感染大范围超快速扩散。

WannaCry勒索病毒主要行为是传播和勒索。
该病毒分为两个部分:

(1) 蠕虫部分,利用基于445端口的SMB漏洞MS17-010(永恒之蓝)进行病毒传播,并释放出勒索病毒。

(2) 勒索病毒部分,加密用户文件索要赎金。释放文件,包括加密器、解密器、说明文件、语言文件等;加密文件;设置桌面背景、窗体信息及付款账号等。

勒索病毒部分详细分析 (待修改)

CryptGenKey 函数生成随机加密会话密钥公钥/私钥对。密钥或密钥对的句柄在 phKey 中返回。

勒索主逻辑执行,先会导入一个存放在镜像中的RSA公钥,之后调用CryptGenKey生成一组RSA算法的Session key。之后将这组Key的公钥通过CryptExportKey导出,再写入到00000000.pky文件中。将Session key中的私钥用刚导入RSA公钥进行加密,存放在00000000.eky如下图所示:

img

如果遍历到的文件扩展名在欲加密的文件扩展名列表中,如下图所示:

img

则会将当前文件路径加入到文件操作列表中,在遍历文件结束后一并进行文件操作。代码如下图:

img

对于每个需要加密的文件,都会调用CryptGenRadom随机生成AES密钥,之后使用Session Key中的RSA公钥对AES密钥进行加密,存放在加密后的数据文件头中,之后将原始文件数据用该AES密钥进行加密。如下图所示:

img

整体加密流程,如下图所示:

img

因为病毒是生成加密过的用户文件后再删除原始文件,所以存在通过文件恢复类工具恢复原始未加密文件的可能。但是因为病毒对文件系统的修改操作过于频繁,导致被删除的原始文件数据块被覆盖,致使实际恢复效果有限。且随着系统持续运行,恢复类工具恢复数据的可能性会显著降低。

Wannakey的恢复

因为所有文件都是用随机生成的AES

WannaCry 在加密文件时会将加密密钥存储在内存中,而没有进行及时的清除。WannaKey 利用了这个漏洞,通过扫描内存中的数据,找到并提取出加密文件的解密密钥。

因此,WannaKey 能够解密 WannaCry 加密的文件,是因为它能够获取到加密文件的解密密钥。通过使用这个解密密钥,WannaKey 可以还原被 WannaCry 加密的文件,使受害者能够恢复其文件的原始状态。

病毒样本下载

计算机病毒样本分享_勒索病毒样本下载-CSDN博客

注意:为了安全起见,建议直接在虚拟机上上网搜索、下载,*在做好隔离措施前不要解压缩*。

参考资料

[如何安全地做电脑病毒实验-百度经验 (baidu.com)](https://jingyan.baidu.com/article/8cdccae9bacc6b705413cdf9.html#:~:text=恢复。 实验完后,恢复中毒前的状态。 依次单击VMware,Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。 大约半分钟后就虚拟机就恢复到了中毒前的状态。)

WannaCry - wiki

Wannakey

勒索病毒WannaCry深度技术分析—— 详解传播、感染和危害细节

在打开的映射虚拟磁盘,选择要复制到虚拟机里的哪个盘,记得取消勾选“以只读模式打开文件”,然后点击确定。

Wannacry

介绍

什么是 WannaCry 勒索软件攻击?

WannaCry 通过使用名为“EternalBlue”的漏洞利用进行传播。EternalBlue 仅适用于较旧的、未打补丁的 Microsoft Windows 版本,但运行此类版本的机器数量足以让 WannaCry 迅速传播开来。

*勒索软件是一种恶意软件,它通过加密锁住文件和数据,并索取赎金。

WannaCry 包含一个不寻常的函数:在执行之前,它将查询 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com。这个网站并不存在。

在 Hutchins 注册了这个域之后,WannaCry 的副本继续传播,但他们停止了执行。从本质上讲,一旦 WannaCry 开始收到来自 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com 的响应,它就会自行关闭。

为什么这能阻止攻击?

虽然不能确定 WannaCry 作者的动机,但据推测,WannaCry 中包含了这种域名查询功能的目的是让赎金软件能够检查它是否在沙盒内。

沙盒是一种反恶意软件工具。它是一个虚拟机,与所有其他系统和网络分开运行。它提供了一个安全的环境来执行不受信任的文件,看看它们是做什么的。

沙盒实际上没有连接到互联网。但沙盒的目的是尽可能地模仿真实的计算机,因此它们可能会对恶意软件针对特定域的查询产生一个虚假的响应。因此,恶意软件检查其是否在沙盒内的一种方法是向一个假的域名发送查询。如果它得到一个“真实的”响应(由沙盒生成),它可以认为自己是在沙盒中,并关闭自己,这样沙盒就不会检测到它是恶意的。

然而,如果恶意软件将其测试查询发送到一个硬编码的域名,那么如果有人注册了这个域名,它就会被欺骗,以为自己始终在沙盒中。这可能是 WannaCry 发生的情况:世界各地的 WannaCry 副本被欺骗,认为它们在沙盒内,并关闭自己。(从恶意软件作者的角度来看,一个更好的设计是查询一个每次都不同的随机域名,这样一来,从沙盒外的域名得到回应的几率就接近零了)。

事情起因

国庆假期结束后的第一节网络攻防课,老师安排测试wannacry病毒的任务。

详细过程

由于病毒具有破坏性,因此在本地直接运行是极其危险的行为,一旦控制不慎,不仅自己电脑的数据要被破坏和丢失,甚至可能导致电脑成为肉鸡,去攻击其他联网设备。
为了安全考虑,首先需要准备好病毒运行的环境。

  • 支持虚拟化技术的电脑
  • VMware Workstation Pro 软件
  • 操作系统安装包
  • 计算机病毒样本

虚拟机环境配置

系统:Windows XP
安装教程:
VMware虚拟机之WindowsXP系统超详细下载安装与使用教程
itellyou官网 - 系统镜像下载

这个教程非常详细,而且每一步都有图片,即使小白也能轻松使用。

本地文件如何与虚拟机交互

方法一:

因为VMware自带有工具Vmware Tools,能够直接实现主机和虚拟机之间的文件共享,同时支持自由拖拽文件进行上传和下载,因此最简单且好用的办法就是在虚拟机安装Vmware Tools。

附上官方文档:VMware Tools 用户指南 - VMware Tools 11.2.5

说明:由于上一步安装虚拟机后,我的XP虚拟机自动安装了Vmware Tools(所以显示重新安装vmware tool),因此以下内容并未具体尝试,可能以下安装步骤中会出现一些报错或bug,请酌情查看。

具体步骤如下:

windows:

在 Windows 上手动安装 VMware Tools

[如何在Windows操作系统安装VMwareTools_VMware服务-阿里云帮助中心 (aliyun.com)](https://help.aliyun.com/document_detail/412878.html#:~:text=安装VMware Tools(Windows操作系统) 1 Windows操作系统安装完成后,VMware vSphere控制台会提示“该虚拟机上未安装VMware Tools” 2 鼠标右击虚拟机,选择,。 7 选择 安装 ,开始安装。 8 正在安装,如下图所示。 更多项目)

linux:

打开linux虚拟机,在VMware菜单栏里点击虚拟机选项,找到安装VMware tools选项。

对linux系统的tool安装需要控制台执行,下面附上代码:

1
2
3
4
5
6
7
8
// 解压下载的安装包
tar -zxvf [文件名]
//进入解压完成的文件夹
cd [wen'jian'ji]
//查看文件夹下的文件
ls
//执行文件夹下的可执行文件。
sudo ./vmware-install.pl

完成以上步骤后重启系统。

方法二:(以下内容只是对该博客的简略,并非原创)

将本机文件复制到安装的虚拟机系统中的两种方法_vmware怎么将本地文件下载到虚拟机除了vmwaretool_灼_灼的博客-CSDN博客

进入虚拟机设置,选择硬盘,再点击映射

在打开的映射虚拟磁盘,选择要复制到虚拟机里的哪个盘,记得取消勾选“以只读模式打开文件”,然后点击确定。

点击本地资源管理器,选择已经映射的盘

如果没有出现需要格式化弹窗,就可以直接把文件复制到映射盘中了,然后在虚拟机里,对应的你刚才选中的虚拟机里的磁盘就可以看到复制的文件了。

注意:要是有提示格式化,然后有文件较为重要,建议不要格式化

复制完文件记得断开连接

隔离措施

做好隔离措施。此步骤非常重要!!!

注意:为了安全起见,强烈建议拔掉插在电脑上的U盘。

打开虚拟机操作系统上的网络与共享中心,单击已经连接因特网的本地连接,在弹出的对话框中单击“禁用“按钮。

点击VMware Workstation Pro软件上方的虚拟机菜单,选择设置,单击设置窗口左侧的网络适配器,之后在网络适配器设置的设备状态栏内将两个勾去掉。

如何安全地做电脑病毒实验?

单击上方的“选项”选项卡,在左侧列表框内确认共享文件夹已禁用。设置完后单击确定按钮。

如何安全地做电脑病毒实验?

拍摄快照。为了防止病毒发作导致虚拟机系统崩溃后恢复麻烦,建议在运行病毒程序前拍摄快照,如图所示。该步骤需要几分钟时间,注意观察虚拟机软件的左下角。

如何安全地做电脑病毒实验?

实战

**针对病毒特性,设好模型。**比如:如果要运行勒索病毒,则需在虚拟机桌面上象征新地放置几个文本文件,观察中毒前后文件内容变化。

在确认做好隔离措施后(特别是检查是否已经断网),在虚拟机上把病毒样本压缩包解压缩并小心运行病毒程序。

**观察实验效果。**如:我们刚刚放置的文件已经被加密而乱码;桌面变了;弹出勒索对话框。如图。

病毒似乎并不能把已经运行的程序强制关闭,但这些打开的源文件已经不在桌面了,因此可以知道病毒并不直接修改内存。应该只是操作硬盘数据。

*解毒具体步骤*

打开wannakey-master,阅读readme.txt,由于wannacry会识别后缀名为txt的文件并标记为重要文件进行加密,因此readme的后缀名有可能被改成了其他形式,此时应该改回txt格式,采用记事本打开。

根据readme.txt中提供的信息,参照自己的windows版本,在bin中选择合适的exe进行运行:

运行wannakey.exe程序

多核系统使用wannakey_omp.exe

运行后会跳出cmd窗口(窗口可能会一闪而过,注意观察),如果显示秘钥已经成功生成(key has been generated),那么秘钥已经获取成功,此时前往恶意软件窗口,单击解密(decrypt)按钮,在后续的窗口里选择自己要解密的对象点击start,即可进行解密。

此时下方的目录表中会显示所有被解密了的文件的路径,可以根据路径进行核实和查看。

**恢复。**实验完后,恢复中毒前的状态。依次单击VMware Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。大约半分钟后就虚拟机就恢复到了中毒前的状态。

病毒逆向

病毒分析之WannaCry勒索病毒 - 『病毒分析区』 - 吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

[系统安全] 三十.WannaCry勒索病毒分析 (4)全网“最”详细的蠕虫传播机制解读-腾讯云开发者社区-腾讯云 (tencent.com)

[系统安全] 二十七.WannaCry勒索病毒分析 (3)蠕虫传播机制分析及IDA和OD逆向-腾讯云开发者社区-腾讯云 (tencent.com)

WannaCry利用Windows系统的SMB漏洞获取系统的最高权限,该工具通过恶意代码扫描开放445端口的Windows系统。WannaCry利用永恒之蓝漏洞进行网络端口扫描攻击,目标机器被成功攻陷后会从攻击机下载WannaCry蠕虫进行感染,并作为攻击机再次扫描互联网和局域网的其他机器,形成蠕虫感染大范围超快速扩散。

WannaCry勒索病毒主要行为是传播和勒索。
该病毒分为两个部分:

(1) 蠕虫部分,利用基于445端口的SMB漏洞MS17-010(永恒之蓝)进行病毒传播,并释放出勒索病毒。

(2) 勒索病毒部分,加密用户文件索要赎金。释放文件,包括加密器、解密器、说明文件、语言文件等;加密文件;设置桌面背景、窗体信息及付款账号等。

勒索病毒部分详细分析 (待修改)

CryptGenKey 函数生成随机加密会话密钥公钥/私钥对。密钥或密钥对的句柄在 phKey 中返回。

勒索主逻辑执行,先会导入一个存放在镜像中的RSA公钥,之后调用CryptGenKey生成一组RSA算法的Session key。之后将这组Key的公钥通过CryptExportKey导出,再写入到00000000.pky文件中。将Session key中的私钥用刚导入RSA公钥进行加密,存放在00000000.eky如下图所示:

img

如果遍历到的文件扩展名在欲加密的文件扩展名列表中,如下图所示:

img

则会将当前文件路径加入到文件操作列表中,在遍历文件结束后一并进行文件操作。代码如下图:

img

对于每个需要加密的文件,都会调用CryptGenRadom随机生成AES密钥,之后使用Session Key中的RSA公钥对AES密钥进行加密,存放在加密后的数据文件头中,之后将原始文件数据用该AES密钥进行加密。如下图所示:

img

整体加密流程,如下图所示:

img

因为病毒是生成加密过的用户文件后再删除原始文件,所以存在通过文件恢复类工具恢复原始未加密文件的可能。但是因为病毒对文件系统的修改操作过于频繁,导致被删除的原始文件数据块被覆盖,致使实际恢复效果有限。且随着系统持续运行,恢复类工具恢复数据的可能性会显著降低。

Wannakey的恢复

因为所有文件都是用随机生成的AES

WannaCry 在加密文件时会将加密密钥存储在内存中,而没有进行及时的清除。WannaKey 利用了这个漏洞,通过扫描内存中的数据,找到并提取出加密文件的解密密钥。

因此,WannaKey 能够解密 WannaCry 加密的文件,是因为它能够获取到加密文件的解密密钥。通过使用这个解密密钥,WannaKey 可以还原被 WannaCry 加密的文件,使受害者能够恢复其文件的原始状态。

病毒样本下载

计算机病毒样本分享_勒索病毒样本下载-CSDN博客

注意:为了安全起见,建议直接在虚拟机上上网搜索、下载,*在做好隔离措施前不要解压缩*。

参考资料

[如何安全地做电脑病毒实验-百度经验 (baidu.com)](https://jingyan.baidu.com/article/8cdccae9bacc6b705413cdf9.html#:~:text=恢复。 实验完后,恢复中毒前的状态。 依次单击VMware,Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。 大约半分钟后就虚拟机就恢复到了中毒前的状态。)

WannaCry - wiki

Wannakey

勒索病毒WannaCry深度技术分析—— 详解传播、感染和危害细节

点击本地资源管理器,选择已经映射的盘

Wannacry

介绍

什么是 WannaCry 勒索软件攻击?

WannaCry 通过使用名为“EternalBlue”的漏洞利用进行传播。EternalBlue 仅适用于较旧的、未打补丁的 Microsoft Windows 版本,但运行此类版本的机器数量足以让 WannaCry 迅速传播开来。

*勒索软件是一种恶意软件,它通过加密锁住文件和数据,并索取赎金。

WannaCry 包含一个不寻常的函数:在执行之前,它将查询 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com。这个网站并不存在。

在 Hutchins 注册了这个域之后,WannaCry 的副本继续传播,但他们停止了执行。从本质上讲,一旦 WannaCry 开始收到来自 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com 的响应,它就会自行关闭。

为什么这能阻止攻击?

虽然不能确定 WannaCry 作者的动机,但据推测,WannaCry 中包含了这种域名查询功能的目的是让赎金软件能够检查它是否在沙盒内。

沙盒是一种反恶意软件工具。它是一个虚拟机,与所有其他系统和网络分开运行。它提供了一个安全的环境来执行不受信任的文件,看看它们是做什么的。

沙盒实际上没有连接到互联网。但沙盒的目的是尽可能地模仿真实的计算机,因此它们可能会对恶意软件针对特定域的查询产生一个虚假的响应。因此,恶意软件检查其是否在沙盒内的一种方法是向一个假的域名发送查询。如果它得到一个“真实的”响应(由沙盒生成),它可以认为自己是在沙盒中,并关闭自己,这样沙盒就不会检测到它是恶意的。

然而,如果恶意软件将其测试查询发送到一个硬编码的域名,那么如果有人注册了这个域名,它就会被欺骗,以为自己始终在沙盒中。这可能是 WannaCry 发生的情况:世界各地的 WannaCry 副本被欺骗,认为它们在沙盒内,并关闭自己。(从恶意软件作者的角度来看,一个更好的设计是查询一个每次都不同的随机域名,这样一来,从沙盒外的域名得到回应的几率就接近零了)。

事情起因

国庆假期结束后的第一节网络攻防课,老师安排测试wannacry病毒的任务。

详细过程

由于病毒具有破坏性,因此在本地直接运行是极其危险的行为,一旦控制不慎,不仅自己电脑的数据要被破坏和丢失,甚至可能导致电脑成为肉鸡,去攻击其他联网设备。
为了安全考虑,首先需要准备好病毒运行的环境。

  • 支持虚拟化技术的电脑
  • VMware Workstation Pro 软件
  • 操作系统安装包
  • 计算机病毒样本

虚拟机环境配置

系统:Windows XP
安装教程:
VMware虚拟机之WindowsXP系统超详细下载安装与使用教程
itellyou官网 - 系统镜像下载

这个教程非常详细,而且每一步都有图片,即使小白也能轻松使用。

本地文件如何与虚拟机交互

方法一:

因为VMware自带有工具Vmware Tools,能够直接实现主机和虚拟机之间的文件共享,同时支持自由拖拽文件进行上传和下载,因此最简单且好用的办法就是在虚拟机安装Vmware Tools。

附上官方文档:VMware Tools 用户指南 - VMware Tools 11.2.5

说明:由于上一步安装虚拟机后,我的XP虚拟机自动安装了Vmware Tools(所以显示重新安装vmware tool),因此以下内容并未具体尝试,可能以下安装步骤中会出现一些报错或bug,请酌情查看。

具体步骤如下:

windows:

在 Windows 上手动安装 VMware Tools

[如何在Windows操作系统安装VMwareTools_VMware服务-阿里云帮助中心 (aliyun.com)](https://help.aliyun.com/document_detail/412878.html#:~:text=安装VMware Tools(Windows操作系统) 1 Windows操作系统安装完成后,VMware vSphere控制台会提示“该虚拟机上未安装VMware Tools” 2 鼠标右击虚拟机,选择,。 7 选择 安装 ,开始安装。 8 正在安装,如下图所示。 更多项目)

linux:

打开linux虚拟机,在VMware菜单栏里点击虚拟机选项,找到安装VMware tools选项。

对linux系统的tool安装需要控制台执行,下面附上代码:

1
2
3
4
5
6
7
8
// 解压下载的安装包
tar -zxvf [文件名]
//进入解压完成的文件夹
cd [wen'jian'ji]
//查看文件夹下的文件
ls
//执行文件夹下的可执行文件。
sudo ./vmware-install.pl

完成以上步骤后重启系统。

方法二:(以下内容只是对该博客的简略,并非原创)

将本机文件复制到安装的虚拟机系统中的两种方法_vmware怎么将本地文件下载到虚拟机除了vmwaretool_灼_灼的博客-CSDN博客

进入虚拟机设置,选择硬盘,再点击映射

在打开的映射虚拟磁盘,选择要复制到虚拟机里的哪个盘,记得取消勾选“以只读模式打开文件”,然后点击确定。

点击本地资源管理器,选择已经映射的盘

如果没有出现需要格式化弹窗,就可以直接把文件复制到映射盘中了,然后在虚拟机里,对应的你刚才选中的虚拟机里的磁盘就可以看到复制的文件了。

注意:要是有提示格式化,然后有文件较为重要,建议不要格式化

复制完文件记得断开连接

隔离措施

做好隔离措施。此步骤非常重要!!!

注意:为了安全起见,强烈建议拔掉插在电脑上的U盘。

打开虚拟机操作系统上的网络与共享中心,单击已经连接因特网的本地连接,在弹出的对话框中单击“禁用“按钮。

点击VMware Workstation Pro软件上方的虚拟机菜单,选择设置,单击设置窗口左侧的网络适配器,之后在网络适配器设置的设备状态栏内将两个勾去掉。

如何安全地做电脑病毒实验?

单击上方的“选项”选项卡,在左侧列表框内确认共享文件夹已禁用。设置完后单击确定按钮。

如何安全地做电脑病毒实验?

拍摄快照。为了防止病毒发作导致虚拟机系统崩溃后恢复麻烦,建议在运行病毒程序前拍摄快照,如图所示。该步骤需要几分钟时间,注意观察虚拟机软件的左下角。

如何安全地做电脑病毒实验?

实战

**针对病毒特性,设好模型。**比如:如果要运行勒索病毒,则需在虚拟机桌面上象征新地放置几个文本文件,观察中毒前后文件内容变化。

在确认做好隔离措施后(特别是检查是否已经断网),在虚拟机上把病毒样本压缩包解压缩并小心运行病毒程序。

**观察实验效果。**如:我们刚刚放置的文件已经被加密而乱码;桌面变了;弹出勒索对话框。如图。

病毒似乎并不能把已经运行的程序强制关闭,但这些打开的源文件已经不在桌面了,因此可以知道病毒并不直接修改内存。应该只是操作硬盘数据。

*解毒具体步骤*

打开wannakey-master,阅读readme.txt,由于wannacry会识别后缀名为txt的文件并标记为重要文件进行加密,因此readme的后缀名有可能被改成了其他形式,此时应该改回txt格式,采用记事本打开。

根据readme.txt中提供的信息,参照自己的windows版本,在bin中选择合适的exe进行运行:

运行wannakey.exe程序

多核系统使用wannakey_omp.exe

运行后会跳出cmd窗口(窗口可能会一闪而过,注意观察),如果显示秘钥已经成功生成(key has been generated),那么秘钥已经获取成功,此时前往恶意软件窗口,单击解密(decrypt)按钮,在后续的窗口里选择自己要解密的对象点击start,即可进行解密。

此时下方的目录表中会显示所有被解密了的文件的路径,可以根据路径进行核实和查看。

**恢复。**实验完后,恢复中毒前的状态。依次单击VMware Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。大约半分钟后就虚拟机就恢复到了中毒前的状态。

病毒逆向

病毒分析之WannaCry勒索病毒 - 『病毒分析区』 - 吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

[系统安全] 三十.WannaCry勒索病毒分析 (4)全网“最”详细的蠕虫传播机制解读-腾讯云开发者社区-腾讯云 (tencent.com)

[系统安全] 二十七.WannaCry勒索病毒分析 (3)蠕虫传播机制分析及IDA和OD逆向-腾讯云开发者社区-腾讯云 (tencent.com)

WannaCry利用Windows系统的SMB漏洞获取系统的最高权限,该工具通过恶意代码扫描开放445端口的Windows系统。WannaCry利用永恒之蓝漏洞进行网络端口扫描攻击,目标机器被成功攻陷后会从攻击机下载WannaCry蠕虫进行感染,并作为攻击机再次扫描互联网和局域网的其他机器,形成蠕虫感染大范围超快速扩散。

WannaCry勒索病毒主要行为是传播和勒索。
该病毒分为两个部分:

(1) 蠕虫部分,利用基于445端口的SMB漏洞MS17-010(永恒之蓝)进行病毒传播,并释放出勒索病毒。

(2) 勒索病毒部分,加密用户文件索要赎金。释放文件,包括加密器、解密器、说明文件、语言文件等;加密文件;设置桌面背景、窗体信息及付款账号等。

勒索病毒部分详细分析 (待修改)

CryptGenKey 函数生成随机加密会话密钥公钥/私钥对。密钥或密钥对的句柄在 phKey 中返回。

勒索主逻辑执行,先会导入一个存放在镜像中的RSA公钥,之后调用CryptGenKey生成一组RSA算法的Session key。之后将这组Key的公钥通过CryptExportKey导出,再写入到00000000.pky文件中。将Session key中的私钥用刚导入RSA公钥进行加密,存放在00000000.eky如下图所示:

img

如果遍历到的文件扩展名在欲加密的文件扩展名列表中,如下图所示:

img

则会将当前文件路径加入到文件操作列表中,在遍历文件结束后一并进行文件操作。代码如下图:

img

对于每个需要加密的文件,都会调用CryptGenRadom随机生成AES密钥,之后使用Session Key中的RSA公钥对AES密钥进行加密,存放在加密后的数据文件头中,之后将原始文件数据用该AES密钥进行加密。如下图所示:

img

整体加密流程,如下图所示:

img

因为病毒是生成加密过的用户文件后再删除原始文件,所以存在通过文件恢复类工具恢复原始未加密文件的可能。但是因为病毒对文件系统的修改操作过于频繁,导致被删除的原始文件数据块被覆盖,致使实际恢复效果有限。且随着系统持续运行,恢复类工具恢复数据的可能性会显著降低。

Wannakey的恢复

因为所有文件都是用随机生成的AES

WannaCry 在加密文件时会将加密密钥存储在内存中,而没有进行及时的清除。WannaKey 利用了这个漏洞,通过扫描内存中的数据,找到并提取出加密文件的解密密钥。

因此,WannaKey 能够解密 WannaCry 加密的文件,是因为它能够获取到加密文件的解密密钥。通过使用这个解密密钥,WannaKey 可以还原被 WannaCry 加密的文件,使受害者能够恢复其文件的原始状态。

病毒样本下载

计算机病毒样本分享_勒索病毒样本下载-CSDN博客

注意:为了安全起见,建议直接在虚拟机上上网搜索、下载,*在做好隔离措施前不要解压缩*。

参考资料

[如何安全地做电脑病毒实验-百度经验 (baidu.com)](https://jingyan.baidu.com/article/8cdccae9bacc6b705413cdf9.html#:~:text=恢复。 实验完后,恢复中毒前的状态。 依次单击VMware,Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。 大约半分钟后就虚拟机就恢复到了中毒前的状态。)

WannaCry - wiki

Wannakey

勒索病毒WannaCry深度技术分析—— 详解传播、感染和危害细节

如果没有出现需要格式化弹窗,就可以直接把文件复制到映射盘中了,然后在虚拟机里,对应的你刚才选中的虚拟机里的磁盘就可以看到复制的文件了。

注意:要是有提示格式化,然后有文件较为重要,建议不要格式化

Wannacry

介绍

什么是 WannaCry 勒索软件攻击?

WannaCry 通过使用名为“EternalBlue”的漏洞利用进行传播。EternalBlue 仅适用于较旧的、未打补丁的 Microsoft Windows 版本,但运行此类版本的机器数量足以让 WannaCry 迅速传播开来。

*勒索软件是一种恶意软件,它通过加密锁住文件和数据,并索取赎金。

WannaCry 包含一个不寻常的函数:在执行之前,它将查询 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com。这个网站并不存在。

在 Hutchins 注册了这个域之后,WannaCry 的副本继续传播,但他们停止了执行。从本质上讲,一旦 WannaCry 开始收到来自 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com 的响应,它就会自行关闭。

为什么这能阻止攻击?

虽然不能确定 WannaCry 作者的动机,但据推测,WannaCry 中包含了这种域名查询功能的目的是让赎金软件能够检查它是否在沙盒内。

沙盒是一种反恶意软件工具。它是一个虚拟机,与所有其他系统和网络分开运行。它提供了一个安全的环境来执行不受信任的文件,看看它们是做什么的。

沙盒实际上没有连接到互联网。但沙盒的目的是尽可能地模仿真实的计算机,因此它们可能会对恶意软件针对特定域的查询产生一个虚假的响应。因此,恶意软件检查其是否在沙盒内的一种方法是向一个假的域名发送查询。如果它得到一个“真实的”响应(由沙盒生成),它可以认为自己是在沙盒中,并关闭自己,这样沙盒就不会检测到它是恶意的。

然而,如果恶意软件将其测试查询发送到一个硬编码的域名,那么如果有人注册了这个域名,它就会被欺骗,以为自己始终在沙盒中。这可能是 WannaCry 发生的情况:世界各地的 WannaCry 副本被欺骗,认为它们在沙盒内,并关闭自己。(从恶意软件作者的角度来看,一个更好的设计是查询一个每次都不同的随机域名,这样一来,从沙盒外的域名得到回应的几率就接近零了)。

事情起因

国庆假期结束后的第一节网络攻防课,老师安排测试wannacry病毒的任务。

详细过程

由于病毒具有破坏性,因此在本地直接运行是极其危险的行为,一旦控制不慎,不仅自己电脑的数据要被破坏和丢失,甚至可能导致电脑成为肉鸡,去攻击其他联网设备。
为了安全考虑,首先需要准备好病毒运行的环境。

  • 支持虚拟化技术的电脑
  • VMware Workstation Pro 软件
  • 操作系统安装包
  • 计算机病毒样本

虚拟机环境配置

系统:Windows XP
安装教程:
VMware虚拟机之WindowsXP系统超详细下载安装与使用教程
itellyou官网 - 系统镜像下载

这个教程非常详细,而且每一步都有图片,即使小白也能轻松使用。

本地文件如何与虚拟机交互

方法一:

因为VMware自带有工具Vmware Tools,能够直接实现主机和虚拟机之间的文件共享,同时支持自由拖拽文件进行上传和下载,因此最简单且好用的办法就是在虚拟机安装Vmware Tools。

附上官方文档:VMware Tools 用户指南 - VMware Tools 11.2.5

说明:由于上一步安装虚拟机后,我的XP虚拟机自动安装了Vmware Tools(所以显示重新安装vmware tool),因此以下内容并未具体尝试,可能以下安装步骤中会出现一些报错或bug,请酌情查看。

具体步骤如下:

windows:

在 Windows 上手动安装 VMware Tools

[如何在Windows操作系统安装VMwareTools_VMware服务-阿里云帮助中心 (aliyun.com)](https://help.aliyun.com/document_detail/412878.html#:~:text=安装VMware Tools(Windows操作系统) 1 Windows操作系统安装完成后,VMware vSphere控制台会提示“该虚拟机上未安装VMware Tools” 2 鼠标右击虚拟机,选择,。 7 选择 安装 ,开始安装。 8 正在安装,如下图所示。 更多项目)

linux:

打开linux虚拟机,在VMware菜单栏里点击虚拟机选项,找到安装VMware tools选项。

对linux系统的tool安装需要控制台执行,下面附上代码:

1
2
3
4
5
6
7
8
// 解压下载的安装包
tar -zxvf [文件名]
//进入解压完成的文件夹
cd [wen'jian'ji]
//查看文件夹下的文件
ls
//执行文件夹下的可执行文件。
sudo ./vmware-install.pl

完成以上步骤后重启系统。

方法二:(以下内容只是对该博客的简略,并非原创)

将本机文件复制到安装的虚拟机系统中的两种方法_vmware怎么将本地文件下载到虚拟机除了vmwaretool_灼_灼的博客-CSDN博客

进入虚拟机设置,选择硬盘,再点击映射

在打开的映射虚拟磁盘,选择要复制到虚拟机里的哪个盘,记得取消勾选“以只读模式打开文件”,然后点击确定。

点击本地资源管理器,选择已经映射的盘

如果没有出现需要格式化弹窗,就可以直接把文件复制到映射盘中了,然后在虚拟机里,对应的你刚才选中的虚拟机里的磁盘就可以看到复制的文件了。

注意:要是有提示格式化,然后有文件较为重要,建议不要格式化

复制完文件记得断开连接

隔离措施

做好隔离措施。此步骤非常重要!!!

注意:为了安全起见,强烈建议拔掉插在电脑上的U盘。

打开虚拟机操作系统上的网络与共享中心,单击已经连接因特网的本地连接,在弹出的对话框中单击“禁用“按钮。

点击VMware Workstation Pro软件上方的虚拟机菜单,选择设置,单击设置窗口左侧的网络适配器,之后在网络适配器设置的设备状态栏内将两个勾去掉。

如何安全地做电脑病毒实验?

单击上方的“选项”选项卡,在左侧列表框内确认共享文件夹已禁用。设置完后单击确定按钮。

如何安全地做电脑病毒实验?

拍摄快照。为了防止病毒发作导致虚拟机系统崩溃后恢复麻烦,建议在运行病毒程序前拍摄快照,如图所示。该步骤需要几分钟时间,注意观察虚拟机软件的左下角。

如何安全地做电脑病毒实验?

实战

**针对病毒特性,设好模型。**比如:如果要运行勒索病毒,则需在虚拟机桌面上象征新地放置几个文本文件,观察中毒前后文件内容变化。

在确认做好隔离措施后(特别是检查是否已经断网),在虚拟机上把病毒样本压缩包解压缩并小心运行病毒程序。

**观察实验效果。**如:我们刚刚放置的文件已经被加密而乱码;桌面变了;弹出勒索对话框。如图。

病毒似乎并不能把已经运行的程序强制关闭,但这些打开的源文件已经不在桌面了,因此可以知道病毒并不直接修改内存。应该只是操作硬盘数据。

*解毒具体步骤*

打开wannakey-master,阅读readme.txt,由于wannacry会识别后缀名为txt的文件并标记为重要文件进行加密,因此readme的后缀名有可能被改成了其他形式,此时应该改回txt格式,采用记事本打开。

根据readme.txt中提供的信息,参照自己的windows版本,在bin中选择合适的exe进行运行:

运行wannakey.exe程序

多核系统使用wannakey_omp.exe

运行后会跳出cmd窗口(窗口可能会一闪而过,注意观察),如果显示秘钥已经成功生成(key has been generated),那么秘钥已经获取成功,此时前往恶意软件窗口,单击解密(decrypt)按钮,在后续的窗口里选择自己要解密的对象点击start,即可进行解密。

此时下方的目录表中会显示所有被解密了的文件的路径,可以根据路径进行核实和查看。

**恢复。**实验完后,恢复中毒前的状态。依次单击VMware Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。大约半分钟后就虚拟机就恢复到了中毒前的状态。

病毒逆向

病毒分析之WannaCry勒索病毒 - 『病毒分析区』 - 吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

[系统安全] 三十.WannaCry勒索病毒分析 (4)全网“最”详细的蠕虫传播机制解读-腾讯云开发者社区-腾讯云 (tencent.com)

[系统安全] 二十七.WannaCry勒索病毒分析 (3)蠕虫传播机制分析及IDA和OD逆向-腾讯云开发者社区-腾讯云 (tencent.com)

WannaCry利用Windows系统的SMB漏洞获取系统的最高权限,该工具通过恶意代码扫描开放445端口的Windows系统。WannaCry利用永恒之蓝漏洞进行网络端口扫描攻击,目标机器被成功攻陷后会从攻击机下载WannaCry蠕虫进行感染,并作为攻击机再次扫描互联网和局域网的其他机器,形成蠕虫感染大范围超快速扩散。

WannaCry勒索病毒主要行为是传播和勒索。
该病毒分为两个部分:

(1) 蠕虫部分,利用基于445端口的SMB漏洞MS17-010(永恒之蓝)进行病毒传播,并释放出勒索病毒。

(2) 勒索病毒部分,加密用户文件索要赎金。释放文件,包括加密器、解密器、说明文件、语言文件等;加密文件;设置桌面背景、窗体信息及付款账号等。

勒索病毒部分详细分析 (待修改)

CryptGenKey 函数生成随机加密会话密钥公钥/私钥对。密钥或密钥对的句柄在 phKey 中返回。

勒索主逻辑执行,先会导入一个存放在镜像中的RSA公钥,之后调用CryptGenKey生成一组RSA算法的Session key。之后将这组Key的公钥通过CryptExportKey导出,再写入到00000000.pky文件中。将Session key中的私钥用刚导入RSA公钥进行加密,存放在00000000.eky如下图所示:

img

如果遍历到的文件扩展名在欲加密的文件扩展名列表中,如下图所示:

img

则会将当前文件路径加入到文件操作列表中,在遍历文件结束后一并进行文件操作。代码如下图:

img

对于每个需要加密的文件,都会调用CryptGenRadom随机生成AES密钥,之后使用Session Key中的RSA公钥对AES密钥进行加密,存放在加密后的数据文件头中,之后将原始文件数据用该AES密钥进行加密。如下图所示:

img

整体加密流程,如下图所示:

img

因为病毒是生成加密过的用户文件后再删除原始文件,所以存在通过文件恢复类工具恢复原始未加密文件的可能。但是因为病毒对文件系统的修改操作过于频繁,导致被删除的原始文件数据块被覆盖,致使实际恢复效果有限。且随着系统持续运行,恢复类工具恢复数据的可能性会显著降低。

Wannakey的恢复

因为所有文件都是用随机生成的AES

WannaCry 在加密文件时会将加密密钥存储在内存中,而没有进行及时的清除。WannaKey 利用了这个漏洞,通过扫描内存中的数据,找到并提取出加密文件的解密密钥。

因此,WannaKey 能够解密 WannaCry 加密的文件,是因为它能够获取到加密文件的解密密钥。通过使用这个解密密钥,WannaKey 可以还原被 WannaCry 加密的文件,使受害者能够恢复其文件的原始状态。

病毒样本下载

计算机病毒样本分享_勒索病毒样本下载-CSDN博客

注意:为了安全起见,建议直接在虚拟机上上网搜索、下载,*在做好隔离措施前不要解压缩*。

参考资料

[如何安全地做电脑病毒实验-百度经验 (baidu.com)](https://jingyan.baidu.com/article/8cdccae9bacc6b705413cdf9.html#:~:text=恢复。 实验完后,恢复中毒前的状态。 依次单击VMware,Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。 大约半分钟后就虚拟机就恢复到了中毒前的状态。)

WannaCry - wiki

Wannakey

勒索病毒WannaCry深度技术分析—— 详解传播、感染和危害细节

复制完文件记得断开连接

Wannacry

介绍

什么是 WannaCry 勒索软件攻击?

WannaCry 通过使用名为“EternalBlue”的漏洞利用进行传播。EternalBlue 仅适用于较旧的、未打补丁的 Microsoft Windows 版本,但运行此类版本的机器数量足以让 WannaCry 迅速传播开来。

*勒索软件是一种恶意软件,它通过加密锁住文件和数据,并索取赎金。

WannaCry 包含一个不寻常的函数:在执行之前,它将查询 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com。这个网站并不存在。

在 Hutchins 注册了这个域之后,WannaCry 的副本继续传播,但他们停止了执行。从本质上讲,一旦 WannaCry 开始收到来自 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com 的响应,它就会自行关闭。

为什么这能阻止攻击?

虽然不能确定 WannaCry 作者的动机,但据推测,WannaCry 中包含了这种域名查询功能的目的是让赎金软件能够检查它是否在沙盒内。

沙盒是一种反恶意软件工具。它是一个虚拟机,与所有其他系统和网络分开运行。它提供了一个安全的环境来执行不受信任的文件,看看它们是做什么的。

沙盒实际上没有连接到互联网。但沙盒的目的是尽可能地模仿真实的计算机,因此它们可能会对恶意软件针对特定域的查询产生一个虚假的响应。因此,恶意软件检查其是否在沙盒内的一种方法是向一个假的域名发送查询。如果它得到一个“真实的”响应(由沙盒生成),它可以认为自己是在沙盒中,并关闭自己,这样沙盒就不会检测到它是恶意的。

然而,如果恶意软件将其测试查询发送到一个硬编码的域名,那么如果有人注册了这个域名,它就会被欺骗,以为自己始终在沙盒中。这可能是 WannaCry 发生的情况:世界各地的 WannaCry 副本被欺骗,认为它们在沙盒内,并关闭自己。(从恶意软件作者的角度来看,一个更好的设计是查询一个每次都不同的随机域名,这样一来,从沙盒外的域名得到回应的几率就接近零了)。

事情起因

国庆假期结束后的第一节网络攻防课,老师安排测试wannacry病毒的任务。

详细过程

由于病毒具有破坏性,因此在本地直接运行是极其危险的行为,一旦控制不慎,不仅自己电脑的数据要被破坏和丢失,甚至可能导致电脑成为肉鸡,去攻击其他联网设备。
为了安全考虑,首先需要准备好病毒运行的环境。

  • 支持虚拟化技术的电脑
  • VMware Workstation Pro 软件
  • 操作系统安装包
  • 计算机病毒样本

虚拟机环境配置

系统:Windows XP
安装教程:
VMware虚拟机之WindowsXP系统超详细下载安装与使用教程
itellyou官网 - 系统镜像下载

这个教程非常详细,而且每一步都有图片,即使小白也能轻松使用。

本地文件如何与虚拟机交互

方法一:

因为VMware自带有工具Vmware Tools,能够直接实现主机和虚拟机之间的文件共享,同时支持自由拖拽文件进行上传和下载,因此最简单且好用的办法就是在虚拟机安装Vmware Tools。

附上官方文档:VMware Tools 用户指南 - VMware Tools 11.2.5

说明:由于上一步安装虚拟机后,我的XP虚拟机自动安装了Vmware Tools(所以显示重新安装vmware tool),因此以下内容并未具体尝试,可能以下安装步骤中会出现一些报错或bug,请酌情查看。

具体步骤如下:

windows:

在 Windows 上手动安装 VMware Tools

[如何在Windows操作系统安装VMwareTools_VMware服务-阿里云帮助中心 (aliyun.com)](https://help.aliyun.com/document_detail/412878.html#:~:text=安装VMware Tools(Windows操作系统) 1 Windows操作系统安装完成后,VMware vSphere控制台会提示“该虚拟机上未安装VMware Tools” 2 鼠标右击虚拟机,选择,。 7 选择 安装 ,开始安装。 8 正在安装,如下图所示。 更多项目)

linux:

打开linux虚拟机,在VMware菜单栏里点击虚拟机选项,找到安装VMware tools选项。

对linux系统的tool安装需要控制台执行,下面附上代码:

1
2
3
4
5
6
7
8
// 解压下载的安装包
tar -zxvf [文件名]
//进入解压完成的文件夹
cd [wen'jian'ji]
//查看文件夹下的文件
ls
//执行文件夹下的可执行文件。
sudo ./vmware-install.pl

完成以上步骤后重启系统。

方法二:(以下内容只是对该博客的简略,并非原创)

将本机文件复制到安装的虚拟机系统中的两种方法_vmware怎么将本地文件下载到虚拟机除了vmwaretool_灼_灼的博客-CSDN博客

进入虚拟机设置,选择硬盘,再点击映射

在打开的映射虚拟磁盘,选择要复制到虚拟机里的哪个盘,记得取消勾选“以只读模式打开文件”,然后点击确定。

点击本地资源管理器,选择已经映射的盘

如果没有出现需要格式化弹窗,就可以直接把文件复制到映射盘中了,然后在虚拟机里,对应的你刚才选中的虚拟机里的磁盘就可以看到复制的文件了。

注意:要是有提示格式化,然后有文件较为重要,建议不要格式化

复制完文件记得断开连接

隔离措施

做好隔离措施。此步骤非常重要!!!

注意:为了安全起见,强烈建议拔掉插在电脑上的U盘。

打开虚拟机操作系统上的网络与共享中心,单击已经连接因特网的本地连接,在弹出的对话框中单击“禁用“按钮。

点击VMware Workstation Pro软件上方的虚拟机菜单,选择设置,单击设置窗口左侧的网络适配器,之后在网络适配器设置的设备状态栏内将两个勾去掉。

如何安全地做电脑病毒实验?

单击上方的“选项”选项卡,在左侧列表框内确认共享文件夹已禁用。设置完后单击确定按钮。

如何安全地做电脑病毒实验?

拍摄快照。为了防止病毒发作导致虚拟机系统崩溃后恢复麻烦,建议在运行病毒程序前拍摄快照,如图所示。该步骤需要几分钟时间,注意观察虚拟机软件的左下角。

如何安全地做电脑病毒实验?

实战

**针对病毒特性,设好模型。**比如:如果要运行勒索病毒,则需在虚拟机桌面上象征新地放置几个文本文件,观察中毒前后文件内容变化。

在确认做好隔离措施后(特别是检查是否已经断网),在虚拟机上把病毒样本压缩包解压缩并小心运行病毒程序。

**观察实验效果。**如:我们刚刚放置的文件已经被加密而乱码;桌面变了;弹出勒索对话框。如图。

病毒似乎并不能把已经运行的程序强制关闭,但这些打开的源文件已经不在桌面了,因此可以知道病毒并不直接修改内存。应该只是操作硬盘数据。

*解毒具体步骤*

打开wannakey-master,阅读readme.txt,由于wannacry会识别后缀名为txt的文件并标记为重要文件进行加密,因此readme的后缀名有可能被改成了其他形式,此时应该改回txt格式,采用记事本打开。

根据readme.txt中提供的信息,参照自己的windows版本,在bin中选择合适的exe进行运行:

运行wannakey.exe程序

多核系统使用wannakey_omp.exe

运行后会跳出cmd窗口(窗口可能会一闪而过,注意观察),如果显示秘钥已经成功生成(key has been generated),那么秘钥已经获取成功,此时前往恶意软件窗口,单击解密(decrypt)按钮,在后续的窗口里选择自己要解密的对象点击start,即可进行解密。

此时下方的目录表中会显示所有被解密了的文件的路径,可以根据路径进行核实和查看。

**恢复。**实验完后,恢复中毒前的状态。依次单击VMware Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。大约半分钟后就虚拟机就恢复到了中毒前的状态。

病毒逆向

病毒分析之WannaCry勒索病毒 - 『病毒分析区』 - 吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

[系统安全] 三十.WannaCry勒索病毒分析 (4)全网“最”详细的蠕虫传播机制解读-腾讯云开发者社区-腾讯云 (tencent.com)

[系统安全] 二十七.WannaCry勒索病毒分析 (3)蠕虫传播机制分析及IDA和OD逆向-腾讯云开发者社区-腾讯云 (tencent.com)

WannaCry利用Windows系统的SMB漏洞获取系统的最高权限,该工具通过恶意代码扫描开放445端口的Windows系统。WannaCry利用永恒之蓝漏洞进行网络端口扫描攻击,目标机器被成功攻陷后会从攻击机下载WannaCry蠕虫进行感染,并作为攻击机再次扫描互联网和局域网的其他机器,形成蠕虫感染大范围超快速扩散。

WannaCry勒索病毒主要行为是传播和勒索。
该病毒分为两个部分:

(1) 蠕虫部分,利用基于445端口的SMB漏洞MS17-010(永恒之蓝)进行病毒传播,并释放出勒索病毒。

(2) 勒索病毒部分,加密用户文件索要赎金。释放文件,包括加密器、解密器、说明文件、语言文件等;加密文件;设置桌面背景、窗体信息及付款账号等。

勒索病毒部分详细分析 (待修改)

CryptGenKey 函数生成随机加密会话密钥公钥/私钥对。密钥或密钥对的句柄在 phKey 中返回。

勒索主逻辑执行,先会导入一个存放在镜像中的RSA公钥,之后调用CryptGenKey生成一组RSA算法的Session key。之后将这组Key的公钥通过CryptExportKey导出,再写入到00000000.pky文件中。将Session key中的私钥用刚导入RSA公钥进行加密,存放在00000000.eky如下图所示:

img

如果遍历到的文件扩展名在欲加密的文件扩展名列表中,如下图所示:

img

则会将当前文件路径加入到文件操作列表中,在遍历文件结束后一并进行文件操作。代码如下图:

img

对于每个需要加密的文件,都会调用CryptGenRadom随机生成AES密钥,之后使用Session Key中的RSA公钥对AES密钥进行加密,存放在加密后的数据文件头中,之后将原始文件数据用该AES密钥进行加密。如下图所示:

img

整体加密流程,如下图所示:

img

因为病毒是生成加密过的用户文件后再删除原始文件,所以存在通过文件恢复类工具恢复原始未加密文件的可能。但是因为病毒对文件系统的修改操作过于频繁,导致被删除的原始文件数据块被覆盖,致使实际恢复效果有限。且随着系统持续运行,恢复类工具恢复数据的可能性会显著降低。

Wannakey的恢复

因为所有文件都是用随机生成的AES

WannaCry 在加密文件时会将加密密钥存储在内存中,而没有进行及时的清除。WannaKey 利用了这个漏洞,通过扫描内存中的数据,找到并提取出加密文件的解密密钥。

因此,WannaKey 能够解密 WannaCry 加密的文件,是因为它能够获取到加密文件的解密密钥。通过使用这个解密密钥,WannaKey 可以还原被 WannaCry 加密的文件,使受害者能够恢复其文件的原始状态。

病毒样本下载

计算机病毒样本分享_勒索病毒样本下载-CSDN博客

注意:为了安全起见,建议直接在虚拟机上上网搜索、下载,*在做好隔离措施前不要解压缩*。

参考资料

[如何安全地做电脑病毒实验-百度经验 (baidu.com)](https://jingyan.baidu.com/article/8cdccae9bacc6b705413cdf9.html#:~:text=恢复。 实验完后,恢复中毒前的状态。 依次单击VMware,Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。 大约半分钟后就虚拟机就恢复到了中毒前的状态。)

WannaCry - wiki

Wannakey

勒索病毒WannaCry深度技术分析—— 详解传播、感染和危害细节

隔离措施

做好隔离措施。此步骤非常重要!!!

注意:为了安全起见,强烈建议拔掉插在电脑上的U盘。

打开虚拟机操作系统上的网络与共享中心,单击已经连接因特网的本地连接,在弹出的对话框中单击“禁用“按钮。

Wannacry

介绍

什么是 WannaCry 勒索软件攻击?

WannaCry 通过使用名为“EternalBlue”的漏洞利用进行传播。EternalBlue 仅适用于较旧的、未打补丁的 Microsoft Windows 版本,但运行此类版本的机器数量足以让 WannaCry 迅速传播开来。

*勒索软件是一种恶意软件,它通过加密锁住文件和数据,并索取赎金。

WannaCry 包含一个不寻常的函数:在执行之前,它将查询 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com。这个网站并不存在。

在 Hutchins 注册了这个域之后,WannaCry 的副本继续传播,但他们停止了执行。从本质上讲,一旦 WannaCry 开始收到来自 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com 的响应,它就会自行关闭。

为什么这能阻止攻击?

虽然不能确定 WannaCry 作者的动机,但据推测,WannaCry 中包含了这种域名查询功能的目的是让赎金软件能够检查它是否在沙盒内。

沙盒是一种反恶意软件工具。它是一个虚拟机,与所有其他系统和网络分开运行。它提供了一个安全的环境来执行不受信任的文件,看看它们是做什么的。

沙盒实际上没有连接到互联网。但沙盒的目的是尽可能地模仿真实的计算机,因此它们可能会对恶意软件针对特定域的查询产生一个虚假的响应。因此,恶意软件检查其是否在沙盒内的一种方法是向一个假的域名发送查询。如果它得到一个“真实的”响应(由沙盒生成),它可以认为自己是在沙盒中,并关闭自己,这样沙盒就不会检测到它是恶意的。

然而,如果恶意软件将其测试查询发送到一个硬编码的域名,那么如果有人注册了这个域名,它就会被欺骗,以为自己始终在沙盒中。这可能是 WannaCry 发生的情况:世界各地的 WannaCry 副本被欺骗,认为它们在沙盒内,并关闭自己。(从恶意软件作者的角度来看,一个更好的设计是查询一个每次都不同的随机域名,这样一来,从沙盒外的域名得到回应的几率就接近零了)。

事情起因

国庆假期结束后的第一节网络攻防课,老师安排测试wannacry病毒的任务。

详细过程

由于病毒具有破坏性,因此在本地直接运行是极其危险的行为,一旦控制不慎,不仅自己电脑的数据要被破坏和丢失,甚至可能导致电脑成为肉鸡,去攻击其他联网设备。
为了安全考虑,首先需要准备好病毒运行的环境。

  • 支持虚拟化技术的电脑
  • VMware Workstation Pro 软件
  • 操作系统安装包
  • 计算机病毒样本

虚拟机环境配置

系统:Windows XP
安装教程:
VMware虚拟机之WindowsXP系统超详细下载安装与使用教程
itellyou官网 - 系统镜像下载

这个教程非常详细,而且每一步都有图片,即使小白也能轻松使用。

本地文件如何与虚拟机交互

方法一:

因为VMware自带有工具Vmware Tools,能够直接实现主机和虚拟机之间的文件共享,同时支持自由拖拽文件进行上传和下载,因此最简单且好用的办法就是在虚拟机安装Vmware Tools。

附上官方文档:VMware Tools 用户指南 - VMware Tools 11.2.5

说明:由于上一步安装虚拟机后,我的XP虚拟机自动安装了Vmware Tools(所以显示重新安装vmware tool),因此以下内容并未具体尝试,可能以下安装步骤中会出现一些报错或bug,请酌情查看。

具体步骤如下:

windows:

在 Windows 上手动安装 VMware Tools

[如何在Windows操作系统安装VMwareTools_VMware服务-阿里云帮助中心 (aliyun.com)](https://help.aliyun.com/document_detail/412878.html#:~:text=安装VMware Tools(Windows操作系统) 1 Windows操作系统安装完成后,VMware vSphere控制台会提示“该虚拟机上未安装VMware Tools” 2 鼠标右击虚拟机,选择,。 7 选择 安装 ,开始安装。 8 正在安装,如下图所示。 更多项目)

linux:

打开linux虚拟机,在VMware菜单栏里点击虚拟机选项,找到安装VMware tools选项。

对linux系统的tool安装需要控制台执行,下面附上代码:

1
2
3
4
5
6
7
8
// 解压下载的安装包
tar -zxvf [文件名]
//进入解压完成的文件夹
cd [wen'jian'ji]
//查看文件夹下的文件
ls
//执行文件夹下的可执行文件。
sudo ./vmware-install.pl

完成以上步骤后重启系统。

方法二:(以下内容只是对该博客的简略,并非原创)

将本机文件复制到安装的虚拟机系统中的两种方法_vmware怎么将本地文件下载到虚拟机除了vmwaretool_灼_灼的博客-CSDN博客

进入虚拟机设置,选择硬盘,再点击映射

在打开的映射虚拟磁盘,选择要复制到虚拟机里的哪个盘,记得取消勾选“以只读模式打开文件”,然后点击确定。

点击本地资源管理器,选择已经映射的盘

如果没有出现需要格式化弹窗,就可以直接把文件复制到映射盘中了,然后在虚拟机里,对应的你刚才选中的虚拟机里的磁盘就可以看到复制的文件了。

注意:要是有提示格式化,然后有文件较为重要,建议不要格式化

复制完文件记得断开连接

隔离措施

做好隔离措施。此步骤非常重要!!!

注意:为了安全起见,强烈建议拔掉插在电脑上的U盘。

打开虚拟机操作系统上的网络与共享中心,单击已经连接因特网的本地连接,在弹出的对话框中单击“禁用“按钮。

点击VMware Workstation Pro软件上方的虚拟机菜单,选择设置,单击设置窗口左侧的网络适配器,之后在网络适配器设置的设备状态栏内将两个勾去掉。

如何安全地做电脑病毒实验?

单击上方的“选项”选项卡,在左侧列表框内确认共享文件夹已禁用。设置完后单击确定按钮。

如何安全地做电脑病毒实验?

拍摄快照。为了防止病毒发作导致虚拟机系统崩溃后恢复麻烦,建议在运行病毒程序前拍摄快照,如图所示。该步骤需要几分钟时间,注意观察虚拟机软件的左下角。

如何安全地做电脑病毒实验?

实战

**针对病毒特性,设好模型。**比如:如果要运行勒索病毒,则需在虚拟机桌面上象征新地放置几个文本文件,观察中毒前后文件内容变化。

在确认做好隔离措施后(特别是检查是否已经断网),在虚拟机上把病毒样本压缩包解压缩并小心运行病毒程序。

**观察实验效果。**如:我们刚刚放置的文件已经被加密而乱码;桌面变了;弹出勒索对话框。如图。

病毒似乎并不能把已经运行的程序强制关闭,但这些打开的源文件已经不在桌面了,因此可以知道病毒并不直接修改内存。应该只是操作硬盘数据。

*解毒具体步骤*

打开wannakey-master,阅读readme.txt,由于wannacry会识别后缀名为txt的文件并标记为重要文件进行加密,因此readme的后缀名有可能被改成了其他形式,此时应该改回txt格式,采用记事本打开。

根据readme.txt中提供的信息,参照自己的windows版本,在bin中选择合适的exe进行运行:

运行wannakey.exe程序

多核系统使用wannakey_omp.exe

运行后会跳出cmd窗口(窗口可能会一闪而过,注意观察),如果显示秘钥已经成功生成(key has been generated),那么秘钥已经获取成功,此时前往恶意软件窗口,单击解密(decrypt)按钮,在后续的窗口里选择自己要解密的对象点击start,即可进行解密。

此时下方的目录表中会显示所有被解密了的文件的路径,可以根据路径进行核实和查看。

**恢复。**实验完后,恢复中毒前的状态。依次单击VMware Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。大约半分钟后就虚拟机就恢复到了中毒前的状态。

病毒逆向

病毒分析之WannaCry勒索病毒 - 『病毒分析区』 - 吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

[系统安全] 三十.WannaCry勒索病毒分析 (4)全网“最”详细的蠕虫传播机制解读-腾讯云开发者社区-腾讯云 (tencent.com)

[系统安全] 二十七.WannaCry勒索病毒分析 (3)蠕虫传播机制分析及IDA和OD逆向-腾讯云开发者社区-腾讯云 (tencent.com)

WannaCry利用Windows系统的SMB漏洞获取系统的最高权限,该工具通过恶意代码扫描开放445端口的Windows系统。WannaCry利用永恒之蓝漏洞进行网络端口扫描攻击,目标机器被成功攻陷后会从攻击机下载WannaCry蠕虫进行感染,并作为攻击机再次扫描互联网和局域网的其他机器,形成蠕虫感染大范围超快速扩散。

WannaCry勒索病毒主要行为是传播和勒索。
该病毒分为两个部分:

(1) 蠕虫部分,利用基于445端口的SMB漏洞MS17-010(永恒之蓝)进行病毒传播,并释放出勒索病毒。

(2) 勒索病毒部分,加密用户文件索要赎金。释放文件,包括加密器、解密器、说明文件、语言文件等;加密文件;设置桌面背景、窗体信息及付款账号等。

勒索病毒部分详细分析 (待修改)

CryptGenKey 函数生成随机加密会话密钥公钥/私钥对。密钥或密钥对的句柄在 phKey 中返回。

勒索主逻辑执行,先会导入一个存放在镜像中的RSA公钥,之后调用CryptGenKey生成一组RSA算法的Session key。之后将这组Key的公钥通过CryptExportKey导出,再写入到00000000.pky文件中。将Session key中的私钥用刚导入RSA公钥进行加密,存放在00000000.eky如下图所示:

img

如果遍历到的文件扩展名在欲加密的文件扩展名列表中,如下图所示:

img

则会将当前文件路径加入到文件操作列表中,在遍历文件结束后一并进行文件操作。代码如下图:

img

对于每个需要加密的文件,都会调用CryptGenRadom随机生成AES密钥,之后使用Session Key中的RSA公钥对AES密钥进行加密,存放在加密后的数据文件头中,之后将原始文件数据用该AES密钥进行加密。如下图所示:

img

整体加密流程,如下图所示:

img

因为病毒是生成加密过的用户文件后再删除原始文件,所以存在通过文件恢复类工具恢复原始未加密文件的可能。但是因为病毒对文件系统的修改操作过于频繁,导致被删除的原始文件数据块被覆盖,致使实际恢复效果有限。且随着系统持续运行,恢复类工具恢复数据的可能性会显著降低。

Wannakey的恢复

因为所有文件都是用随机生成的AES

WannaCry 在加密文件时会将加密密钥存储在内存中,而没有进行及时的清除。WannaKey 利用了这个漏洞,通过扫描内存中的数据,找到并提取出加密文件的解密密钥。

因此,WannaKey 能够解密 WannaCry 加密的文件,是因为它能够获取到加密文件的解密密钥。通过使用这个解密密钥,WannaKey 可以还原被 WannaCry 加密的文件,使受害者能够恢复其文件的原始状态。

病毒样本下载

计算机病毒样本分享_勒索病毒样本下载-CSDN博客

注意:为了安全起见,建议直接在虚拟机上上网搜索、下载,*在做好隔离措施前不要解压缩*。

参考资料

[如何安全地做电脑病毒实验-百度经验 (baidu.com)](https://jingyan.baidu.com/article/8cdccae9bacc6b705413cdf9.html#:~:text=恢复。 实验完后,恢复中毒前的状态。 依次单击VMware,Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。 大约半分钟后就虚拟机就恢复到了中毒前的状态。)

WannaCry - wiki

Wannakey

勒索病毒WannaCry深度技术分析—— 详解传播、感染和危害细节

点击VMware Workstation Pro软件上方的虚拟机菜单,选择设置,单击设置窗口左侧的网络适配器,之后在网络适配器设置的设备状态栏内将两个勾去掉。

Wannacry

介绍

什么是 WannaCry 勒索软件攻击?

WannaCry 通过使用名为“EternalBlue”的漏洞利用进行传播。EternalBlue 仅适用于较旧的、未打补丁的 Microsoft Windows 版本,但运行此类版本的机器数量足以让 WannaCry 迅速传播开来。

*勒索软件是一种恶意软件,它通过加密锁住文件和数据,并索取赎金。

WannaCry 包含一个不寻常的函数:在执行之前,它将查询 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com。这个网站并不存在。

在 Hutchins 注册了这个域之后,WannaCry 的副本继续传播,但他们停止了执行。从本质上讲,一旦 WannaCry 开始收到来自 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com 的响应,它就会自行关闭。

为什么这能阻止攻击?

虽然不能确定 WannaCry 作者的动机,但据推测,WannaCry 中包含了这种域名查询功能的目的是让赎金软件能够检查它是否在沙盒内。

沙盒是一种反恶意软件工具。它是一个虚拟机,与所有其他系统和网络分开运行。它提供了一个安全的环境来执行不受信任的文件,看看它们是做什么的。

沙盒实际上没有连接到互联网。但沙盒的目的是尽可能地模仿真实的计算机,因此它们可能会对恶意软件针对特定域的查询产生一个虚假的响应。因此,恶意软件检查其是否在沙盒内的一种方法是向一个假的域名发送查询。如果它得到一个“真实的”响应(由沙盒生成),它可以认为自己是在沙盒中,并关闭自己,这样沙盒就不会检测到它是恶意的。

然而,如果恶意软件将其测试查询发送到一个硬编码的域名,那么如果有人注册了这个域名,它就会被欺骗,以为自己始终在沙盒中。这可能是 WannaCry 发生的情况:世界各地的 WannaCry 副本被欺骗,认为它们在沙盒内,并关闭自己。(从恶意软件作者的角度来看,一个更好的设计是查询一个每次都不同的随机域名,这样一来,从沙盒外的域名得到回应的几率就接近零了)。

事情起因

国庆假期结束后的第一节网络攻防课,老师安排测试wannacry病毒的任务。

详细过程

由于病毒具有破坏性,因此在本地直接运行是极其危险的行为,一旦控制不慎,不仅自己电脑的数据要被破坏和丢失,甚至可能导致电脑成为肉鸡,去攻击其他联网设备。
为了安全考虑,首先需要准备好病毒运行的环境。

  • 支持虚拟化技术的电脑
  • VMware Workstation Pro 软件
  • 操作系统安装包
  • 计算机病毒样本

虚拟机环境配置

系统:Windows XP
安装教程:
VMware虚拟机之WindowsXP系统超详细下载安装与使用教程
itellyou官网 - 系统镜像下载

这个教程非常详细,而且每一步都有图片,即使小白也能轻松使用。

本地文件如何与虚拟机交互

方法一:

因为VMware自带有工具Vmware Tools,能够直接实现主机和虚拟机之间的文件共享,同时支持自由拖拽文件进行上传和下载,因此最简单且好用的办法就是在虚拟机安装Vmware Tools。

附上官方文档:VMware Tools 用户指南 - VMware Tools 11.2.5

说明:由于上一步安装虚拟机后,我的XP虚拟机自动安装了Vmware Tools(所以显示重新安装vmware tool),因此以下内容并未具体尝试,可能以下安装步骤中会出现一些报错或bug,请酌情查看。

具体步骤如下:

windows:

在 Windows 上手动安装 VMware Tools

[如何在Windows操作系统安装VMwareTools_VMware服务-阿里云帮助中心 (aliyun.com)](https://help.aliyun.com/document_detail/412878.html#:~:text=安装VMware Tools(Windows操作系统) 1 Windows操作系统安装完成后,VMware vSphere控制台会提示“该虚拟机上未安装VMware Tools” 2 鼠标右击虚拟机,选择,。 7 选择 安装 ,开始安装。 8 正在安装,如下图所示。 更多项目)

linux:

打开linux虚拟机,在VMware菜单栏里点击虚拟机选项,找到安装VMware tools选项。

对linux系统的tool安装需要控制台执行,下面附上代码:

1
2
3
4
5
6
7
8
// 解压下载的安装包
tar -zxvf [文件名]
//进入解压完成的文件夹
cd [wen'jian'ji]
//查看文件夹下的文件
ls
//执行文件夹下的可执行文件。
sudo ./vmware-install.pl

完成以上步骤后重启系统。

方法二:(以下内容只是对该博客的简略,并非原创)

将本机文件复制到安装的虚拟机系统中的两种方法_vmware怎么将本地文件下载到虚拟机除了vmwaretool_灼_灼的博客-CSDN博客

进入虚拟机设置,选择硬盘,再点击映射

在打开的映射虚拟磁盘,选择要复制到虚拟机里的哪个盘,记得取消勾选“以只读模式打开文件”,然后点击确定。

点击本地资源管理器,选择已经映射的盘

如果没有出现需要格式化弹窗,就可以直接把文件复制到映射盘中了,然后在虚拟机里,对应的你刚才选中的虚拟机里的磁盘就可以看到复制的文件了。

注意:要是有提示格式化,然后有文件较为重要,建议不要格式化

复制完文件记得断开连接

隔离措施

做好隔离措施。此步骤非常重要!!!

注意:为了安全起见,强烈建议拔掉插在电脑上的U盘。

打开虚拟机操作系统上的网络与共享中心,单击已经连接因特网的本地连接,在弹出的对话框中单击“禁用“按钮。

点击VMware Workstation Pro软件上方的虚拟机菜单,选择设置,单击设置窗口左侧的网络适配器,之后在网络适配器设置的设备状态栏内将两个勾去掉。

如何安全地做电脑病毒实验?

单击上方的“选项”选项卡,在左侧列表框内确认共享文件夹已禁用。设置完后单击确定按钮。

如何安全地做电脑病毒实验?

拍摄快照。为了防止病毒发作导致虚拟机系统崩溃后恢复麻烦,建议在运行病毒程序前拍摄快照,如图所示。该步骤需要几分钟时间,注意观察虚拟机软件的左下角。

如何安全地做电脑病毒实验?

实战

**针对病毒特性,设好模型。**比如:如果要运行勒索病毒,则需在虚拟机桌面上象征新地放置几个文本文件,观察中毒前后文件内容变化。

在确认做好隔离措施后(特别是检查是否已经断网),在虚拟机上把病毒样本压缩包解压缩并小心运行病毒程序。

**观察实验效果。**如:我们刚刚放置的文件已经被加密而乱码;桌面变了;弹出勒索对话框。如图。

病毒似乎并不能把已经运行的程序强制关闭,但这些打开的源文件已经不在桌面了,因此可以知道病毒并不直接修改内存。应该只是操作硬盘数据。

*解毒具体步骤*

打开wannakey-master,阅读readme.txt,由于wannacry会识别后缀名为txt的文件并标记为重要文件进行加密,因此readme的后缀名有可能被改成了其他形式,此时应该改回txt格式,采用记事本打开。

根据readme.txt中提供的信息,参照自己的windows版本,在bin中选择合适的exe进行运行:

运行wannakey.exe程序

多核系统使用wannakey_omp.exe

运行后会跳出cmd窗口(窗口可能会一闪而过,注意观察),如果显示秘钥已经成功生成(key has been generated),那么秘钥已经获取成功,此时前往恶意软件窗口,单击解密(decrypt)按钮,在后续的窗口里选择自己要解密的对象点击start,即可进行解密。

此时下方的目录表中会显示所有被解密了的文件的路径,可以根据路径进行核实和查看。

**恢复。**实验完后,恢复中毒前的状态。依次单击VMware Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。大约半分钟后就虚拟机就恢复到了中毒前的状态。

病毒逆向

病毒分析之WannaCry勒索病毒 - 『病毒分析区』 - 吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

[系统安全] 三十.WannaCry勒索病毒分析 (4)全网“最”详细的蠕虫传播机制解读-腾讯云开发者社区-腾讯云 (tencent.com)

[系统安全] 二十七.WannaCry勒索病毒分析 (3)蠕虫传播机制分析及IDA和OD逆向-腾讯云开发者社区-腾讯云 (tencent.com)

WannaCry利用Windows系统的SMB漏洞获取系统的最高权限,该工具通过恶意代码扫描开放445端口的Windows系统。WannaCry利用永恒之蓝漏洞进行网络端口扫描攻击,目标机器被成功攻陷后会从攻击机下载WannaCry蠕虫进行感染,并作为攻击机再次扫描互联网和局域网的其他机器,形成蠕虫感染大范围超快速扩散。

WannaCry勒索病毒主要行为是传播和勒索。
该病毒分为两个部分:

(1) 蠕虫部分,利用基于445端口的SMB漏洞MS17-010(永恒之蓝)进行病毒传播,并释放出勒索病毒。

(2) 勒索病毒部分,加密用户文件索要赎金。释放文件,包括加密器、解密器、说明文件、语言文件等;加密文件;设置桌面背景、窗体信息及付款账号等。

勒索病毒部分详细分析 (待修改)

CryptGenKey 函数生成随机加密会话密钥公钥/私钥对。密钥或密钥对的句柄在 phKey 中返回。

勒索主逻辑执行,先会导入一个存放在镜像中的RSA公钥,之后调用CryptGenKey生成一组RSA算法的Session key。之后将这组Key的公钥通过CryptExportKey导出,再写入到00000000.pky文件中。将Session key中的私钥用刚导入RSA公钥进行加密,存放在00000000.eky如下图所示:

img

如果遍历到的文件扩展名在欲加密的文件扩展名列表中,如下图所示:

img

则会将当前文件路径加入到文件操作列表中,在遍历文件结束后一并进行文件操作。代码如下图:

img

对于每个需要加密的文件,都会调用CryptGenRadom随机生成AES密钥,之后使用Session Key中的RSA公钥对AES密钥进行加密,存放在加密后的数据文件头中,之后将原始文件数据用该AES密钥进行加密。如下图所示:

img

整体加密流程,如下图所示:

img

因为病毒是生成加密过的用户文件后再删除原始文件,所以存在通过文件恢复类工具恢复原始未加密文件的可能。但是因为病毒对文件系统的修改操作过于频繁,导致被删除的原始文件数据块被覆盖,致使实际恢复效果有限。且随着系统持续运行,恢复类工具恢复数据的可能性会显著降低。

Wannakey的恢复

因为所有文件都是用随机生成的AES

WannaCry 在加密文件时会将加密密钥存储在内存中,而没有进行及时的清除。WannaKey 利用了这个漏洞,通过扫描内存中的数据,找到并提取出加密文件的解密密钥。

因此,WannaKey 能够解密 WannaCry 加密的文件,是因为它能够获取到加密文件的解密密钥。通过使用这个解密密钥,WannaKey 可以还原被 WannaCry 加密的文件,使受害者能够恢复其文件的原始状态。

病毒样本下载

计算机病毒样本分享_勒索病毒样本下载-CSDN博客

注意:为了安全起见,建议直接在虚拟机上上网搜索、下载,*在做好隔离措施前不要解压缩*。

参考资料

[如何安全地做电脑病毒实验-百度经验 (baidu.com)](https://jingyan.baidu.com/article/8cdccae9bacc6b705413cdf9.html#:~:text=恢复。 实验完后,恢复中毒前的状态。 依次单击VMware,Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。 大约半分钟后就虚拟机就恢复到了中毒前的状态。)

WannaCry - wiki

Wannakey

勒索病毒WannaCry深度技术分析—— 详解传播、感染和危害细节

单击上方的“选项”选项卡,在左侧列表框内确认共享文件夹已禁用。设置完后单击确定按钮。

Wannacry

介绍

什么是 WannaCry 勒索软件攻击?

WannaCry 通过使用名为“EternalBlue”的漏洞利用进行传播。EternalBlue 仅适用于较旧的、未打补丁的 Microsoft Windows 版本,但运行此类版本的机器数量足以让 WannaCry 迅速传播开来。

*勒索软件是一种恶意软件,它通过加密锁住文件和数据,并索取赎金。

WannaCry 包含一个不寻常的函数:在执行之前,它将查询 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com。这个网站并不存在。

在 Hutchins 注册了这个域之后,WannaCry 的副本继续传播,但他们停止了执行。从本质上讲,一旦 WannaCry 开始收到来自 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com 的响应,它就会自行关闭。

为什么这能阻止攻击?

虽然不能确定 WannaCry 作者的动机,但据推测,WannaCry 中包含了这种域名查询功能的目的是让赎金软件能够检查它是否在沙盒内。

沙盒是一种反恶意软件工具。它是一个虚拟机,与所有其他系统和网络分开运行。它提供了一个安全的环境来执行不受信任的文件,看看它们是做什么的。

沙盒实际上没有连接到互联网。但沙盒的目的是尽可能地模仿真实的计算机,因此它们可能会对恶意软件针对特定域的查询产生一个虚假的响应。因此,恶意软件检查其是否在沙盒内的一种方法是向一个假的域名发送查询。如果它得到一个“真实的”响应(由沙盒生成),它可以认为自己是在沙盒中,并关闭自己,这样沙盒就不会检测到它是恶意的。

然而,如果恶意软件将其测试查询发送到一个硬编码的域名,那么如果有人注册了这个域名,它就会被欺骗,以为自己始终在沙盒中。这可能是 WannaCry 发生的情况:世界各地的 WannaCry 副本被欺骗,认为它们在沙盒内,并关闭自己。(从恶意软件作者的角度来看,一个更好的设计是查询一个每次都不同的随机域名,这样一来,从沙盒外的域名得到回应的几率就接近零了)。

事情起因

国庆假期结束后的第一节网络攻防课,老师安排测试wannacry病毒的任务。

详细过程

由于病毒具有破坏性,因此在本地直接运行是极其危险的行为,一旦控制不慎,不仅自己电脑的数据要被破坏和丢失,甚至可能导致电脑成为肉鸡,去攻击其他联网设备。
为了安全考虑,首先需要准备好病毒运行的环境。

  • 支持虚拟化技术的电脑
  • VMware Workstation Pro 软件
  • 操作系统安装包
  • 计算机病毒样本

虚拟机环境配置

系统:Windows XP
安装教程:
VMware虚拟机之WindowsXP系统超详细下载安装与使用教程
itellyou官网 - 系统镜像下载

这个教程非常详细,而且每一步都有图片,即使小白也能轻松使用。

本地文件如何与虚拟机交互

方法一:

因为VMware自带有工具Vmware Tools,能够直接实现主机和虚拟机之间的文件共享,同时支持自由拖拽文件进行上传和下载,因此最简单且好用的办法就是在虚拟机安装Vmware Tools。

附上官方文档:VMware Tools 用户指南 - VMware Tools 11.2.5

说明:由于上一步安装虚拟机后,我的XP虚拟机自动安装了Vmware Tools(所以显示重新安装vmware tool),因此以下内容并未具体尝试,可能以下安装步骤中会出现一些报错或bug,请酌情查看。

具体步骤如下:

windows:

在 Windows 上手动安装 VMware Tools

[如何在Windows操作系统安装VMwareTools_VMware服务-阿里云帮助中心 (aliyun.com)](https://help.aliyun.com/document_detail/412878.html#:~:text=安装VMware Tools(Windows操作系统) 1 Windows操作系统安装完成后,VMware vSphere控制台会提示“该虚拟机上未安装VMware Tools” 2 鼠标右击虚拟机,选择,。 7 选择 安装 ,开始安装。 8 正在安装,如下图所示。 更多项目)

linux:

打开linux虚拟机,在VMware菜单栏里点击虚拟机选项,找到安装VMware tools选项。

对linux系统的tool安装需要控制台执行,下面附上代码:

1
2
3
4
5
6
7
8
// 解压下载的安装包
tar -zxvf [文件名]
//进入解压完成的文件夹
cd [wen'jian'ji]
//查看文件夹下的文件
ls
//执行文件夹下的可执行文件。
sudo ./vmware-install.pl

完成以上步骤后重启系统。

方法二:(以下内容只是对该博客的简略,并非原创)

将本机文件复制到安装的虚拟机系统中的两种方法_vmware怎么将本地文件下载到虚拟机除了vmwaretool_灼_灼的博客-CSDN博客

进入虚拟机设置,选择硬盘,再点击映射

在打开的映射虚拟磁盘,选择要复制到虚拟机里的哪个盘,记得取消勾选“以只读模式打开文件”,然后点击确定。

点击本地资源管理器,选择已经映射的盘

如果没有出现需要格式化弹窗,就可以直接把文件复制到映射盘中了,然后在虚拟机里,对应的你刚才选中的虚拟机里的磁盘就可以看到复制的文件了。

注意:要是有提示格式化,然后有文件较为重要,建议不要格式化

复制完文件记得断开连接

隔离措施

做好隔离措施。此步骤非常重要!!!

注意:为了安全起见,强烈建议拔掉插在电脑上的U盘。

打开虚拟机操作系统上的网络与共享中心,单击已经连接因特网的本地连接,在弹出的对话框中单击“禁用“按钮。

点击VMware Workstation Pro软件上方的虚拟机菜单,选择设置,单击设置窗口左侧的网络适配器,之后在网络适配器设置的设备状态栏内将两个勾去掉。

如何安全地做电脑病毒实验?

单击上方的“选项”选项卡,在左侧列表框内确认共享文件夹已禁用。设置完后单击确定按钮。

如何安全地做电脑病毒实验?

拍摄快照。为了防止病毒发作导致虚拟机系统崩溃后恢复麻烦,建议在运行病毒程序前拍摄快照,如图所示。该步骤需要几分钟时间,注意观察虚拟机软件的左下角。

如何安全地做电脑病毒实验?

实战

**针对病毒特性,设好模型。**比如:如果要运行勒索病毒,则需在虚拟机桌面上象征新地放置几个文本文件,观察中毒前后文件内容变化。

在确认做好隔离措施后(特别是检查是否已经断网),在虚拟机上把病毒样本压缩包解压缩并小心运行病毒程序。

**观察实验效果。**如:我们刚刚放置的文件已经被加密而乱码;桌面变了;弹出勒索对话框。如图。

病毒似乎并不能把已经运行的程序强制关闭,但这些打开的源文件已经不在桌面了,因此可以知道病毒并不直接修改内存。应该只是操作硬盘数据。

*解毒具体步骤*

打开wannakey-master,阅读readme.txt,由于wannacry会识别后缀名为txt的文件并标记为重要文件进行加密,因此readme的后缀名有可能被改成了其他形式,此时应该改回txt格式,采用记事本打开。

根据readme.txt中提供的信息,参照自己的windows版本,在bin中选择合适的exe进行运行:

运行wannakey.exe程序

多核系统使用wannakey_omp.exe

运行后会跳出cmd窗口(窗口可能会一闪而过,注意观察),如果显示秘钥已经成功生成(key has been generated),那么秘钥已经获取成功,此时前往恶意软件窗口,单击解密(decrypt)按钮,在后续的窗口里选择自己要解密的对象点击start,即可进行解密。

此时下方的目录表中会显示所有被解密了的文件的路径,可以根据路径进行核实和查看。

**恢复。**实验完后,恢复中毒前的状态。依次单击VMware Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。大约半分钟后就虚拟机就恢复到了中毒前的状态。

病毒逆向

病毒分析之WannaCry勒索病毒 - 『病毒分析区』 - 吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

[系统安全] 三十.WannaCry勒索病毒分析 (4)全网“最”详细的蠕虫传播机制解读-腾讯云开发者社区-腾讯云 (tencent.com)

[系统安全] 二十七.WannaCry勒索病毒分析 (3)蠕虫传播机制分析及IDA和OD逆向-腾讯云开发者社区-腾讯云 (tencent.com)

WannaCry利用Windows系统的SMB漏洞获取系统的最高权限,该工具通过恶意代码扫描开放445端口的Windows系统。WannaCry利用永恒之蓝漏洞进行网络端口扫描攻击,目标机器被成功攻陷后会从攻击机下载WannaCry蠕虫进行感染,并作为攻击机再次扫描互联网和局域网的其他机器,形成蠕虫感染大范围超快速扩散。

WannaCry勒索病毒主要行为是传播和勒索。
该病毒分为两个部分:

(1) 蠕虫部分,利用基于445端口的SMB漏洞MS17-010(永恒之蓝)进行病毒传播,并释放出勒索病毒。

(2) 勒索病毒部分,加密用户文件索要赎金。释放文件,包括加密器、解密器、说明文件、语言文件等;加密文件;设置桌面背景、窗体信息及付款账号等。

勒索病毒部分详细分析 (待修改)

CryptGenKey 函数生成随机加密会话密钥公钥/私钥对。密钥或密钥对的句柄在 phKey 中返回。

勒索主逻辑执行,先会导入一个存放在镜像中的RSA公钥,之后调用CryptGenKey生成一组RSA算法的Session key。之后将这组Key的公钥通过CryptExportKey导出,再写入到00000000.pky文件中。将Session key中的私钥用刚导入RSA公钥进行加密,存放在00000000.eky如下图所示:

img

如果遍历到的文件扩展名在欲加密的文件扩展名列表中,如下图所示:

img

则会将当前文件路径加入到文件操作列表中,在遍历文件结束后一并进行文件操作。代码如下图:

img

对于每个需要加密的文件,都会调用CryptGenRadom随机生成AES密钥,之后使用Session Key中的RSA公钥对AES密钥进行加密,存放在加密后的数据文件头中,之后将原始文件数据用该AES密钥进行加密。如下图所示:

img

整体加密流程,如下图所示:

img

因为病毒是生成加密过的用户文件后再删除原始文件,所以存在通过文件恢复类工具恢复原始未加密文件的可能。但是因为病毒对文件系统的修改操作过于频繁,导致被删除的原始文件数据块被覆盖,致使实际恢复效果有限。且随着系统持续运行,恢复类工具恢复数据的可能性会显著降低。

Wannakey的恢复

因为所有文件都是用随机生成的AES

WannaCry 在加密文件时会将加密密钥存储在内存中,而没有进行及时的清除。WannaKey 利用了这个漏洞,通过扫描内存中的数据,找到并提取出加密文件的解密密钥。

因此,WannaKey 能够解密 WannaCry 加密的文件,是因为它能够获取到加密文件的解密密钥。通过使用这个解密密钥,WannaKey 可以还原被 WannaCry 加密的文件,使受害者能够恢复其文件的原始状态。

病毒样本下载

计算机病毒样本分享_勒索病毒样本下载-CSDN博客

注意:为了安全起见,建议直接在虚拟机上上网搜索、下载,*在做好隔离措施前不要解压缩*。

参考资料

[如何安全地做电脑病毒实验-百度经验 (baidu.com)](https://jingyan.baidu.com/article/8cdccae9bacc6b705413cdf9.html#:~:text=恢复。 实验完后,恢复中毒前的状态。 依次单击VMware,Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。 大约半分钟后就虚拟机就恢复到了中毒前的状态。)

WannaCry - wiki

Wannakey

勒索病毒WannaCry深度技术分析—— 详解传播、感染和危害细节

拍摄快照。为了防止病毒发作导致虚拟机系统崩溃后恢复麻烦,建议在运行病毒程序前拍摄快照,如图所示。该步骤需要几分钟时间,注意观察虚拟机软件的左下角。

Wannacry

介绍

什么是 WannaCry 勒索软件攻击?

WannaCry 通过使用名为“EternalBlue”的漏洞利用进行传播。EternalBlue 仅适用于较旧的、未打补丁的 Microsoft Windows 版本,但运行此类版本的机器数量足以让 WannaCry 迅速传播开来。

*勒索软件是一种恶意软件,它通过加密锁住文件和数据,并索取赎金。

WannaCry 包含一个不寻常的函数:在执行之前,它将查询 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com。这个网站并不存在。

在 Hutchins 注册了这个域之后,WannaCry 的副本继续传播,但他们停止了执行。从本质上讲,一旦 WannaCry 开始收到来自 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com 的响应,它就会自行关闭。

为什么这能阻止攻击?

虽然不能确定 WannaCry 作者的动机,但据推测,WannaCry 中包含了这种域名查询功能的目的是让赎金软件能够检查它是否在沙盒内。

沙盒是一种反恶意软件工具。它是一个虚拟机,与所有其他系统和网络分开运行。它提供了一个安全的环境来执行不受信任的文件,看看它们是做什么的。

沙盒实际上没有连接到互联网。但沙盒的目的是尽可能地模仿真实的计算机,因此它们可能会对恶意软件针对特定域的查询产生一个虚假的响应。因此,恶意软件检查其是否在沙盒内的一种方法是向一个假的域名发送查询。如果它得到一个“真实的”响应(由沙盒生成),它可以认为自己是在沙盒中,并关闭自己,这样沙盒就不会检测到它是恶意的。

然而,如果恶意软件将其测试查询发送到一个硬编码的域名,那么如果有人注册了这个域名,它就会被欺骗,以为自己始终在沙盒中。这可能是 WannaCry 发生的情况:世界各地的 WannaCry 副本被欺骗,认为它们在沙盒内,并关闭自己。(从恶意软件作者的角度来看,一个更好的设计是查询一个每次都不同的随机域名,这样一来,从沙盒外的域名得到回应的几率就接近零了)。

事情起因

国庆假期结束后的第一节网络攻防课,老师安排测试wannacry病毒的任务。

详细过程

由于病毒具有破坏性,因此在本地直接运行是极其危险的行为,一旦控制不慎,不仅自己电脑的数据要被破坏和丢失,甚至可能导致电脑成为肉鸡,去攻击其他联网设备。
为了安全考虑,首先需要准备好病毒运行的环境。

  • 支持虚拟化技术的电脑
  • VMware Workstation Pro 软件
  • 操作系统安装包
  • 计算机病毒样本

虚拟机环境配置

系统:Windows XP
安装教程:
VMware虚拟机之WindowsXP系统超详细下载安装与使用教程
itellyou官网 - 系统镜像下载

这个教程非常详细,而且每一步都有图片,即使小白也能轻松使用。

本地文件如何与虚拟机交互

方法一:

因为VMware自带有工具Vmware Tools,能够直接实现主机和虚拟机之间的文件共享,同时支持自由拖拽文件进行上传和下载,因此最简单且好用的办法就是在虚拟机安装Vmware Tools。

附上官方文档:VMware Tools 用户指南 - VMware Tools 11.2.5

说明:由于上一步安装虚拟机后,我的XP虚拟机自动安装了Vmware Tools(所以显示重新安装vmware tool),因此以下内容并未具体尝试,可能以下安装步骤中会出现一些报错或bug,请酌情查看。

具体步骤如下:

windows:

在 Windows 上手动安装 VMware Tools

[如何在Windows操作系统安装VMwareTools_VMware服务-阿里云帮助中心 (aliyun.com)](https://help.aliyun.com/document_detail/412878.html#:~:text=安装VMware Tools(Windows操作系统) 1 Windows操作系统安装完成后,VMware vSphere控制台会提示“该虚拟机上未安装VMware Tools” 2 鼠标右击虚拟机,选择,。 7 选择 安装 ,开始安装。 8 正在安装,如下图所示。 更多项目)

linux:

打开linux虚拟机,在VMware菜单栏里点击虚拟机选项,找到安装VMware tools选项。

对linux系统的tool安装需要控制台执行,下面附上代码:

1
2
3
4
5
6
7
8
// 解压下载的安装包
tar -zxvf [文件名]
//进入解压完成的文件夹
cd [wen'jian'ji]
//查看文件夹下的文件
ls
//执行文件夹下的可执行文件。
sudo ./vmware-install.pl

完成以上步骤后重启系统。

方法二:(以下内容只是对该博客的简略,并非原创)

将本机文件复制到安装的虚拟机系统中的两种方法_vmware怎么将本地文件下载到虚拟机除了vmwaretool_灼_灼的博客-CSDN博客

进入虚拟机设置,选择硬盘,再点击映射

在打开的映射虚拟磁盘,选择要复制到虚拟机里的哪个盘,记得取消勾选“以只读模式打开文件”,然后点击确定。

点击本地资源管理器,选择已经映射的盘

如果没有出现需要格式化弹窗,就可以直接把文件复制到映射盘中了,然后在虚拟机里,对应的你刚才选中的虚拟机里的磁盘就可以看到复制的文件了。

注意:要是有提示格式化,然后有文件较为重要,建议不要格式化

复制完文件记得断开连接

隔离措施

做好隔离措施。此步骤非常重要!!!

注意:为了安全起见,强烈建议拔掉插在电脑上的U盘。

打开虚拟机操作系统上的网络与共享中心,单击已经连接因特网的本地连接,在弹出的对话框中单击“禁用“按钮。

点击VMware Workstation Pro软件上方的虚拟机菜单,选择设置,单击设置窗口左侧的网络适配器,之后在网络适配器设置的设备状态栏内将两个勾去掉。

如何安全地做电脑病毒实验?

单击上方的“选项”选项卡,在左侧列表框内确认共享文件夹已禁用。设置完后单击确定按钮。

如何安全地做电脑病毒实验?

拍摄快照。为了防止病毒发作导致虚拟机系统崩溃后恢复麻烦,建议在运行病毒程序前拍摄快照,如图所示。该步骤需要几分钟时间,注意观察虚拟机软件的左下角。

如何安全地做电脑病毒实验?

实战

**针对病毒特性,设好模型。**比如:如果要运行勒索病毒,则需在虚拟机桌面上象征新地放置几个文本文件,观察中毒前后文件内容变化。

在确认做好隔离措施后(特别是检查是否已经断网),在虚拟机上把病毒样本压缩包解压缩并小心运行病毒程序。

**观察实验效果。**如:我们刚刚放置的文件已经被加密而乱码;桌面变了;弹出勒索对话框。如图。

病毒似乎并不能把已经运行的程序强制关闭,但这些打开的源文件已经不在桌面了,因此可以知道病毒并不直接修改内存。应该只是操作硬盘数据。

*解毒具体步骤*

打开wannakey-master,阅读readme.txt,由于wannacry会识别后缀名为txt的文件并标记为重要文件进行加密,因此readme的后缀名有可能被改成了其他形式,此时应该改回txt格式,采用记事本打开。

根据readme.txt中提供的信息,参照自己的windows版本,在bin中选择合适的exe进行运行:

运行wannakey.exe程序

多核系统使用wannakey_omp.exe

运行后会跳出cmd窗口(窗口可能会一闪而过,注意观察),如果显示秘钥已经成功生成(key has been generated),那么秘钥已经获取成功,此时前往恶意软件窗口,单击解密(decrypt)按钮,在后续的窗口里选择自己要解密的对象点击start,即可进行解密。

此时下方的目录表中会显示所有被解密了的文件的路径,可以根据路径进行核实和查看。

**恢复。**实验完后,恢复中毒前的状态。依次单击VMware Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。大约半分钟后就虚拟机就恢复到了中毒前的状态。

病毒逆向

病毒分析之WannaCry勒索病毒 - 『病毒分析区』 - 吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

[系统安全] 三十.WannaCry勒索病毒分析 (4)全网“最”详细的蠕虫传播机制解读-腾讯云开发者社区-腾讯云 (tencent.com)

[系统安全] 二十七.WannaCry勒索病毒分析 (3)蠕虫传播机制分析及IDA和OD逆向-腾讯云开发者社区-腾讯云 (tencent.com)

WannaCry利用Windows系统的SMB漏洞获取系统的最高权限,该工具通过恶意代码扫描开放445端口的Windows系统。WannaCry利用永恒之蓝漏洞进行网络端口扫描攻击,目标机器被成功攻陷后会从攻击机下载WannaCry蠕虫进行感染,并作为攻击机再次扫描互联网和局域网的其他机器,形成蠕虫感染大范围超快速扩散。

WannaCry勒索病毒主要行为是传播和勒索。
该病毒分为两个部分:

(1) 蠕虫部分,利用基于445端口的SMB漏洞MS17-010(永恒之蓝)进行病毒传播,并释放出勒索病毒。

(2) 勒索病毒部分,加密用户文件索要赎金。释放文件,包括加密器、解密器、说明文件、语言文件等;加密文件;设置桌面背景、窗体信息及付款账号等。

勒索病毒部分详细分析 (待修改)

CryptGenKey 函数生成随机加密会话密钥公钥/私钥对。密钥或密钥对的句柄在 phKey 中返回。

勒索主逻辑执行,先会导入一个存放在镜像中的RSA公钥,之后调用CryptGenKey生成一组RSA算法的Session key。之后将这组Key的公钥通过CryptExportKey导出,再写入到00000000.pky文件中。将Session key中的私钥用刚导入RSA公钥进行加密,存放在00000000.eky如下图所示:

img

如果遍历到的文件扩展名在欲加密的文件扩展名列表中,如下图所示:

img

则会将当前文件路径加入到文件操作列表中,在遍历文件结束后一并进行文件操作。代码如下图:

img

对于每个需要加密的文件,都会调用CryptGenRadom随机生成AES密钥,之后使用Session Key中的RSA公钥对AES密钥进行加密,存放在加密后的数据文件头中,之后将原始文件数据用该AES密钥进行加密。如下图所示:

img

整体加密流程,如下图所示:

img

因为病毒是生成加密过的用户文件后再删除原始文件,所以存在通过文件恢复类工具恢复原始未加密文件的可能。但是因为病毒对文件系统的修改操作过于频繁,导致被删除的原始文件数据块被覆盖,致使实际恢复效果有限。且随着系统持续运行,恢复类工具恢复数据的可能性会显著降低。

Wannakey的恢复

因为所有文件都是用随机生成的AES

WannaCry 在加密文件时会将加密密钥存储在内存中,而没有进行及时的清除。WannaKey 利用了这个漏洞,通过扫描内存中的数据,找到并提取出加密文件的解密密钥。

因此,WannaKey 能够解密 WannaCry 加密的文件,是因为它能够获取到加密文件的解密密钥。通过使用这个解密密钥,WannaKey 可以还原被 WannaCry 加密的文件,使受害者能够恢复其文件的原始状态。

病毒样本下载

计算机病毒样本分享_勒索病毒样本下载-CSDN博客

注意:为了安全起见,建议直接在虚拟机上上网搜索、下载,*在做好隔离措施前不要解压缩*。

参考资料

[如何安全地做电脑病毒实验-百度经验 (baidu.com)](https://jingyan.baidu.com/article/8cdccae9bacc6b705413cdf9.html#:~:text=恢复。 实验完后,恢复中毒前的状态。 依次单击VMware,Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。 大约半分钟后就虚拟机就恢复到了中毒前的状态。)

WannaCry - wiki

Wannakey

勒索病毒WannaCry深度技术分析—— 详解传播、感染和危害细节

实战

**针对病毒特性,设好模型。**比如:如果要运行勒索病毒,则需在虚拟机桌面上象征新地放置几个文本文件,观察中毒前后文件内容变化。

Wannacry

介绍

什么是 WannaCry 勒索软件攻击?

WannaCry 通过使用名为“EternalBlue”的漏洞利用进行传播。EternalBlue 仅适用于较旧的、未打补丁的 Microsoft Windows 版本,但运行此类版本的机器数量足以让 WannaCry 迅速传播开来。

*勒索软件是一种恶意软件,它通过加密锁住文件和数据,并索取赎金。

WannaCry 包含一个不寻常的函数:在执行之前,它将查询 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com。这个网站并不存在。

在 Hutchins 注册了这个域之后,WannaCry 的副本继续传播,但他们停止了执行。从本质上讲,一旦 WannaCry 开始收到来自 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com 的响应,它就会自行关闭。

为什么这能阻止攻击?

虽然不能确定 WannaCry 作者的动机,但据推测,WannaCry 中包含了这种域名查询功能的目的是让赎金软件能够检查它是否在沙盒内。

沙盒是一种反恶意软件工具。它是一个虚拟机,与所有其他系统和网络分开运行。它提供了一个安全的环境来执行不受信任的文件,看看它们是做什么的。

沙盒实际上没有连接到互联网。但沙盒的目的是尽可能地模仿真实的计算机,因此它们可能会对恶意软件针对特定域的查询产生一个虚假的响应。因此,恶意软件检查其是否在沙盒内的一种方法是向一个假的域名发送查询。如果它得到一个“真实的”响应(由沙盒生成),它可以认为自己是在沙盒中,并关闭自己,这样沙盒就不会检测到它是恶意的。

然而,如果恶意软件将其测试查询发送到一个硬编码的域名,那么如果有人注册了这个域名,它就会被欺骗,以为自己始终在沙盒中。这可能是 WannaCry 发生的情况:世界各地的 WannaCry 副本被欺骗,认为它们在沙盒内,并关闭自己。(从恶意软件作者的角度来看,一个更好的设计是查询一个每次都不同的随机域名,这样一来,从沙盒外的域名得到回应的几率就接近零了)。

事情起因

国庆假期结束后的第一节网络攻防课,老师安排测试wannacry病毒的任务。

详细过程

由于病毒具有破坏性,因此在本地直接运行是极其危险的行为,一旦控制不慎,不仅自己电脑的数据要被破坏和丢失,甚至可能导致电脑成为肉鸡,去攻击其他联网设备。
为了安全考虑,首先需要准备好病毒运行的环境。

  • 支持虚拟化技术的电脑
  • VMware Workstation Pro 软件
  • 操作系统安装包
  • 计算机病毒样本

虚拟机环境配置

系统:Windows XP
安装教程:
VMware虚拟机之WindowsXP系统超详细下载安装与使用教程
itellyou官网 - 系统镜像下载

这个教程非常详细,而且每一步都有图片,即使小白也能轻松使用。

本地文件如何与虚拟机交互

方法一:

因为VMware自带有工具Vmware Tools,能够直接实现主机和虚拟机之间的文件共享,同时支持自由拖拽文件进行上传和下载,因此最简单且好用的办法就是在虚拟机安装Vmware Tools。

附上官方文档:VMware Tools 用户指南 - VMware Tools 11.2.5

说明:由于上一步安装虚拟机后,我的XP虚拟机自动安装了Vmware Tools(所以显示重新安装vmware tool),因此以下内容并未具体尝试,可能以下安装步骤中会出现一些报错或bug,请酌情查看。

具体步骤如下:

windows:

在 Windows 上手动安装 VMware Tools

[如何在Windows操作系统安装VMwareTools_VMware服务-阿里云帮助中心 (aliyun.com)](https://help.aliyun.com/document_detail/412878.html#:~:text=安装VMware Tools(Windows操作系统) 1 Windows操作系统安装完成后,VMware vSphere控制台会提示“该虚拟机上未安装VMware Tools” 2 鼠标右击虚拟机,选择,。 7 选择 安装 ,开始安装。 8 正在安装,如下图所示。 更多项目)

linux:

打开linux虚拟机,在VMware菜单栏里点击虚拟机选项,找到安装VMware tools选项。

对linux系统的tool安装需要控制台执行,下面附上代码:

1
2
3
4
5
6
7
8
// 解压下载的安装包
tar -zxvf [文件名]
//进入解压完成的文件夹
cd [wen'jian'ji]
//查看文件夹下的文件
ls
//执行文件夹下的可执行文件。
sudo ./vmware-install.pl

完成以上步骤后重启系统。

方法二:(以下内容只是对该博客的简略,并非原创)

将本机文件复制到安装的虚拟机系统中的两种方法_vmware怎么将本地文件下载到虚拟机除了vmwaretool_灼_灼的博客-CSDN博客

进入虚拟机设置,选择硬盘,再点击映射

在打开的映射虚拟磁盘,选择要复制到虚拟机里的哪个盘,记得取消勾选“以只读模式打开文件”,然后点击确定。

点击本地资源管理器,选择已经映射的盘

如果没有出现需要格式化弹窗,就可以直接把文件复制到映射盘中了,然后在虚拟机里,对应的你刚才选中的虚拟机里的磁盘就可以看到复制的文件了。

注意:要是有提示格式化,然后有文件较为重要,建议不要格式化

复制完文件记得断开连接

隔离措施

做好隔离措施。此步骤非常重要!!!

注意:为了安全起见,强烈建议拔掉插在电脑上的U盘。

打开虚拟机操作系统上的网络与共享中心,单击已经连接因特网的本地连接,在弹出的对话框中单击“禁用“按钮。

点击VMware Workstation Pro软件上方的虚拟机菜单,选择设置,单击设置窗口左侧的网络适配器,之后在网络适配器设置的设备状态栏内将两个勾去掉。

如何安全地做电脑病毒实验?

单击上方的“选项”选项卡,在左侧列表框内确认共享文件夹已禁用。设置完后单击确定按钮。

如何安全地做电脑病毒实验?

拍摄快照。为了防止病毒发作导致虚拟机系统崩溃后恢复麻烦,建议在运行病毒程序前拍摄快照,如图所示。该步骤需要几分钟时间,注意观察虚拟机软件的左下角。

如何安全地做电脑病毒实验?

实战

**针对病毒特性,设好模型。**比如:如果要运行勒索病毒,则需在虚拟机桌面上象征新地放置几个文本文件,观察中毒前后文件内容变化。

在确认做好隔离措施后(特别是检查是否已经断网),在虚拟机上把病毒样本压缩包解压缩并小心运行病毒程序。

**观察实验效果。**如:我们刚刚放置的文件已经被加密而乱码;桌面变了;弹出勒索对话框。如图。

病毒似乎并不能把已经运行的程序强制关闭,但这些打开的源文件已经不在桌面了,因此可以知道病毒并不直接修改内存。应该只是操作硬盘数据。

*解毒具体步骤*

打开wannakey-master,阅读readme.txt,由于wannacry会识别后缀名为txt的文件并标记为重要文件进行加密,因此readme的后缀名有可能被改成了其他形式,此时应该改回txt格式,采用记事本打开。

根据readme.txt中提供的信息,参照自己的windows版本,在bin中选择合适的exe进行运行:

运行wannakey.exe程序

多核系统使用wannakey_omp.exe

运行后会跳出cmd窗口(窗口可能会一闪而过,注意观察),如果显示秘钥已经成功生成(key has been generated),那么秘钥已经获取成功,此时前往恶意软件窗口,单击解密(decrypt)按钮,在后续的窗口里选择自己要解密的对象点击start,即可进行解密。

此时下方的目录表中会显示所有被解密了的文件的路径,可以根据路径进行核实和查看。

**恢复。**实验完后,恢复中毒前的状态。依次单击VMware Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。大约半分钟后就虚拟机就恢复到了中毒前的状态。

病毒逆向

病毒分析之WannaCry勒索病毒 - 『病毒分析区』 - 吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

[系统安全] 三十.WannaCry勒索病毒分析 (4)全网“最”详细的蠕虫传播机制解读-腾讯云开发者社区-腾讯云 (tencent.com)

[系统安全] 二十七.WannaCry勒索病毒分析 (3)蠕虫传播机制分析及IDA和OD逆向-腾讯云开发者社区-腾讯云 (tencent.com)

WannaCry利用Windows系统的SMB漏洞获取系统的最高权限,该工具通过恶意代码扫描开放445端口的Windows系统。WannaCry利用永恒之蓝漏洞进行网络端口扫描攻击,目标机器被成功攻陷后会从攻击机下载WannaCry蠕虫进行感染,并作为攻击机再次扫描互联网和局域网的其他机器,形成蠕虫感染大范围超快速扩散。

WannaCry勒索病毒主要行为是传播和勒索。
该病毒分为两个部分:

(1) 蠕虫部分,利用基于445端口的SMB漏洞MS17-010(永恒之蓝)进行病毒传播,并释放出勒索病毒。

(2) 勒索病毒部分,加密用户文件索要赎金。释放文件,包括加密器、解密器、说明文件、语言文件等;加密文件;设置桌面背景、窗体信息及付款账号等。

勒索病毒部分详细分析 (待修改)

CryptGenKey 函数生成随机加密会话密钥公钥/私钥对。密钥或密钥对的句柄在 phKey 中返回。

勒索主逻辑执行,先会导入一个存放在镜像中的RSA公钥,之后调用CryptGenKey生成一组RSA算法的Session key。之后将这组Key的公钥通过CryptExportKey导出,再写入到00000000.pky文件中。将Session key中的私钥用刚导入RSA公钥进行加密,存放在00000000.eky如下图所示:

img

如果遍历到的文件扩展名在欲加密的文件扩展名列表中,如下图所示:

img

则会将当前文件路径加入到文件操作列表中,在遍历文件结束后一并进行文件操作。代码如下图:

img

对于每个需要加密的文件,都会调用CryptGenRadom随机生成AES密钥,之后使用Session Key中的RSA公钥对AES密钥进行加密,存放在加密后的数据文件头中,之后将原始文件数据用该AES密钥进行加密。如下图所示:

img

整体加密流程,如下图所示:

img

因为病毒是生成加密过的用户文件后再删除原始文件,所以存在通过文件恢复类工具恢复原始未加密文件的可能。但是因为病毒对文件系统的修改操作过于频繁,导致被删除的原始文件数据块被覆盖,致使实际恢复效果有限。且随着系统持续运行,恢复类工具恢复数据的可能性会显著降低。

Wannakey的恢复

因为所有文件都是用随机生成的AES

WannaCry 在加密文件时会将加密密钥存储在内存中,而没有进行及时的清除。WannaKey 利用了这个漏洞,通过扫描内存中的数据,找到并提取出加密文件的解密密钥。

因此,WannaKey 能够解密 WannaCry 加密的文件,是因为它能够获取到加密文件的解密密钥。通过使用这个解密密钥,WannaKey 可以还原被 WannaCry 加密的文件,使受害者能够恢复其文件的原始状态。

病毒样本下载

计算机病毒样本分享_勒索病毒样本下载-CSDN博客

注意:为了安全起见,建议直接在虚拟机上上网搜索、下载,*在做好隔离措施前不要解压缩*。

参考资料

[如何安全地做电脑病毒实验-百度经验 (baidu.com)](https://jingyan.baidu.com/article/8cdccae9bacc6b705413cdf9.html#:~:text=恢复。 实验完后,恢复中毒前的状态。 依次单击VMware,Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。 大约半分钟后就虚拟机就恢复到了中毒前的状态。)

WannaCry - wiki

Wannakey

勒索病毒WannaCry深度技术分析—— 详解传播、感染和危害细节

在确认做好隔离措施后(特别是检查是否已经断网),在虚拟机上把病毒样本压缩包解压缩并小心运行病毒程序。

**观察实验效果。**如:我们刚刚放置的文件已经被加密而乱码;桌面变了;弹出勒索对话框。如图。

Wannacry

介绍

什么是 WannaCry 勒索软件攻击?

WannaCry 通过使用名为“EternalBlue”的漏洞利用进行传播。EternalBlue 仅适用于较旧的、未打补丁的 Microsoft Windows 版本,但运行此类版本的机器数量足以让 WannaCry 迅速传播开来。

*勒索软件是一种恶意软件,它通过加密锁住文件和数据,并索取赎金。

WannaCry 包含一个不寻常的函数:在执行之前,它将查询 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com。这个网站并不存在。

在 Hutchins 注册了这个域之后,WannaCry 的副本继续传播,但他们停止了执行。从本质上讲,一旦 WannaCry 开始收到来自 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com 的响应,它就会自行关闭。

为什么这能阻止攻击?

虽然不能确定 WannaCry 作者的动机,但据推测,WannaCry 中包含了这种域名查询功能的目的是让赎金软件能够检查它是否在沙盒内。

沙盒是一种反恶意软件工具。它是一个虚拟机,与所有其他系统和网络分开运行。它提供了一个安全的环境来执行不受信任的文件,看看它们是做什么的。

沙盒实际上没有连接到互联网。但沙盒的目的是尽可能地模仿真实的计算机,因此它们可能会对恶意软件针对特定域的查询产生一个虚假的响应。因此,恶意软件检查其是否在沙盒内的一种方法是向一个假的域名发送查询。如果它得到一个“真实的”响应(由沙盒生成),它可以认为自己是在沙盒中,并关闭自己,这样沙盒就不会检测到它是恶意的。

然而,如果恶意软件将其测试查询发送到一个硬编码的域名,那么如果有人注册了这个域名,它就会被欺骗,以为自己始终在沙盒中。这可能是 WannaCry 发生的情况:世界各地的 WannaCry 副本被欺骗,认为它们在沙盒内,并关闭自己。(从恶意软件作者的角度来看,一个更好的设计是查询一个每次都不同的随机域名,这样一来,从沙盒外的域名得到回应的几率就接近零了)。

事情起因

国庆假期结束后的第一节网络攻防课,老师安排测试wannacry病毒的任务。

详细过程

由于病毒具有破坏性,因此在本地直接运行是极其危险的行为,一旦控制不慎,不仅自己电脑的数据要被破坏和丢失,甚至可能导致电脑成为肉鸡,去攻击其他联网设备。
为了安全考虑,首先需要准备好病毒运行的环境。

  • 支持虚拟化技术的电脑
  • VMware Workstation Pro 软件
  • 操作系统安装包
  • 计算机病毒样本

虚拟机环境配置

系统:Windows XP
安装教程:
VMware虚拟机之WindowsXP系统超详细下载安装与使用教程
itellyou官网 - 系统镜像下载

这个教程非常详细,而且每一步都有图片,即使小白也能轻松使用。

本地文件如何与虚拟机交互

方法一:

因为VMware自带有工具Vmware Tools,能够直接实现主机和虚拟机之间的文件共享,同时支持自由拖拽文件进行上传和下载,因此最简单且好用的办法就是在虚拟机安装Vmware Tools。

附上官方文档:VMware Tools 用户指南 - VMware Tools 11.2.5

说明:由于上一步安装虚拟机后,我的XP虚拟机自动安装了Vmware Tools(所以显示重新安装vmware tool),因此以下内容并未具体尝试,可能以下安装步骤中会出现一些报错或bug,请酌情查看。

具体步骤如下:

windows:

在 Windows 上手动安装 VMware Tools

[如何在Windows操作系统安装VMwareTools_VMware服务-阿里云帮助中心 (aliyun.com)](https://help.aliyun.com/document_detail/412878.html#:~:text=安装VMware Tools(Windows操作系统) 1 Windows操作系统安装完成后,VMware vSphere控制台会提示“该虚拟机上未安装VMware Tools” 2 鼠标右击虚拟机,选择,。 7 选择 安装 ,开始安装。 8 正在安装,如下图所示。 更多项目)

linux:

打开linux虚拟机,在VMware菜单栏里点击虚拟机选项,找到安装VMware tools选项。

对linux系统的tool安装需要控制台执行,下面附上代码:

1
2
3
4
5
6
7
8
// 解压下载的安装包
tar -zxvf [文件名]
//进入解压完成的文件夹
cd [wen'jian'ji]
//查看文件夹下的文件
ls
//执行文件夹下的可执行文件。
sudo ./vmware-install.pl

完成以上步骤后重启系统。

方法二:(以下内容只是对该博客的简略,并非原创)

将本机文件复制到安装的虚拟机系统中的两种方法_vmware怎么将本地文件下载到虚拟机除了vmwaretool_灼_灼的博客-CSDN博客

进入虚拟机设置,选择硬盘,再点击映射

在打开的映射虚拟磁盘,选择要复制到虚拟机里的哪个盘,记得取消勾选“以只读模式打开文件”,然后点击确定。

点击本地资源管理器,选择已经映射的盘

如果没有出现需要格式化弹窗,就可以直接把文件复制到映射盘中了,然后在虚拟机里,对应的你刚才选中的虚拟机里的磁盘就可以看到复制的文件了。

注意:要是有提示格式化,然后有文件较为重要,建议不要格式化

复制完文件记得断开连接

隔离措施

做好隔离措施。此步骤非常重要!!!

注意:为了安全起见,强烈建议拔掉插在电脑上的U盘。

打开虚拟机操作系统上的网络与共享中心,单击已经连接因特网的本地连接,在弹出的对话框中单击“禁用“按钮。

点击VMware Workstation Pro软件上方的虚拟机菜单,选择设置,单击设置窗口左侧的网络适配器,之后在网络适配器设置的设备状态栏内将两个勾去掉。

如何安全地做电脑病毒实验?

单击上方的“选项”选项卡,在左侧列表框内确认共享文件夹已禁用。设置完后单击确定按钮。

如何安全地做电脑病毒实验?

拍摄快照。为了防止病毒发作导致虚拟机系统崩溃后恢复麻烦,建议在运行病毒程序前拍摄快照,如图所示。该步骤需要几分钟时间,注意观察虚拟机软件的左下角。

如何安全地做电脑病毒实验?

实战

**针对病毒特性,设好模型。**比如:如果要运行勒索病毒,则需在虚拟机桌面上象征新地放置几个文本文件,观察中毒前后文件内容变化。

在确认做好隔离措施后(特别是检查是否已经断网),在虚拟机上把病毒样本压缩包解压缩并小心运行病毒程序。

**观察实验效果。**如:我们刚刚放置的文件已经被加密而乱码;桌面变了;弹出勒索对话框。如图。

病毒似乎并不能把已经运行的程序强制关闭,但这些打开的源文件已经不在桌面了,因此可以知道病毒并不直接修改内存。应该只是操作硬盘数据。

*解毒具体步骤*

打开wannakey-master,阅读readme.txt,由于wannacry会识别后缀名为txt的文件并标记为重要文件进行加密,因此readme的后缀名有可能被改成了其他形式,此时应该改回txt格式,采用记事本打开。

根据readme.txt中提供的信息,参照自己的windows版本,在bin中选择合适的exe进行运行:

运行wannakey.exe程序

多核系统使用wannakey_omp.exe

运行后会跳出cmd窗口(窗口可能会一闪而过,注意观察),如果显示秘钥已经成功生成(key has been generated),那么秘钥已经获取成功,此时前往恶意软件窗口,单击解密(decrypt)按钮,在后续的窗口里选择自己要解密的对象点击start,即可进行解密。

此时下方的目录表中会显示所有被解密了的文件的路径,可以根据路径进行核实和查看。

**恢复。**实验完后,恢复中毒前的状态。依次单击VMware Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。大约半分钟后就虚拟机就恢复到了中毒前的状态。

病毒逆向

病毒分析之WannaCry勒索病毒 - 『病毒分析区』 - 吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

[系统安全] 三十.WannaCry勒索病毒分析 (4)全网“最”详细的蠕虫传播机制解读-腾讯云开发者社区-腾讯云 (tencent.com)

[系统安全] 二十七.WannaCry勒索病毒分析 (3)蠕虫传播机制分析及IDA和OD逆向-腾讯云开发者社区-腾讯云 (tencent.com)

WannaCry利用Windows系统的SMB漏洞获取系统的最高权限,该工具通过恶意代码扫描开放445端口的Windows系统。WannaCry利用永恒之蓝漏洞进行网络端口扫描攻击,目标机器被成功攻陷后会从攻击机下载WannaCry蠕虫进行感染,并作为攻击机再次扫描互联网和局域网的其他机器,形成蠕虫感染大范围超快速扩散。

WannaCry勒索病毒主要行为是传播和勒索。
该病毒分为两个部分:

(1) 蠕虫部分,利用基于445端口的SMB漏洞MS17-010(永恒之蓝)进行病毒传播,并释放出勒索病毒。

(2) 勒索病毒部分,加密用户文件索要赎金。释放文件,包括加密器、解密器、说明文件、语言文件等;加密文件;设置桌面背景、窗体信息及付款账号等。

勒索病毒部分详细分析 (待修改)

CryptGenKey 函数生成随机加密会话密钥公钥/私钥对。密钥或密钥对的句柄在 phKey 中返回。

勒索主逻辑执行,先会导入一个存放在镜像中的RSA公钥,之后调用CryptGenKey生成一组RSA算法的Session key。之后将这组Key的公钥通过CryptExportKey导出,再写入到00000000.pky文件中。将Session key中的私钥用刚导入RSA公钥进行加密,存放在00000000.eky如下图所示:

img

如果遍历到的文件扩展名在欲加密的文件扩展名列表中,如下图所示:

img

则会将当前文件路径加入到文件操作列表中,在遍历文件结束后一并进行文件操作。代码如下图:

img

对于每个需要加密的文件,都会调用CryptGenRadom随机生成AES密钥,之后使用Session Key中的RSA公钥对AES密钥进行加密,存放在加密后的数据文件头中,之后将原始文件数据用该AES密钥进行加密。如下图所示:

img

整体加密流程,如下图所示:

img

因为病毒是生成加密过的用户文件后再删除原始文件,所以存在通过文件恢复类工具恢复原始未加密文件的可能。但是因为病毒对文件系统的修改操作过于频繁,导致被删除的原始文件数据块被覆盖,致使实际恢复效果有限。且随着系统持续运行,恢复类工具恢复数据的可能性会显著降低。

Wannakey的恢复

因为所有文件都是用随机生成的AES

WannaCry 在加密文件时会将加密密钥存储在内存中,而没有进行及时的清除。WannaKey 利用了这个漏洞,通过扫描内存中的数据,找到并提取出加密文件的解密密钥。

因此,WannaKey 能够解密 WannaCry 加密的文件,是因为它能够获取到加密文件的解密密钥。通过使用这个解密密钥,WannaKey 可以还原被 WannaCry 加密的文件,使受害者能够恢复其文件的原始状态。

病毒样本下载

计算机病毒样本分享_勒索病毒样本下载-CSDN博客

注意:为了安全起见,建议直接在虚拟机上上网搜索、下载,*在做好隔离措施前不要解压缩*。

参考资料

[如何安全地做电脑病毒实验-百度经验 (baidu.com)](https://jingyan.baidu.com/article/8cdccae9bacc6b705413cdf9.html#:~:text=恢复。 实验完后,恢复中毒前的状态。 依次单击VMware,Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。 大约半分钟后就虚拟机就恢复到了中毒前的状态。)

WannaCry - wiki

Wannakey

勒索病毒WannaCry深度技术分析—— 详解传播、感染和危害细节

Wannacry

介绍

什么是 WannaCry 勒索软件攻击?

WannaCry 通过使用名为“EternalBlue”的漏洞利用进行传播。EternalBlue 仅适用于较旧的、未打补丁的 Microsoft Windows 版本,但运行此类版本的机器数量足以让 WannaCry 迅速传播开来。

*勒索软件是一种恶意软件,它通过加密锁住文件和数据,并索取赎金。

WannaCry 包含一个不寻常的函数:在执行之前,它将查询 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com。这个网站并不存在。

在 Hutchins 注册了这个域之后,WannaCry 的副本继续传播,但他们停止了执行。从本质上讲,一旦 WannaCry 开始收到来自 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com 的响应,它就会自行关闭。

为什么这能阻止攻击?

虽然不能确定 WannaCry 作者的动机,但据推测,WannaCry 中包含了这种域名查询功能的目的是让赎金软件能够检查它是否在沙盒内。

沙盒是一种反恶意软件工具。它是一个虚拟机,与所有其他系统和网络分开运行。它提供了一个安全的环境来执行不受信任的文件,看看它们是做什么的。

沙盒实际上没有连接到互联网。但沙盒的目的是尽可能地模仿真实的计算机,因此它们可能会对恶意软件针对特定域的查询产生一个虚假的响应。因此,恶意软件检查其是否在沙盒内的一种方法是向一个假的域名发送查询。如果它得到一个“真实的”响应(由沙盒生成),它可以认为自己是在沙盒中,并关闭自己,这样沙盒就不会检测到它是恶意的。

然而,如果恶意软件将其测试查询发送到一个硬编码的域名,那么如果有人注册了这个域名,它就会被欺骗,以为自己始终在沙盒中。这可能是 WannaCry 发生的情况:世界各地的 WannaCry 副本被欺骗,认为它们在沙盒内,并关闭自己。(从恶意软件作者的角度来看,一个更好的设计是查询一个每次都不同的随机域名,这样一来,从沙盒外的域名得到回应的几率就接近零了)。

事情起因

国庆假期结束后的第一节网络攻防课,老师安排测试wannacry病毒的任务。

详细过程

由于病毒具有破坏性,因此在本地直接运行是极其危险的行为,一旦控制不慎,不仅自己电脑的数据要被破坏和丢失,甚至可能导致电脑成为肉鸡,去攻击其他联网设备。
为了安全考虑,首先需要准备好病毒运行的环境。

  • 支持虚拟化技术的电脑
  • VMware Workstation Pro 软件
  • 操作系统安装包
  • 计算机病毒样本

虚拟机环境配置

系统:Windows XP
安装教程:
VMware虚拟机之WindowsXP系统超详细下载安装与使用教程
itellyou官网 - 系统镜像下载

这个教程非常详细,而且每一步都有图片,即使小白也能轻松使用。

本地文件如何与虚拟机交互

方法一:

因为VMware自带有工具Vmware Tools,能够直接实现主机和虚拟机之间的文件共享,同时支持自由拖拽文件进行上传和下载,因此最简单且好用的办法就是在虚拟机安装Vmware Tools。

附上官方文档:VMware Tools 用户指南 - VMware Tools 11.2.5

说明:由于上一步安装虚拟机后,我的XP虚拟机自动安装了Vmware Tools(所以显示重新安装vmware tool),因此以下内容并未具体尝试,可能以下安装步骤中会出现一些报错或bug,请酌情查看。

具体步骤如下:

windows:

在 Windows 上手动安装 VMware Tools

[如何在Windows操作系统安装VMwareTools_VMware服务-阿里云帮助中心 (aliyun.com)](https://help.aliyun.com/document_detail/412878.html#:~:text=安装VMware Tools(Windows操作系统) 1 Windows操作系统安装完成后,VMware vSphere控制台会提示“该虚拟机上未安装VMware Tools” 2 鼠标右击虚拟机,选择,。 7 选择 安装 ,开始安装。 8 正在安装,如下图所示。 更多项目)

linux:

打开linux虚拟机,在VMware菜单栏里点击虚拟机选项,找到安装VMware tools选项。

对linux系统的tool安装需要控制台执行,下面附上代码:

1
2
3
4
5
6
7
8
// 解压下载的安装包
tar -zxvf [文件名]
//进入解压完成的文件夹
cd [wen'jian'ji]
//查看文件夹下的文件
ls
//执行文件夹下的可执行文件。
sudo ./vmware-install.pl

完成以上步骤后重启系统。

方法二:(以下内容只是对该博客的简略,并非原创)

将本机文件复制到安装的虚拟机系统中的两种方法_vmware怎么将本地文件下载到虚拟机除了vmwaretool_灼_灼的博客-CSDN博客

进入虚拟机设置,选择硬盘,再点击映射

在打开的映射虚拟磁盘,选择要复制到虚拟机里的哪个盘,记得取消勾选“以只读模式打开文件”,然后点击确定。

点击本地资源管理器,选择已经映射的盘

如果没有出现需要格式化弹窗,就可以直接把文件复制到映射盘中了,然后在虚拟机里,对应的你刚才选中的虚拟机里的磁盘就可以看到复制的文件了。

注意:要是有提示格式化,然后有文件较为重要,建议不要格式化

复制完文件记得断开连接

隔离措施

做好隔离措施。此步骤非常重要!!!

注意:为了安全起见,强烈建议拔掉插在电脑上的U盘。

打开虚拟机操作系统上的网络与共享中心,单击已经连接因特网的本地连接,在弹出的对话框中单击“禁用“按钮。

点击VMware Workstation Pro软件上方的虚拟机菜单,选择设置,单击设置窗口左侧的网络适配器,之后在网络适配器设置的设备状态栏内将两个勾去掉。

如何安全地做电脑病毒实验?

单击上方的“选项”选项卡,在左侧列表框内确认共享文件夹已禁用。设置完后单击确定按钮。

如何安全地做电脑病毒实验?

拍摄快照。为了防止病毒发作导致虚拟机系统崩溃后恢复麻烦,建议在运行病毒程序前拍摄快照,如图所示。该步骤需要几分钟时间,注意观察虚拟机软件的左下角。

如何安全地做电脑病毒实验?

实战

**针对病毒特性,设好模型。**比如:如果要运行勒索病毒,则需在虚拟机桌面上象征新地放置几个文本文件,观察中毒前后文件内容变化。

在确认做好隔离措施后(特别是检查是否已经断网),在虚拟机上把病毒样本压缩包解压缩并小心运行病毒程序。

**观察实验效果。**如:我们刚刚放置的文件已经被加密而乱码;桌面变了;弹出勒索对话框。如图。

病毒似乎并不能把已经运行的程序强制关闭,但这些打开的源文件已经不在桌面了,因此可以知道病毒并不直接修改内存。应该只是操作硬盘数据。

*解毒具体步骤*

打开wannakey-master,阅读readme.txt,由于wannacry会识别后缀名为txt的文件并标记为重要文件进行加密,因此readme的后缀名有可能被改成了其他形式,此时应该改回txt格式,采用记事本打开。

根据readme.txt中提供的信息,参照自己的windows版本,在bin中选择合适的exe进行运行:

运行wannakey.exe程序

多核系统使用wannakey_omp.exe

运行后会跳出cmd窗口(窗口可能会一闪而过,注意观察),如果显示秘钥已经成功生成(key has been generated),那么秘钥已经获取成功,此时前往恶意软件窗口,单击解密(decrypt)按钮,在后续的窗口里选择自己要解密的对象点击start,即可进行解密。

此时下方的目录表中会显示所有被解密了的文件的路径,可以根据路径进行核实和查看。

**恢复。**实验完后,恢复中毒前的状态。依次单击VMware Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。大约半分钟后就虚拟机就恢复到了中毒前的状态。

病毒逆向

病毒分析之WannaCry勒索病毒 - 『病毒分析区』 - 吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

[系统安全] 三十.WannaCry勒索病毒分析 (4)全网“最”详细的蠕虫传播机制解读-腾讯云开发者社区-腾讯云 (tencent.com)

[系统安全] 二十七.WannaCry勒索病毒分析 (3)蠕虫传播机制分析及IDA和OD逆向-腾讯云开发者社区-腾讯云 (tencent.com)

WannaCry利用Windows系统的SMB漏洞获取系统的最高权限,该工具通过恶意代码扫描开放445端口的Windows系统。WannaCry利用永恒之蓝漏洞进行网络端口扫描攻击,目标机器被成功攻陷后会从攻击机下载WannaCry蠕虫进行感染,并作为攻击机再次扫描互联网和局域网的其他机器,形成蠕虫感染大范围超快速扩散。

WannaCry勒索病毒主要行为是传播和勒索。
该病毒分为两个部分:

(1) 蠕虫部分,利用基于445端口的SMB漏洞MS17-010(永恒之蓝)进行病毒传播,并释放出勒索病毒。

(2) 勒索病毒部分,加密用户文件索要赎金。释放文件,包括加密器、解密器、说明文件、语言文件等;加密文件;设置桌面背景、窗体信息及付款账号等。

勒索病毒部分详细分析 (待修改)

CryptGenKey 函数生成随机加密会话密钥公钥/私钥对。密钥或密钥对的句柄在 phKey 中返回。

勒索主逻辑执行,先会导入一个存放在镜像中的RSA公钥,之后调用CryptGenKey生成一组RSA算法的Session key。之后将这组Key的公钥通过CryptExportKey导出,再写入到00000000.pky文件中。将Session key中的私钥用刚导入RSA公钥进行加密,存放在00000000.eky如下图所示:

img

如果遍历到的文件扩展名在欲加密的文件扩展名列表中,如下图所示:

img

则会将当前文件路径加入到文件操作列表中,在遍历文件结束后一并进行文件操作。代码如下图:

img

对于每个需要加密的文件,都会调用CryptGenRadom随机生成AES密钥,之后使用Session Key中的RSA公钥对AES密钥进行加密,存放在加密后的数据文件头中,之后将原始文件数据用该AES密钥进行加密。如下图所示:

img

整体加密流程,如下图所示:

img

因为病毒是生成加密过的用户文件后再删除原始文件,所以存在通过文件恢复类工具恢复原始未加密文件的可能。但是因为病毒对文件系统的修改操作过于频繁,导致被删除的原始文件数据块被覆盖,致使实际恢复效果有限。且随着系统持续运行,恢复类工具恢复数据的可能性会显著降低。

Wannakey的恢复

因为所有文件都是用随机生成的AES

WannaCry 在加密文件时会将加密密钥存储在内存中,而没有进行及时的清除。WannaKey 利用了这个漏洞,通过扫描内存中的数据,找到并提取出加密文件的解密密钥。

因此,WannaKey 能够解密 WannaCry 加密的文件,是因为它能够获取到加密文件的解密密钥。通过使用这个解密密钥,WannaKey 可以还原被 WannaCry 加密的文件,使受害者能够恢复其文件的原始状态。

病毒样本下载

计算机病毒样本分享_勒索病毒样本下载-CSDN博客

注意:为了安全起见,建议直接在虚拟机上上网搜索、下载,*在做好隔离措施前不要解压缩*。

参考资料

[如何安全地做电脑病毒实验-百度经验 (baidu.com)](https://jingyan.baidu.com/article/8cdccae9bacc6b705413cdf9.html#:~:text=恢复。 实验完后,恢复中毒前的状态。 依次单击VMware,Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。 大约半分钟后就虚拟机就恢复到了中毒前的状态。)

WannaCry - wiki

Wannakey

勒索病毒WannaCry深度技术分析—— 详解传播、感染和危害细节

病毒似乎并不能把已经运行的程序强制关闭,但这些打开的源文件已经不在桌面了,因此可以知道病毒并不直接修改内存。应该只是操作硬盘数据。

*解毒具体步骤*

打开wannakey-master,阅读readme.txt,由于wannacry会识别后缀名为txt的文件并标记为重要文件进行加密,因此readme的后缀名有可能被改成了其他形式,此时应该改回txt格式,采用记事本打开。

根据readme.txt中提供的信息,参照自己的windows版本,在bin中选择合适的exe进行运行:

运行wannakey.exe程序

多核系统使用wannakey_omp.exe

运行后会跳出cmd窗口(窗口可能会一闪而过,注意观察),如果显示秘钥已经成功生成(key has been generated),那么秘钥已经获取成功,此时前往恶意软件窗口,单击解密(decrypt)按钮,在后续的窗口里选择自己要解密的对象点击start,即可进行解密。

此时下方的目录表中会显示所有被解密了的文件的路径,可以根据路径进行核实和查看。

**恢复。**实验完后,恢复中毒前的状态。依次单击VMware Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。大约半分钟后就虚拟机就恢复到了中毒前的状态。

病毒逆向

病毒分析之WannaCry勒索病毒 - 『病毒分析区』 - 吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

[系统安全] 三十.WannaCry勒索病毒分析 (4)全网“最”详细的蠕虫传播机制解读-腾讯云开发者社区-腾讯云 (tencent.com)

[系统安全] 二十七.WannaCry勒索病毒分析 (3)蠕虫传播机制分析及IDA和OD逆向-腾讯云开发者社区-腾讯云 (tencent.com)

WannaCry利用Windows系统的SMB漏洞获取系统的最高权限,该工具通过恶意代码扫描开放445端口的Windows系统。WannaCry利用永恒之蓝漏洞进行网络端口扫描攻击,目标机器被成功攻陷后会从攻击机下载WannaCry蠕虫进行感染,并作为攻击机再次扫描互联网和局域网的其他机器,形成蠕虫感染大范围超快速扩散。

WannaCry勒索病毒主要行为是传播和勒索。
该病毒分为两个部分:

(1) 蠕虫部分,利用基于445端口的SMB漏洞MS17-010(永恒之蓝)进行病毒传播,并释放出勒索病毒。

(2) 勒索病毒部分,加密用户文件索要赎金。释放文件,包括加密器、解密器、说明文件、语言文件等;加密文件;设置桌面背景、窗体信息及付款账号等。

勒索病毒部分详细分析 (待修改)

CryptGenKey 函数生成随机加密会话密钥公钥/私钥对。密钥或密钥对的句柄在 phKey 中返回。

勒索主逻辑执行,先会导入一个存放在镜像中的RSA公钥,之后调用CryptGenKey生成一组RSA算法的Session key。之后将这组Key的公钥通过CryptExportKey导出,再写入到00000000.pky文件中。将Session key中的私钥用刚导入RSA公钥进行加密,存放在00000000.eky如下图所示:

Wannacry

介绍

什么是 WannaCry 勒索软件攻击?

WannaCry 通过使用名为“EternalBlue”的漏洞利用进行传播。EternalBlue 仅适用于较旧的、未打补丁的 Microsoft Windows 版本,但运行此类版本的机器数量足以让 WannaCry 迅速传播开来。

*勒索软件是一种恶意软件,它通过加密锁住文件和数据,并索取赎金。

WannaCry 包含一个不寻常的函数:在执行之前,它将查询 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com。这个网站并不存在。

在 Hutchins 注册了这个域之后,WannaCry 的副本继续传播,但他们停止了执行。从本质上讲,一旦 WannaCry 开始收到来自 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com 的响应,它就会自行关闭。

为什么这能阻止攻击?

虽然不能确定 WannaCry 作者的动机,但据推测,WannaCry 中包含了这种域名查询功能的目的是让赎金软件能够检查它是否在沙盒内。

沙盒是一种反恶意软件工具。它是一个虚拟机,与所有其他系统和网络分开运行。它提供了一个安全的环境来执行不受信任的文件,看看它们是做什么的。

沙盒实际上没有连接到互联网。但沙盒的目的是尽可能地模仿真实的计算机,因此它们可能会对恶意软件针对特定域的查询产生一个虚假的响应。因此,恶意软件检查其是否在沙盒内的一种方法是向一个假的域名发送查询。如果它得到一个“真实的”响应(由沙盒生成),它可以认为自己是在沙盒中,并关闭自己,这样沙盒就不会检测到它是恶意的。

然而,如果恶意软件将其测试查询发送到一个硬编码的域名,那么如果有人注册了这个域名,它就会被欺骗,以为自己始终在沙盒中。这可能是 WannaCry 发生的情况:世界各地的 WannaCry 副本被欺骗,认为它们在沙盒内,并关闭自己。(从恶意软件作者的角度来看,一个更好的设计是查询一个每次都不同的随机域名,这样一来,从沙盒外的域名得到回应的几率就接近零了)。

事情起因

国庆假期结束后的第一节网络攻防课,老师安排测试wannacry病毒的任务。

详细过程

由于病毒具有破坏性,因此在本地直接运行是极其危险的行为,一旦控制不慎,不仅自己电脑的数据要被破坏和丢失,甚至可能导致电脑成为肉鸡,去攻击其他联网设备。
为了安全考虑,首先需要准备好病毒运行的环境。

  • 支持虚拟化技术的电脑
  • VMware Workstation Pro 软件
  • 操作系统安装包
  • 计算机病毒样本

虚拟机环境配置

系统:Windows XP
安装教程:
VMware虚拟机之WindowsXP系统超详细下载安装与使用教程
itellyou官网 - 系统镜像下载

这个教程非常详细,而且每一步都有图片,即使小白也能轻松使用。

本地文件如何与虚拟机交互

方法一:

因为VMware自带有工具Vmware Tools,能够直接实现主机和虚拟机之间的文件共享,同时支持自由拖拽文件进行上传和下载,因此最简单且好用的办法就是在虚拟机安装Vmware Tools。

附上官方文档:VMware Tools 用户指南 - VMware Tools 11.2.5

说明:由于上一步安装虚拟机后,我的XP虚拟机自动安装了Vmware Tools(所以显示重新安装vmware tool),因此以下内容并未具体尝试,可能以下安装步骤中会出现一些报错或bug,请酌情查看。

具体步骤如下:

windows:

在 Windows 上手动安装 VMware Tools

[如何在Windows操作系统安装VMwareTools_VMware服务-阿里云帮助中心 (aliyun.com)](https://help.aliyun.com/document_detail/412878.html#:~:text=安装VMware Tools(Windows操作系统) 1 Windows操作系统安装完成后,VMware vSphere控制台会提示“该虚拟机上未安装VMware Tools” 2 鼠标右击虚拟机,选择,。 7 选择 安装 ,开始安装。 8 正在安装,如下图所示。 更多项目)

linux:

打开linux虚拟机,在VMware菜单栏里点击虚拟机选项,找到安装VMware tools选项。

对linux系统的tool安装需要控制台执行,下面附上代码:

1
2
3
4
5
6
7
8
// 解压下载的安装包
tar -zxvf [文件名]
//进入解压完成的文件夹
cd [wen'jian'ji]
//查看文件夹下的文件
ls
//执行文件夹下的可执行文件。
sudo ./vmware-install.pl

完成以上步骤后重启系统。

方法二:(以下内容只是对该博客的简略,并非原创)

将本机文件复制到安装的虚拟机系统中的两种方法_vmware怎么将本地文件下载到虚拟机除了vmwaretool_灼_灼的博客-CSDN博客

进入虚拟机设置,选择硬盘,再点击映射

在打开的映射虚拟磁盘,选择要复制到虚拟机里的哪个盘,记得取消勾选“以只读模式打开文件”,然后点击确定。

点击本地资源管理器,选择已经映射的盘

如果没有出现需要格式化弹窗,就可以直接把文件复制到映射盘中了,然后在虚拟机里,对应的你刚才选中的虚拟机里的磁盘就可以看到复制的文件了。

注意:要是有提示格式化,然后有文件较为重要,建议不要格式化

复制完文件记得断开连接

隔离措施

做好隔离措施。此步骤非常重要!!!

注意:为了安全起见,强烈建议拔掉插在电脑上的U盘。

打开虚拟机操作系统上的网络与共享中心,单击已经连接因特网的本地连接,在弹出的对话框中单击“禁用“按钮。

点击VMware Workstation Pro软件上方的虚拟机菜单,选择设置,单击设置窗口左侧的网络适配器,之后在网络适配器设置的设备状态栏内将两个勾去掉。

如何安全地做电脑病毒实验?

单击上方的“选项”选项卡,在左侧列表框内确认共享文件夹已禁用。设置完后单击确定按钮。

如何安全地做电脑病毒实验?

拍摄快照。为了防止病毒发作导致虚拟机系统崩溃后恢复麻烦,建议在运行病毒程序前拍摄快照,如图所示。该步骤需要几分钟时间,注意观察虚拟机软件的左下角。

如何安全地做电脑病毒实验?

实战

**针对病毒特性,设好模型。**比如:如果要运行勒索病毒,则需在虚拟机桌面上象征新地放置几个文本文件,观察中毒前后文件内容变化。

在确认做好隔离措施后(特别是检查是否已经断网),在虚拟机上把病毒样本压缩包解压缩并小心运行病毒程序。

**观察实验效果。**如:我们刚刚放置的文件已经被加密而乱码;桌面变了;弹出勒索对话框。如图。

病毒似乎并不能把已经运行的程序强制关闭,但这些打开的源文件已经不在桌面了,因此可以知道病毒并不直接修改内存。应该只是操作硬盘数据。

*解毒具体步骤*

打开wannakey-master,阅读readme.txt,由于wannacry会识别后缀名为txt的文件并标记为重要文件进行加密,因此readme的后缀名有可能被改成了其他形式,此时应该改回txt格式,采用记事本打开。

根据readme.txt中提供的信息,参照自己的windows版本,在bin中选择合适的exe进行运行:

运行wannakey.exe程序

多核系统使用wannakey_omp.exe

运行后会跳出cmd窗口(窗口可能会一闪而过,注意观察),如果显示秘钥已经成功生成(key has been generated),那么秘钥已经获取成功,此时前往恶意软件窗口,单击解密(decrypt)按钮,在后续的窗口里选择自己要解密的对象点击start,即可进行解密。

此时下方的目录表中会显示所有被解密了的文件的路径,可以根据路径进行核实和查看。

**恢复。**实验完后,恢复中毒前的状态。依次单击VMware Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。大约半分钟后就虚拟机就恢复到了中毒前的状态。

病毒逆向

病毒分析之WannaCry勒索病毒 - 『病毒分析区』 - 吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

[系统安全] 三十.WannaCry勒索病毒分析 (4)全网“最”详细的蠕虫传播机制解读-腾讯云开发者社区-腾讯云 (tencent.com)

[系统安全] 二十七.WannaCry勒索病毒分析 (3)蠕虫传播机制分析及IDA和OD逆向-腾讯云开发者社区-腾讯云 (tencent.com)

WannaCry利用Windows系统的SMB漏洞获取系统的最高权限,该工具通过恶意代码扫描开放445端口的Windows系统。WannaCry利用永恒之蓝漏洞进行网络端口扫描攻击,目标机器被成功攻陷后会从攻击机下载WannaCry蠕虫进行感染,并作为攻击机再次扫描互联网和局域网的其他机器,形成蠕虫感染大范围超快速扩散。

WannaCry勒索病毒主要行为是传播和勒索。
该病毒分为两个部分:

(1) 蠕虫部分,利用基于445端口的SMB漏洞MS17-010(永恒之蓝)进行病毒传播,并释放出勒索病毒。

(2) 勒索病毒部分,加密用户文件索要赎金。释放文件,包括加密器、解密器、说明文件、语言文件等;加密文件;设置桌面背景、窗体信息及付款账号等。

勒索病毒部分详细分析 (待修改)

CryptGenKey 函数生成随机加密会话密钥公钥/私钥对。密钥或密钥对的句柄在 phKey 中返回。

勒索主逻辑执行,先会导入一个存放在镜像中的RSA公钥,之后调用CryptGenKey生成一组RSA算法的Session key。之后将这组Key的公钥通过CryptExportKey导出,再写入到00000000.pky文件中。将Session key中的私钥用刚导入RSA公钥进行加密,存放在00000000.eky如下图所示:

img

如果遍历到的文件扩展名在欲加密的文件扩展名列表中,如下图所示:

img

则会将当前文件路径加入到文件操作列表中,在遍历文件结束后一并进行文件操作。代码如下图:

img

对于每个需要加密的文件,都会调用CryptGenRadom随机生成AES密钥,之后使用Session Key中的RSA公钥对AES密钥进行加密,存放在加密后的数据文件头中,之后将原始文件数据用该AES密钥进行加密。如下图所示:

img

整体加密流程,如下图所示:

img

因为病毒是生成加密过的用户文件后再删除原始文件,所以存在通过文件恢复类工具恢复原始未加密文件的可能。但是因为病毒对文件系统的修改操作过于频繁,导致被删除的原始文件数据块被覆盖,致使实际恢复效果有限。且随着系统持续运行,恢复类工具恢复数据的可能性会显著降低。

Wannakey的恢复

因为所有文件都是用随机生成的AES

WannaCry 在加密文件时会将加密密钥存储在内存中,而没有进行及时的清除。WannaKey 利用了这个漏洞,通过扫描内存中的数据,找到并提取出加密文件的解密密钥。

因此,WannaKey 能够解密 WannaCry 加密的文件,是因为它能够获取到加密文件的解密密钥。通过使用这个解密密钥,WannaKey 可以还原被 WannaCry 加密的文件,使受害者能够恢复其文件的原始状态。

病毒样本下载

计算机病毒样本分享_勒索病毒样本下载-CSDN博客

注意:为了安全起见,建议直接在虚拟机上上网搜索、下载,*在做好隔离措施前不要解压缩*。

参考资料

[如何安全地做电脑病毒实验-百度经验 (baidu.com)](https://jingyan.baidu.com/article/8cdccae9bacc6b705413cdf9.html#:~:text=恢复。 实验完后,恢复中毒前的状态。 依次单击VMware,Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。 大约半分钟后就虚拟机就恢复到了中毒前的状态。)

WannaCry - wiki

Wannakey

勒索病毒WannaCry深度技术分析—— 详解传播、感染和危害细节

如果遍历到的文件扩展名在欲加密的文件扩展名列表中,如下图所示:

Wannacry

介绍

什么是 WannaCry 勒索软件攻击?

WannaCry 通过使用名为“EternalBlue”的漏洞利用进行传播。EternalBlue 仅适用于较旧的、未打补丁的 Microsoft Windows 版本,但运行此类版本的机器数量足以让 WannaCry 迅速传播开来。

*勒索软件是一种恶意软件,它通过加密锁住文件和数据,并索取赎金。

WannaCry 包含一个不寻常的函数:在执行之前,它将查询 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com。这个网站并不存在。

在 Hutchins 注册了这个域之后,WannaCry 的副本继续传播,但他们停止了执行。从本质上讲,一旦 WannaCry 开始收到来自 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com 的响应,它就会自行关闭。

为什么这能阻止攻击?

虽然不能确定 WannaCry 作者的动机,但据推测,WannaCry 中包含了这种域名查询功能的目的是让赎金软件能够检查它是否在沙盒内。

沙盒是一种反恶意软件工具。它是一个虚拟机,与所有其他系统和网络分开运行。它提供了一个安全的环境来执行不受信任的文件,看看它们是做什么的。

沙盒实际上没有连接到互联网。但沙盒的目的是尽可能地模仿真实的计算机,因此它们可能会对恶意软件针对特定域的查询产生一个虚假的响应。因此,恶意软件检查其是否在沙盒内的一种方法是向一个假的域名发送查询。如果它得到一个“真实的”响应(由沙盒生成),它可以认为自己是在沙盒中,并关闭自己,这样沙盒就不会检测到它是恶意的。

然而,如果恶意软件将其测试查询发送到一个硬编码的域名,那么如果有人注册了这个域名,它就会被欺骗,以为自己始终在沙盒中。这可能是 WannaCry 发生的情况:世界各地的 WannaCry 副本被欺骗,认为它们在沙盒内,并关闭自己。(从恶意软件作者的角度来看,一个更好的设计是查询一个每次都不同的随机域名,这样一来,从沙盒外的域名得到回应的几率就接近零了)。

事情起因

国庆假期结束后的第一节网络攻防课,老师安排测试wannacry病毒的任务。

详细过程

由于病毒具有破坏性,因此在本地直接运行是极其危险的行为,一旦控制不慎,不仅自己电脑的数据要被破坏和丢失,甚至可能导致电脑成为肉鸡,去攻击其他联网设备。
为了安全考虑,首先需要准备好病毒运行的环境。

  • 支持虚拟化技术的电脑
  • VMware Workstation Pro 软件
  • 操作系统安装包
  • 计算机病毒样本

虚拟机环境配置

系统:Windows XP
安装教程:
VMware虚拟机之WindowsXP系统超详细下载安装与使用教程
itellyou官网 - 系统镜像下载

这个教程非常详细,而且每一步都有图片,即使小白也能轻松使用。

本地文件如何与虚拟机交互

方法一:

因为VMware自带有工具Vmware Tools,能够直接实现主机和虚拟机之间的文件共享,同时支持自由拖拽文件进行上传和下载,因此最简单且好用的办法就是在虚拟机安装Vmware Tools。

附上官方文档:VMware Tools 用户指南 - VMware Tools 11.2.5

说明:由于上一步安装虚拟机后,我的XP虚拟机自动安装了Vmware Tools(所以显示重新安装vmware tool),因此以下内容并未具体尝试,可能以下安装步骤中会出现一些报错或bug,请酌情查看。

具体步骤如下:

windows:

在 Windows 上手动安装 VMware Tools

[如何在Windows操作系统安装VMwareTools_VMware服务-阿里云帮助中心 (aliyun.com)](https://help.aliyun.com/document_detail/412878.html#:~:text=安装VMware Tools(Windows操作系统) 1 Windows操作系统安装完成后,VMware vSphere控制台会提示“该虚拟机上未安装VMware Tools” 2 鼠标右击虚拟机,选择,。 7 选择 安装 ,开始安装。 8 正在安装,如下图所示。 更多项目)

linux:

打开linux虚拟机,在VMware菜单栏里点击虚拟机选项,找到安装VMware tools选项。

对linux系统的tool安装需要控制台执行,下面附上代码:

1
2
3
4
5
6
7
8
// 解压下载的安装包
tar -zxvf [文件名]
//进入解压完成的文件夹
cd [wen'jian'ji]
//查看文件夹下的文件
ls
//执行文件夹下的可执行文件。
sudo ./vmware-install.pl

完成以上步骤后重启系统。

方法二:(以下内容只是对该博客的简略,并非原创)

将本机文件复制到安装的虚拟机系统中的两种方法_vmware怎么将本地文件下载到虚拟机除了vmwaretool_灼_灼的博客-CSDN博客

进入虚拟机设置,选择硬盘,再点击映射

在打开的映射虚拟磁盘,选择要复制到虚拟机里的哪个盘,记得取消勾选“以只读模式打开文件”,然后点击确定。

点击本地资源管理器,选择已经映射的盘

如果没有出现需要格式化弹窗,就可以直接把文件复制到映射盘中了,然后在虚拟机里,对应的你刚才选中的虚拟机里的磁盘就可以看到复制的文件了。

注意:要是有提示格式化,然后有文件较为重要,建议不要格式化

复制完文件记得断开连接

隔离措施

做好隔离措施。此步骤非常重要!!!

注意:为了安全起见,强烈建议拔掉插在电脑上的U盘。

打开虚拟机操作系统上的网络与共享中心,单击已经连接因特网的本地连接,在弹出的对话框中单击“禁用“按钮。

点击VMware Workstation Pro软件上方的虚拟机菜单,选择设置,单击设置窗口左侧的网络适配器,之后在网络适配器设置的设备状态栏内将两个勾去掉。

如何安全地做电脑病毒实验?

单击上方的“选项”选项卡,在左侧列表框内确认共享文件夹已禁用。设置完后单击确定按钮。

如何安全地做电脑病毒实验?

拍摄快照。为了防止病毒发作导致虚拟机系统崩溃后恢复麻烦,建议在运行病毒程序前拍摄快照,如图所示。该步骤需要几分钟时间,注意观察虚拟机软件的左下角。

如何安全地做电脑病毒实验?

实战

**针对病毒特性,设好模型。**比如:如果要运行勒索病毒,则需在虚拟机桌面上象征新地放置几个文本文件,观察中毒前后文件内容变化。

在确认做好隔离措施后(特别是检查是否已经断网),在虚拟机上把病毒样本压缩包解压缩并小心运行病毒程序。

**观察实验效果。**如:我们刚刚放置的文件已经被加密而乱码;桌面变了;弹出勒索对话框。如图。

病毒似乎并不能把已经运行的程序强制关闭,但这些打开的源文件已经不在桌面了,因此可以知道病毒并不直接修改内存。应该只是操作硬盘数据。

*解毒具体步骤*

打开wannakey-master,阅读readme.txt,由于wannacry会识别后缀名为txt的文件并标记为重要文件进行加密,因此readme的后缀名有可能被改成了其他形式,此时应该改回txt格式,采用记事本打开。

根据readme.txt中提供的信息,参照自己的windows版本,在bin中选择合适的exe进行运行:

运行wannakey.exe程序

多核系统使用wannakey_omp.exe

运行后会跳出cmd窗口(窗口可能会一闪而过,注意观察),如果显示秘钥已经成功生成(key has been generated),那么秘钥已经获取成功,此时前往恶意软件窗口,单击解密(decrypt)按钮,在后续的窗口里选择自己要解密的对象点击start,即可进行解密。

此时下方的目录表中会显示所有被解密了的文件的路径,可以根据路径进行核实和查看。

**恢复。**实验完后,恢复中毒前的状态。依次单击VMware Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。大约半分钟后就虚拟机就恢复到了中毒前的状态。

病毒逆向

病毒分析之WannaCry勒索病毒 - 『病毒分析区』 - 吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

[系统安全] 三十.WannaCry勒索病毒分析 (4)全网“最”详细的蠕虫传播机制解读-腾讯云开发者社区-腾讯云 (tencent.com)

[系统安全] 二十七.WannaCry勒索病毒分析 (3)蠕虫传播机制分析及IDA和OD逆向-腾讯云开发者社区-腾讯云 (tencent.com)

WannaCry利用Windows系统的SMB漏洞获取系统的最高权限,该工具通过恶意代码扫描开放445端口的Windows系统。WannaCry利用永恒之蓝漏洞进行网络端口扫描攻击,目标机器被成功攻陷后会从攻击机下载WannaCry蠕虫进行感染,并作为攻击机再次扫描互联网和局域网的其他机器,形成蠕虫感染大范围超快速扩散。

WannaCry勒索病毒主要行为是传播和勒索。
该病毒分为两个部分:

(1) 蠕虫部分,利用基于445端口的SMB漏洞MS17-010(永恒之蓝)进行病毒传播,并释放出勒索病毒。

(2) 勒索病毒部分,加密用户文件索要赎金。释放文件,包括加密器、解密器、说明文件、语言文件等;加密文件;设置桌面背景、窗体信息及付款账号等。

勒索病毒部分详细分析 (待修改)

CryptGenKey 函数生成随机加密会话密钥公钥/私钥对。密钥或密钥对的句柄在 phKey 中返回。

勒索主逻辑执行,先会导入一个存放在镜像中的RSA公钥,之后调用CryptGenKey生成一组RSA算法的Session key。之后将这组Key的公钥通过CryptExportKey导出,再写入到00000000.pky文件中。将Session key中的私钥用刚导入RSA公钥进行加密,存放在00000000.eky如下图所示:

img

如果遍历到的文件扩展名在欲加密的文件扩展名列表中,如下图所示:

img

则会将当前文件路径加入到文件操作列表中,在遍历文件结束后一并进行文件操作。代码如下图:

img

对于每个需要加密的文件,都会调用CryptGenRadom随机生成AES密钥,之后使用Session Key中的RSA公钥对AES密钥进行加密,存放在加密后的数据文件头中,之后将原始文件数据用该AES密钥进行加密。如下图所示:

img

整体加密流程,如下图所示:

img

因为病毒是生成加密过的用户文件后再删除原始文件,所以存在通过文件恢复类工具恢复原始未加密文件的可能。但是因为病毒对文件系统的修改操作过于频繁,导致被删除的原始文件数据块被覆盖,致使实际恢复效果有限。且随着系统持续运行,恢复类工具恢复数据的可能性会显著降低。

Wannakey的恢复

因为所有文件都是用随机生成的AES

WannaCry 在加密文件时会将加密密钥存储在内存中,而没有进行及时的清除。WannaKey 利用了这个漏洞,通过扫描内存中的数据,找到并提取出加密文件的解密密钥。

因此,WannaKey 能够解密 WannaCry 加密的文件,是因为它能够获取到加密文件的解密密钥。通过使用这个解密密钥,WannaKey 可以还原被 WannaCry 加密的文件,使受害者能够恢复其文件的原始状态。

病毒样本下载

计算机病毒样本分享_勒索病毒样本下载-CSDN博客

注意:为了安全起见,建议直接在虚拟机上上网搜索、下载,*在做好隔离措施前不要解压缩*。

参考资料

[如何安全地做电脑病毒实验-百度经验 (baidu.com)](https://jingyan.baidu.com/article/8cdccae9bacc6b705413cdf9.html#:~:text=恢复。 实验完后,恢复中毒前的状态。 依次单击VMware,Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。 大约半分钟后就虚拟机就恢复到了中毒前的状态。)

WannaCry - wiki

Wannakey

勒索病毒WannaCry深度技术分析—— 详解传播、感染和危害细节

则会将当前文件路径加入到文件操作列表中,在遍历文件结束后一并进行文件操作。代码如下图:

Wannacry

介绍

什么是 WannaCry 勒索软件攻击?

WannaCry 通过使用名为“EternalBlue”的漏洞利用进行传播。EternalBlue 仅适用于较旧的、未打补丁的 Microsoft Windows 版本,但运行此类版本的机器数量足以让 WannaCry 迅速传播开来。

*勒索软件是一种恶意软件,它通过加密锁住文件和数据,并索取赎金。

WannaCry 包含一个不寻常的函数:在执行之前,它将查询 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com。这个网站并不存在。

在 Hutchins 注册了这个域之后,WannaCry 的副本继续传播,但他们停止了执行。从本质上讲,一旦 WannaCry 开始收到来自 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com 的响应,它就会自行关闭。

为什么这能阻止攻击?

虽然不能确定 WannaCry 作者的动机,但据推测,WannaCry 中包含了这种域名查询功能的目的是让赎金软件能够检查它是否在沙盒内。

沙盒是一种反恶意软件工具。它是一个虚拟机,与所有其他系统和网络分开运行。它提供了一个安全的环境来执行不受信任的文件,看看它们是做什么的。

沙盒实际上没有连接到互联网。但沙盒的目的是尽可能地模仿真实的计算机,因此它们可能会对恶意软件针对特定域的查询产生一个虚假的响应。因此,恶意软件检查其是否在沙盒内的一种方法是向一个假的域名发送查询。如果它得到一个“真实的”响应(由沙盒生成),它可以认为自己是在沙盒中,并关闭自己,这样沙盒就不会检测到它是恶意的。

然而,如果恶意软件将其测试查询发送到一个硬编码的域名,那么如果有人注册了这个域名,它就会被欺骗,以为自己始终在沙盒中。这可能是 WannaCry 发生的情况:世界各地的 WannaCry 副本被欺骗,认为它们在沙盒内,并关闭自己。(从恶意软件作者的角度来看,一个更好的设计是查询一个每次都不同的随机域名,这样一来,从沙盒外的域名得到回应的几率就接近零了)。

事情起因

国庆假期结束后的第一节网络攻防课,老师安排测试wannacry病毒的任务。

详细过程

由于病毒具有破坏性,因此在本地直接运行是极其危险的行为,一旦控制不慎,不仅自己电脑的数据要被破坏和丢失,甚至可能导致电脑成为肉鸡,去攻击其他联网设备。
为了安全考虑,首先需要准备好病毒运行的环境。

  • 支持虚拟化技术的电脑
  • VMware Workstation Pro 软件
  • 操作系统安装包
  • 计算机病毒样本

虚拟机环境配置

系统:Windows XP
安装教程:
VMware虚拟机之WindowsXP系统超详细下载安装与使用教程
itellyou官网 - 系统镜像下载

这个教程非常详细,而且每一步都有图片,即使小白也能轻松使用。

本地文件如何与虚拟机交互

方法一:

因为VMware自带有工具Vmware Tools,能够直接实现主机和虚拟机之间的文件共享,同时支持自由拖拽文件进行上传和下载,因此最简单且好用的办法就是在虚拟机安装Vmware Tools。

附上官方文档:VMware Tools 用户指南 - VMware Tools 11.2.5

说明:由于上一步安装虚拟机后,我的XP虚拟机自动安装了Vmware Tools(所以显示重新安装vmware tool),因此以下内容并未具体尝试,可能以下安装步骤中会出现一些报错或bug,请酌情查看。

具体步骤如下:

windows:

在 Windows 上手动安装 VMware Tools

[如何在Windows操作系统安装VMwareTools_VMware服务-阿里云帮助中心 (aliyun.com)](https://help.aliyun.com/document_detail/412878.html#:~:text=安装VMware Tools(Windows操作系统) 1 Windows操作系统安装完成后,VMware vSphere控制台会提示“该虚拟机上未安装VMware Tools” 2 鼠标右击虚拟机,选择,。 7 选择 安装 ,开始安装。 8 正在安装,如下图所示。 更多项目)

linux:

打开linux虚拟机,在VMware菜单栏里点击虚拟机选项,找到安装VMware tools选项。

对linux系统的tool安装需要控制台执行,下面附上代码:

1
2
3
4
5
6
7
8
// 解压下载的安装包
tar -zxvf [文件名]
//进入解压完成的文件夹
cd [wen'jian'ji]
//查看文件夹下的文件
ls
//执行文件夹下的可执行文件。
sudo ./vmware-install.pl

完成以上步骤后重启系统。

方法二:(以下内容只是对该博客的简略,并非原创)

将本机文件复制到安装的虚拟机系统中的两种方法_vmware怎么将本地文件下载到虚拟机除了vmwaretool_灼_灼的博客-CSDN博客

进入虚拟机设置,选择硬盘,再点击映射

在打开的映射虚拟磁盘,选择要复制到虚拟机里的哪个盘,记得取消勾选“以只读模式打开文件”,然后点击确定。

点击本地资源管理器,选择已经映射的盘

如果没有出现需要格式化弹窗,就可以直接把文件复制到映射盘中了,然后在虚拟机里,对应的你刚才选中的虚拟机里的磁盘就可以看到复制的文件了。

注意:要是有提示格式化,然后有文件较为重要,建议不要格式化

复制完文件记得断开连接

隔离措施

做好隔离措施。此步骤非常重要!!!

注意:为了安全起见,强烈建议拔掉插在电脑上的U盘。

打开虚拟机操作系统上的网络与共享中心,单击已经连接因特网的本地连接,在弹出的对话框中单击“禁用“按钮。

点击VMware Workstation Pro软件上方的虚拟机菜单,选择设置,单击设置窗口左侧的网络适配器,之后在网络适配器设置的设备状态栏内将两个勾去掉。

如何安全地做电脑病毒实验?

单击上方的“选项”选项卡,在左侧列表框内确认共享文件夹已禁用。设置完后单击确定按钮。

如何安全地做电脑病毒实验?

拍摄快照。为了防止病毒发作导致虚拟机系统崩溃后恢复麻烦,建议在运行病毒程序前拍摄快照,如图所示。该步骤需要几分钟时间,注意观察虚拟机软件的左下角。

如何安全地做电脑病毒实验?

实战

**针对病毒特性,设好模型。**比如:如果要运行勒索病毒,则需在虚拟机桌面上象征新地放置几个文本文件,观察中毒前后文件内容变化。

在确认做好隔离措施后(特别是检查是否已经断网),在虚拟机上把病毒样本压缩包解压缩并小心运行病毒程序。

**观察实验效果。**如:我们刚刚放置的文件已经被加密而乱码;桌面变了;弹出勒索对话框。如图。

病毒似乎并不能把已经运行的程序强制关闭,但这些打开的源文件已经不在桌面了,因此可以知道病毒并不直接修改内存。应该只是操作硬盘数据。

*解毒具体步骤*

打开wannakey-master,阅读readme.txt,由于wannacry会识别后缀名为txt的文件并标记为重要文件进行加密,因此readme的后缀名有可能被改成了其他形式,此时应该改回txt格式,采用记事本打开。

根据readme.txt中提供的信息,参照自己的windows版本,在bin中选择合适的exe进行运行:

运行wannakey.exe程序

多核系统使用wannakey_omp.exe

运行后会跳出cmd窗口(窗口可能会一闪而过,注意观察),如果显示秘钥已经成功生成(key has been generated),那么秘钥已经获取成功,此时前往恶意软件窗口,单击解密(decrypt)按钮,在后续的窗口里选择自己要解密的对象点击start,即可进行解密。

此时下方的目录表中会显示所有被解密了的文件的路径,可以根据路径进行核实和查看。

**恢复。**实验完后,恢复中毒前的状态。依次单击VMware Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。大约半分钟后就虚拟机就恢复到了中毒前的状态。

病毒逆向

病毒分析之WannaCry勒索病毒 - 『病毒分析区』 - 吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

[系统安全] 三十.WannaCry勒索病毒分析 (4)全网“最”详细的蠕虫传播机制解读-腾讯云开发者社区-腾讯云 (tencent.com)

[系统安全] 二十七.WannaCry勒索病毒分析 (3)蠕虫传播机制分析及IDA和OD逆向-腾讯云开发者社区-腾讯云 (tencent.com)

WannaCry利用Windows系统的SMB漏洞获取系统的最高权限,该工具通过恶意代码扫描开放445端口的Windows系统。WannaCry利用永恒之蓝漏洞进行网络端口扫描攻击,目标机器被成功攻陷后会从攻击机下载WannaCry蠕虫进行感染,并作为攻击机再次扫描互联网和局域网的其他机器,形成蠕虫感染大范围超快速扩散。

WannaCry勒索病毒主要行为是传播和勒索。
该病毒分为两个部分:

(1) 蠕虫部分,利用基于445端口的SMB漏洞MS17-010(永恒之蓝)进行病毒传播,并释放出勒索病毒。

(2) 勒索病毒部分,加密用户文件索要赎金。释放文件,包括加密器、解密器、说明文件、语言文件等;加密文件;设置桌面背景、窗体信息及付款账号等。

勒索病毒部分详细分析 (待修改)

CryptGenKey 函数生成随机加密会话密钥公钥/私钥对。密钥或密钥对的句柄在 phKey 中返回。

勒索主逻辑执行,先会导入一个存放在镜像中的RSA公钥,之后调用CryptGenKey生成一组RSA算法的Session key。之后将这组Key的公钥通过CryptExportKey导出,再写入到00000000.pky文件中。将Session key中的私钥用刚导入RSA公钥进行加密,存放在00000000.eky如下图所示:

img

如果遍历到的文件扩展名在欲加密的文件扩展名列表中,如下图所示:

img

则会将当前文件路径加入到文件操作列表中,在遍历文件结束后一并进行文件操作。代码如下图:

img

对于每个需要加密的文件,都会调用CryptGenRadom随机生成AES密钥,之后使用Session Key中的RSA公钥对AES密钥进行加密,存放在加密后的数据文件头中,之后将原始文件数据用该AES密钥进行加密。如下图所示:

img

整体加密流程,如下图所示:

img

因为病毒是生成加密过的用户文件后再删除原始文件,所以存在通过文件恢复类工具恢复原始未加密文件的可能。但是因为病毒对文件系统的修改操作过于频繁,导致被删除的原始文件数据块被覆盖,致使实际恢复效果有限。且随着系统持续运行,恢复类工具恢复数据的可能性会显著降低。

Wannakey的恢复

因为所有文件都是用随机生成的AES

WannaCry 在加密文件时会将加密密钥存储在内存中,而没有进行及时的清除。WannaKey 利用了这个漏洞,通过扫描内存中的数据,找到并提取出加密文件的解密密钥。

因此,WannaKey 能够解密 WannaCry 加密的文件,是因为它能够获取到加密文件的解密密钥。通过使用这个解密密钥,WannaKey 可以还原被 WannaCry 加密的文件,使受害者能够恢复其文件的原始状态。

病毒样本下载

计算机病毒样本分享_勒索病毒样本下载-CSDN博客

注意:为了安全起见,建议直接在虚拟机上上网搜索、下载,*在做好隔离措施前不要解压缩*。

参考资料

[如何安全地做电脑病毒实验-百度经验 (baidu.com)](https://jingyan.baidu.com/article/8cdccae9bacc6b705413cdf9.html#:~:text=恢复。 实验完后,恢复中毒前的状态。 依次单击VMware,Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。 大约半分钟后就虚拟机就恢复到了中毒前的状态。)

WannaCry - wiki

Wannakey

勒索病毒WannaCry深度技术分析—— 详解传播、感染和危害细节

对于每个需要加密的文件,都会调用CryptGenRadom随机生成AES密钥,之后使用Session Key中的RSA公钥对AES密钥进行加密,存放在加密后的数据文件头中,之后将原始文件数据用该AES密钥进行加密。如下图所示:

Wannacry

介绍

什么是 WannaCry 勒索软件攻击?

WannaCry 通过使用名为“EternalBlue”的漏洞利用进行传播。EternalBlue 仅适用于较旧的、未打补丁的 Microsoft Windows 版本,但运行此类版本的机器数量足以让 WannaCry 迅速传播开来。

*勒索软件是一种恶意软件,它通过加密锁住文件和数据,并索取赎金。

WannaCry 包含一个不寻常的函数:在执行之前,它将查询 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com。这个网站并不存在。

在 Hutchins 注册了这个域之后,WannaCry 的副本继续传播,但他们停止了执行。从本质上讲,一旦 WannaCry 开始收到来自 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com 的响应,它就会自行关闭。

为什么这能阻止攻击?

虽然不能确定 WannaCry 作者的动机,但据推测,WannaCry 中包含了这种域名查询功能的目的是让赎金软件能够检查它是否在沙盒内。

沙盒是一种反恶意软件工具。它是一个虚拟机,与所有其他系统和网络分开运行。它提供了一个安全的环境来执行不受信任的文件,看看它们是做什么的。

沙盒实际上没有连接到互联网。但沙盒的目的是尽可能地模仿真实的计算机,因此它们可能会对恶意软件针对特定域的查询产生一个虚假的响应。因此,恶意软件检查其是否在沙盒内的一种方法是向一个假的域名发送查询。如果它得到一个“真实的”响应(由沙盒生成),它可以认为自己是在沙盒中,并关闭自己,这样沙盒就不会检测到它是恶意的。

然而,如果恶意软件将其测试查询发送到一个硬编码的域名,那么如果有人注册了这个域名,它就会被欺骗,以为自己始终在沙盒中。这可能是 WannaCry 发生的情况:世界各地的 WannaCry 副本被欺骗,认为它们在沙盒内,并关闭自己。(从恶意软件作者的角度来看,一个更好的设计是查询一个每次都不同的随机域名,这样一来,从沙盒外的域名得到回应的几率就接近零了)。

事情起因

国庆假期结束后的第一节网络攻防课,老师安排测试wannacry病毒的任务。

详细过程

由于病毒具有破坏性,因此在本地直接运行是极其危险的行为,一旦控制不慎,不仅自己电脑的数据要被破坏和丢失,甚至可能导致电脑成为肉鸡,去攻击其他联网设备。
为了安全考虑,首先需要准备好病毒运行的环境。

  • 支持虚拟化技术的电脑
  • VMware Workstation Pro 软件
  • 操作系统安装包
  • 计算机病毒样本

虚拟机环境配置

系统:Windows XP
安装教程:
VMware虚拟机之WindowsXP系统超详细下载安装与使用教程
itellyou官网 - 系统镜像下载

这个教程非常详细,而且每一步都有图片,即使小白也能轻松使用。

本地文件如何与虚拟机交互

方法一:

因为VMware自带有工具Vmware Tools,能够直接实现主机和虚拟机之间的文件共享,同时支持自由拖拽文件进行上传和下载,因此最简单且好用的办法就是在虚拟机安装Vmware Tools。

附上官方文档:VMware Tools 用户指南 - VMware Tools 11.2.5

说明:由于上一步安装虚拟机后,我的XP虚拟机自动安装了Vmware Tools(所以显示重新安装vmware tool),因此以下内容并未具体尝试,可能以下安装步骤中会出现一些报错或bug,请酌情查看。

具体步骤如下:

windows:

在 Windows 上手动安装 VMware Tools

[如何在Windows操作系统安装VMwareTools_VMware服务-阿里云帮助中心 (aliyun.com)](https://help.aliyun.com/document_detail/412878.html#:~:text=安装VMware Tools(Windows操作系统) 1 Windows操作系统安装完成后,VMware vSphere控制台会提示“该虚拟机上未安装VMware Tools” 2 鼠标右击虚拟机,选择,。 7 选择 安装 ,开始安装。 8 正在安装,如下图所示。 更多项目)

linux:

打开linux虚拟机,在VMware菜单栏里点击虚拟机选项,找到安装VMware tools选项。

对linux系统的tool安装需要控制台执行,下面附上代码:

1
2
3
4
5
6
7
8
// 解压下载的安装包
tar -zxvf [文件名]
//进入解压完成的文件夹
cd [wen'jian'ji]
//查看文件夹下的文件
ls
//执行文件夹下的可执行文件。
sudo ./vmware-install.pl

完成以上步骤后重启系统。

方法二:(以下内容只是对该博客的简略,并非原创)

将本机文件复制到安装的虚拟机系统中的两种方法_vmware怎么将本地文件下载到虚拟机除了vmwaretool_灼_灼的博客-CSDN博客

进入虚拟机设置,选择硬盘,再点击映射

在打开的映射虚拟磁盘,选择要复制到虚拟机里的哪个盘,记得取消勾选“以只读模式打开文件”,然后点击确定。

点击本地资源管理器,选择已经映射的盘

如果没有出现需要格式化弹窗,就可以直接把文件复制到映射盘中了,然后在虚拟机里,对应的你刚才选中的虚拟机里的磁盘就可以看到复制的文件了。

注意:要是有提示格式化,然后有文件较为重要,建议不要格式化

复制完文件记得断开连接

隔离措施

做好隔离措施。此步骤非常重要!!!

注意:为了安全起见,强烈建议拔掉插在电脑上的U盘。

打开虚拟机操作系统上的网络与共享中心,单击已经连接因特网的本地连接,在弹出的对话框中单击“禁用“按钮。

点击VMware Workstation Pro软件上方的虚拟机菜单,选择设置,单击设置窗口左侧的网络适配器,之后在网络适配器设置的设备状态栏内将两个勾去掉。

如何安全地做电脑病毒实验?

单击上方的“选项”选项卡,在左侧列表框内确认共享文件夹已禁用。设置完后单击确定按钮。

如何安全地做电脑病毒实验?

拍摄快照。为了防止病毒发作导致虚拟机系统崩溃后恢复麻烦,建议在运行病毒程序前拍摄快照,如图所示。该步骤需要几分钟时间,注意观察虚拟机软件的左下角。

如何安全地做电脑病毒实验?

实战

**针对病毒特性,设好模型。**比如:如果要运行勒索病毒,则需在虚拟机桌面上象征新地放置几个文本文件,观察中毒前后文件内容变化。

在确认做好隔离措施后(特别是检查是否已经断网),在虚拟机上把病毒样本压缩包解压缩并小心运行病毒程序。

**观察实验效果。**如:我们刚刚放置的文件已经被加密而乱码;桌面变了;弹出勒索对话框。如图。

病毒似乎并不能把已经运行的程序强制关闭,但这些打开的源文件已经不在桌面了,因此可以知道病毒并不直接修改内存。应该只是操作硬盘数据。

*解毒具体步骤*

打开wannakey-master,阅读readme.txt,由于wannacry会识别后缀名为txt的文件并标记为重要文件进行加密,因此readme的后缀名有可能被改成了其他形式,此时应该改回txt格式,采用记事本打开。

根据readme.txt中提供的信息,参照自己的windows版本,在bin中选择合适的exe进行运行:

运行wannakey.exe程序

多核系统使用wannakey_omp.exe

运行后会跳出cmd窗口(窗口可能会一闪而过,注意观察),如果显示秘钥已经成功生成(key has been generated),那么秘钥已经获取成功,此时前往恶意软件窗口,单击解密(decrypt)按钮,在后续的窗口里选择自己要解密的对象点击start,即可进行解密。

此时下方的目录表中会显示所有被解密了的文件的路径,可以根据路径进行核实和查看。

**恢复。**实验完后,恢复中毒前的状态。依次单击VMware Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。大约半分钟后就虚拟机就恢复到了中毒前的状态。

病毒逆向

病毒分析之WannaCry勒索病毒 - 『病毒分析区』 - 吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

[系统安全] 三十.WannaCry勒索病毒分析 (4)全网“最”详细的蠕虫传播机制解读-腾讯云开发者社区-腾讯云 (tencent.com)

[系统安全] 二十七.WannaCry勒索病毒分析 (3)蠕虫传播机制分析及IDA和OD逆向-腾讯云开发者社区-腾讯云 (tencent.com)

WannaCry利用Windows系统的SMB漏洞获取系统的最高权限,该工具通过恶意代码扫描开放445端口的Windows系统。WannaCry利用永恒之蓝漏洞进行网络端口扫描攻击,目标机器被成功攻陷后会从攻击机下载WannaCry蠕虫进行感染,并作为攻击机再次扫描互联网和局域网的其他机器,形成蠕虫感染大范围超快速扩散。

WannaCry勒索病毒主要行为是传播和勒索。
该病毒分为两个部分:

(1) 蠕虫部分,利用基于445端口的SMB漏洞MS17-010(永恒之蓝)进行病毒传播,并释放出勒索病毒。

(2) 勒索病毒部分,加密用户文件索要赎金。释放文件,包括加密器、解密器、说明文件、语言文件等;加密文件;设置桌面背景、窗体信息及付款账号等。

勒索病毒部分详细分析 (待修改)

CryptGenKey 函数生成随机加密会话密钥公钥/私钥对。密钥或密钥对的句柄在 phKey 中返回。

勒索主逻辑执行,先会导入一个存放在镜像中的RSA公钥,之后调用CryptGenKey生成一组RSA算法的Session key。之后将这组Key的公钥通过CryptExportKey导出,再写入到00000000.pky文件中。将Session key中的私钥用刚导入RSA公钥进行加密,存放在00000000.eky如下图所示:

img

如果遍历到的文件扩展名在欲加密的文件扩展名列表中,如下图所示:

img

则会将当前文件路径加入到文件操作列表中,在遍历文件结束后一并进行文件操作。代码如下图:

img

对于每个需要加密的文件,都会调用CryptGenRadom随机生成AES密钥,之后使用Session Key中的RSA公钥对AES密钥进行加密,存放在加密后的数据文件头中,之后将原始文件数据用该AES密钥进行加密。如下图所示:

img

整体加密流程,如下图所示:

img

因为病毒是生成加密过的用户文件后再删除原始文件,所以存在通过文件恢复类工具恢复原始未加密文件的可能。但是因为病毒对文件系统的修改操作过于频繁,导致被删除的原始文件数据块被覆盖,致使实际恢复效果有限。且随着系统持续运行,恢复类工具恢复数据的可能性会显著降低。

Wannakey的恢复

因为所有文件都是用随机生成的AES

WannaCry 在加密文件时会将加密密钥存储在内存中,而没有进行及时的清除。WannaKey 利用了这个漏洞,通过扫描内存中的数据,找到并提取出加密文件的解密密钥。

因此,WannaKey 能够解密 WannaCry 加密的文件,是因为它能够获取到加密文件的解密密钥。通过使用这个解密密钥,WannaKey 可以还原被 WannaCry 加密的文件,使受害者能够恢复其文件的原始状态。

病毒样本下载

计算机病毒样本分享_勒索病毒样本下载-CSDN博客

注意:为了安全起见,建议直接在虚拟机上上网搜索、下载,*在做好隔离措施前不要解压缩*。

参考资料

[如何安全地做电脑病毒实验-百度经验 (baidu.com)](https://jingyan.baidu.com/article/8cdccae9bacc6b705413cdf9.html#:~:text=恢复。 实验完后,恢复中毒前的状态。 依次单击VMware,Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。 大约半分钟后就虚拟机就恢复到了中毒前的状态。)

WannaCry - wiki

Wannakey

勒索病毒WannaCry深度技术分析—— 详解传播、感染和危害细节

整体加密流程,如下图所示:

Wannacry

介绍

什么是 WannaCry 勒索软件攻击?

WannaCry 通过使用名为“EternalBlue”的漏洞利用进行传播。EternalBlue 仅适用于较旧的、未打补丁的 Microsoft Windows 版本,但运行此类版本的机器数量足以让 WannaCry 迅速传播开来。

*勒索软件是一种恶意软件,它通过加密锁住文件和数据,并索取赎金。

WannaCry 包含一个不寻常的函数:在执行之前,它将查询 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com。这个网站并不存在。

在 Hutchins 注册了这个域之后,WannaCry 的副本继续传播,但他们停止了执行。从本质上讲,一旦 WannaCry 开始收到来自 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com 的响应,它就会自行关闭。

为什么这能阻止攻击?

虽然不能确定 WannaCry 作者的动机,但据推测,WannaCry 中包含了这种域名查询功能的目的是让赎金软件能够检查它是否在沙盒内。

沙盒是一种反恶意软件工具。它是一个虚拟机,与所有其他系统和网络分开运行。它提供了一个安全的环境来执行不受信任的文件,看看它们是做什么的。

沙盒实际上没有连接到互联网。但沙盒的目的是尽可能地模仿真实的计算机,因此它们可能会对恶意软件针对特定域的查询产生一个虚假的响应。因此,恶意软件检查其是否在沙盒内的一种方法是向一个假的域名发送查询。如果它得到一个“真实的”响应(由沙盒生成),它可以认为自己是在沙盒中,并关闭自己,这样沙盒就不会检测到它是恶意的。

然而,如果恶意软件将其测试查询发送到一个硬编码的域名,那么如果有人注册了这个域名,它就会被欺骗,以为自己始终在沙盒中。这可能是 WannaCry 发生的情况:世界各地的 WannaCry 副本被欺骗,认为它们在沙盒内,并关闭自己。(从恶意软件作者的角度来看,一个更好的设计是查询一个每次都不同的随机域名,这样一来,从沙盒外的域名得到回应的几率就接近零了)。

事情起因

国庆假期结束后的第一节网络攻防课,老师安排测试wannacry病毒的任务。

详细过程

由于病毒具有破坏性,因此在本地直接运行是极其危险的行为,一旦控制不慎,不仅自己电脑的数据要被破坏和丢失,甚至可能导致电脑成为肉鸡,去攻击其他联网设备。
为了安全考虑,首先需要准备好病毒运行的环境。

  • 支持虚拟化技术的电脑
  • VMware Workstation Pro 软件
  • 操作系统安装包
  • 计算机病毒样本

虚拟机环境配置

系统:Windows XP
安装教程:
VMware虚拟机之WindowsXP系统超详细下载安装与使用教程
itellyou官网 - 系统镜像下载

这个教程非常详细,而且每一步都有图片,即使小白也能轻松使用。

本地文件如何与虚拟机交互

方法一:

因为VMware自带有工具Vmware Tools,能够直接实现主机和虚拟机之间的文件共享,同时支持自由拖拽文件进行上传和下载,因此最简单且好用的办法就是在虚拟机安装Vmware Tools。

附上官方文档:VMware Tools 用户指南 - VMware Tools 11.2.5

说明:由于上一步安装虚拟机后,我的XP虚拟机自动安装了Vmware Tools(所以显示重新安装vmware tool),因此以下内容并未具体尝试,可能以下安装步骤中会出现一些报错或bug,请酌情查看。

具体步骤如下:

windows:

在 Windows 上手动安装 VMware Tools

[如何在Windows操作系统安装VMwareTools_VMware服务-阿里云帮助中心 (aliyun.com)](https://help.aliyun.com/document_detail/412878.html#:~:text=安装VMware Tools(Windows操作系统) 1 Windows操作系统安装完成后,VMware vSphere控制台会提示“该虚拟机上未安装VMware Tools” 2 鼠标右击虚拟机,选择,。 7 选择 安装 ,开始安装。 8 正在安装,如下图所示。 更多项目)

linux:

打开linux虚拟机,在VMware菜单栏里点击虚拟机选项,找到安装VMware tools选项。

对linux系统的tool安装需要控制台执行,下面附上代码:

1
2
3
4
5
6
7
8
// 解压下载的安装包
tar -zxvf [文件名]
//进入解压完成的文件夹
cd [wen'jian'ji]
//查看文件夹下的文件
ls
//执行文件夹下的可执行文件。
sudo ./vmware-install.pl

完成以上步骤后重启系统。

方法二:(以下内容只是对该博客的简略,并非原创)

将本机文件复制到安装的虚拟机系统中的两种方法_vmware怎么将本地文件下载到虚拟机除了vmwaretool_灼_灼的博客-CSDN博客

进入虚拟机设置,选择硬盘,再点击映射

在打开的映射虚拟磁盘,选择要复制到虚拟机里的哪个盘,记得取消勾选“以只读模式打开文件”,然后点击确定。

点击本地资源管理器,选择已经映射的盘

如果没有出现需要格式化弹窗,就可以直接把文件复制到映射盘中了,然后在虚拟机里,对应的你刚才选中的虚拟机里的磁盘就可以看到复制的文件了。

注意:要是有提示格式化,然后有文件较为重要,建议不要格式化

复制完文件记得断开连接

隔离措施

做好隔离措施。此步骤非常重要!!!

注意:为了安全起见,强烈建议拔掉插在电脑上的U盘。

打开虚拟机操作系统上的网络与共享中心,单击已经连接因特网的本地连接,在弹出的对话框中单击“禁用“按钮。

点击VMware Workstation Pro软件上方的虚拟机菜单,选择设置,单击设置窗口左侧的网络适配器,之后在网络适配器设置的设备状态栏内将两个勾去掉。

如何安全地做电脑病毒实验?

单击上方的“选项”选项卡,在左侧列表框内确认共享文件夹已禁用。设置完后单击确定按钮。

如何安全地做电脑病毒实验?

拍摄快照。为了防止病毒发作导致虚拟机系统崩溃后恢复麻烦,建议在运行病毒程序前拍摄快照,如图所示。该步骤需要几分钟时间,注意观察虚拟机软件的左下角。

如何安全地做电脑病毒实验?

实战

**针对病毒特性,设好模型。**比如:如果要运行勒索病毒,则需在虚拟机桌面上象征新地放置几个文本文件,观察中毒前后文件内容变化。

在确认做好隔离措施后(特别是检查是否已经断网),在虚拟机上把病毒样本压缩包解压缩并小心运行病毒程序。

**观察实验效果。**如:我们刚刚放置的文件已经被加密而乱码;桌面变了;弹出勒索对话框。如图。

病毒似乎并不能把已经运行的程序强制关闭,但这些打开的源文件已经不在桌面了,因此可以知道病毒并不直接修改内存。应该只是操作硬盘数据。

*解毒具体步骤*

打开wannakey-master,阅读readme.txt,由于wannacry会识别后缀名为txt的文件并标记为重要文件进行加密,因此readme的后缀名有可能被改成了其他形式,此时应该改回txt格式,采用记事本打开。

根据readme.txt中提供的信息,参照自己的windows版本,在bin中选择合适的exe进行运行:

运行wannakey.exe程序

多核系统使用wannakey_omp.exe

运行后会跳出cmd窗口(窗口可能会一闪而过,注意观察),如果显示秘钥已经成功生成(key has been generated),那么秘钥已经获取成功,此时前往恶意软件窗口,单击解密(decrypt)按钮,在后续的窗口里选择自己要解密的对象点击start,即可进行解密。

此时下方的目录表中会显示所有被解密了的文件的路径,可以根据路径进行核实和查看。

**恢复。**实验完后,恢复中毒前的状态。依次单击VMware Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。大约半分钟后就虚拟机就恢复到了中毒前的状态。

病毒逆向

病毒分析之WannaCry勒索病毒 - 『病毒分析区』 - 吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

[系统安全] 三十.WannaCry勒索病毒分析 (4)全网“最”详细的蠕虫传播机制解读-腾讯云开发者社区-腾讯云 (tencent.com)

[系统安全] 二十七.WannaCry勒索病毒分析 (3)蠕虫传播机制分析及IDA和OD逆向-腾讯云开发者社区-腾讯云 (tencent.com)

WannaCry利用Windows系统的SMB漏洞获取系统的最高权限,该工具通过恶意代码扫描开放445端口的Windows系统。WannaCry利用永恒之蓝漏洞进行网络端口扫描攻击,目标机器被成功攻陷后会从攻击机下载WannaCry蠕虫进行感染,并作为攻击机再次扫描互联网和局域网的其他机器,形成蠕虫感染大范围超快速扩散。

WannaCry勒索病毒主要行为是传播和勒索。
该病毒分为两个部分:

(1) 蠕虫部分,利用基于445端口的SMB漏洞MS17-010(永恒之蓝)进行病毒传播,并释放出勒索病毒。

(2) 勒索病毒部分,加密用户文件索要赎金。释放文件,包括加密器、解密器、说明文件、语言文件等;加密文件;设置桌面背景、窗体信息及付款账号等。

勒索病毒部分详细分析 (待修改)

CryptGenKey 函数生成随机加密会话密钥公钥/私钥对。密钥或密钥对的句柄在 phKey 中返回。

勒索主逻辑执行,先会导入一个存放在镜像中的RSA公钥,之后调用CryptGenKey生成一组RSA算法的Session key。之后将这组Key的公钥通过CryptExportKey导出,再写入到00000000.pky文件中。将Session key中的私钥用刚导入RSA公钥进行加密,存放在00000000.eky如下图所示:

img

如果遍历到的文件扩展名在欲加密的文件扩展名列表中,如下图所示:

img

则会将当前文件路径加入到文件操作列表中,在遍历文件结束后一并进行文件操作。代码如下图:

img

对于每个需要加密的文件,都会调用CryptGenRadom随机生成AES密钥,之后使用Session Key中的RSA公钥对AES密钥进行加密,存放在加密后的数据文件头中,之后将原始文件数据用该AES密钥进行加密。如下图所示:

img

整体加密流程,如下图所示:

img

因为病毒是生成加密过的用户文件后再删除原始文件,所以存在通过文件恢复类工具恢复原始未加密文件的可能。但是因为病毒对文件系统的修改操作过于频繁,导致被删除的原始文件数据块被覆盖,致使实际恢复效果有限。且随着系统持续运行,恢复类工具恢复数据的可能性会显著降低。

Wannakey的恢复

因为所有文件都是用随机生成的AES

WannaCry 在加密文件时会将加密密钥存储在内存中,而没有进行及时的清除。WannaKey 利用了这个漏洞,通过扫描内存中的数据,找到并提取出加密文件的解密密钥。

因此,WannaKey 能够解密 WannaCry 加密的文件,是因为它能够获取到加密文件的解密密钥。通过使用这个解密密钥,WannaKey 可以还原被 WannaCry 加密的文件,使受害者能够恢复其文件的原始状态。

病毒样本下载

计算机病毒样本分享_勒索病毒样本下载-CSDN博客

注意:为了安全起见,建议直接在虚拟机上上网搜索、下载,*在做好隔离措施前不要解压缩*。

参考资料

[如何安全地做电脑病毒实验-百度经验 (baidu.com)](https://jingyan.baidu.com/article/8cdccae9bacc6b705413cdf9.html#:~:text=恢复。 实验完后,恢复中毒前的状态。 依次单击VMware,Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。 大约半分钟后就虚拟机就恢复到了中毒前的状态。)

WannaCry - wiki

Wannakey

勒索病毒WannaCry深度技术分析—— 详解传播、感染和危害细节

因为病毒是生成加密过的用户文件后再删除原始文件,所以存在通过文件恢复类工具恢复原始未加密文件的可能。但是因为病毒对文件系统的修改操作过于频繁,导致被删除的原始文件数据块被覆盖,致使实际恢复效果有限。且随着系统持续运行,恢复类工具恢复数据的可能性会显著降低。

Wannakey的恢复

因为所有文件都是用随机生成的AES

WannaCry 在加密文件时会将加密密钥存储在内存中,而没有进行及时的清除。WannaKey 利用了这个漏洞,通过扫描内存中的数据,找到并提取出加密文件的解密密钥。

因此,WannaKey 能够解密 WannaCry 加密的文件,是因为它能够获取到加密文件的解密密钥。通过使用这个解密密钥,WannaKey 可以还原被 WannaCry 加密的文件,使受害者能够恢复其文件的原始状态。

病毒样本下载

计算机病毒样本分享_勒索病毒样本下载-CSDN博客

注意:为了安全起见,建议直接在虚拟机上上网搜索、下载,*在做好隔离措施前不要解压缩*。

参考资料

[如何安全地做电脑病毒实验-百度经验 (baidu.com)](https://jingyan.baidu.com/article/8cdccae9bacc6b705413cdf9.html#:~:text=恢复。 实验完后,恢复中毒前的状态。 依次单击VMware,Workstation Pro软件上方的虚拟机菜单-快照-恢复到快照,在弹出的对话框中选择”是“,如图所示。 大约半分钟后就虚拟机就恢复到了中毒前的状态。)

WannaCry - wiki

Wannakey

勒索病毒WannaCry深度技术分析—— 详解传播、感染和危害细节