技术分析 | 新型勒索病毒Petya如何对你的文件进行加密
6月27日晚间,一波大规模勒索蠕虫病毒攻击重新席卷全球。
媒体报道,欧洲、俄罗斯等多国政府、银行、电力系统、通讯系统、企业以及机场都不同程度的受到了影响。

阿里云安全团队第一时间拿到病毒样本,并进行了分析:
这是一种新型勒索蠕虫病毒。电脑、服务器感染这种病毒后会被加密特定类型文件,导致系统无法正常运行。
目前,该勒索蠕虫通过Windows漏洞进行传播,一台中招可能就会感染局域网内其它电脑。
一、Petya与WannaCry病毒的对比
1、加密目标文件类型
Petya加密的文件类型相比WannaCry少。
Petya加密的文件类型一共65种,WannaCry为178种,不过已经包括了常见文件类型。

2、支付赎金
Petya需要支付300美金,WannaCry需要支付600美金。
二、云用户是否受影响?
截止发稿,云上暂时未发现受影响用户。
6月28日凌晨,阿里云对外发布了公告预警。

三、勒索病毒传播方式分析
Petya勒索蠕虫通过Windows漏洞进行传播,同时会感染局域网中的其它电脑。电脑感染Petya勒索病毒后,会被加密特定类型文件,导致电脑无法正常运行。
阿里云安全专家研究发现,Petya勒索病毒在内网系统中,主要通过Windows的协议进行横向移动。
主要通过Windows管理体系结构(Microsoft Windows Management Instrumentation),和PSEXEC(SMB协议)进行扩散。
截止到当前,黑客的比特币账号(1Mz7153HMuxXTuR2R1t78mGSdzaAtNbBWX)中只有3.39 个比特币(1比特币=2459美金),33笔交易,说明已经有用户支付了赎金。
四、技术和加密过程分析
阿里云安全专家对Petya样本进行研究后发现,操作系统被感染后,重新启动时会造成无法进入系统。如下图显示的为病毒伪装的磁盘扫描程序。

Petya病毒对勒索对象的加密,分为以下7个步骤:

首先,函数sub_10001EEF是加密操作的入口。遍历所有磁盘,对每个固定磁盘创建一个线程执行文件遍历和加密操作,线程参数是一个结构体,包含一个公钥和磁盘根路径。

然后,在线程函数(StartAddress)中,先获取密钥容器,
pszProvider="MicrosoftEnhanced RSA and AES Cryptographic Provider"
dwProvType=PROV_RSA_AES Provider为RSA_AES。

调用sub_10001B4E,通过CryptGenKey生成AES128密钥,用于后边进行文件加密。

如果生成密钥成功,接着调用sub_10001973和sub_10001D32,分别是遍历磁盘加密文件和保存密钥的功能。

在sub_10001973函数中判断了只对特定文件后缀加密。

sub_10001D32函数功能是将密钥加密并写入磁盘根路径的README.TXT文件中,

该函数在开始时调用了sub_10001BA0获取一个程序内置的公钥

之后,调用sub_10001C7F导出AES密钥,在这个函数中用前边的公钥对它加密。

最后,在README.TXT中写了一段提示付款的文字,并且将加密后的密钥写入其中。
因为密钥经过了程序中内置的公钥加密,被勒索对象必须要有黑客的私钥才能解密。这也就造成了勒索加密的不可逆性。

五、安全建议
目前勒索者使用的邮箱已经被关停,不建议支付赎金。

所有在IDC托管或自建机房有服务器的企业,如果采用了Windows操作系统,立即安装微软补丁。
对大型企业或组织机构,面对成百上千台机器,最好还是使用专业客户端进行集中管理。比如,阿里云的安骑士就提供实时预警、防御、一键修复等功能。
可靠的数据备份可以将勒索软件带来的损失最小化。建议启用阿里云快照功能对数据进行备份,并同时做好安全防护,避免被感染和损坏。
--------------------------------------------------------------
* 作者:阿里云安全,更多安全类热点资讯及知识分享,请持续关注阿里聚安全
技术分析 | 新型勒索病毒Petya如何对你的文件进行加密的更多相关文章
- 多国正在遭遇新型勒索病毒Petya侵袭
北京时间2017年6月27日晚,据外媒消息,多国正在遭遇 Petya 勒索病毒袭击,政府.银行.电力系统.通讯系统.企业以及机场都受到不同程度影响.请予关注,并做相应防范.相关事件描述及防范措施如下: ...
- 【技术分析】DowginCw病毒家族解析
作者:钱盾反诈实验室 0x1.背景 近期,钱盾反诈实验室通过钱盾恶意代码智能监测引擎感知并捕获一批恶意应用.由于该批病毒会联网加载"CWAPI"插件,故将其命名为"D ...
- 从Wannacry到WannaRen:螣龙安科带你深度分析勒索病毒原理
从Wannacry到WannaRen:螣龙安科2020年4月7日,360CERT监测发现网络上出现一款新型勒索病毒wannaRen,该勒索病毒会加密windows系统中几乎所有的文件,并且以.Wann ...
- PCB Windows Petya(永恒之蓝)勒索病毒补丁检测代码
公司内部电脑招受到新的勒索病毒Petya(永恒之蓝)攻击,直接导致受攻击的电脑系统崩贵无法启动,这次勒索病毒攻击影响范围之广,IT,人事,工程,生产,物控等部门都无一幸免,对整个公司运转产生了非常严重 ...
- Window应急响应(三):勒索病毒
0x00 前言 勒索病毒,是一种新型电脑病毒,主要以邮件.程序木马.网页挂马的形式进行传播.该病毒性质恶劣.危害极大,一旦感染将给用户带来无法估量的损失.这种病毒利用各种加密算法对文件进行加密,被 ...
- 4.Windows应急响应:勒索病毒
0x00 前言 勒索病毒,是一种新型电脑病毒,主要以邮件.程序木马.网页挂马的形式进行传播.该病毒性质恶劣. 危害极大,一旦感染将给用户带来无法估量的损失.这种病毒利用各种加密算法对文件进行加密,被感 ...
- 【转载】Globelmposter勒索病毒最新变种预警
近日,深信服安全团队观察到Globelmposter勒索病毒又出现最新变种,加密后缀有Ares666.Zeus666.Aphrodite666.Apollon666等,目前国内已有多家大型医院率先发现 ...
- WannaRen来袭:螣龙安科带你盘点那些年的勒索病毒
2020年4月7日,360CERT监测发现网络上出现一款新型勒索病毒wannaRen,该勒索病毒会加密windows系统中几乎所有的文件,并且以.WannaRen作为后缀.360CERT该事件评定:危 ...
- 记一次亲身体验的勒索病毒事件 StopV2勒索病毒
昨天给笔记本装了 windows server 2016 操作系统,配置的差不多之后,想使用注册机激活系统.使用了几个本地以前下载的注册机激活失败后,尝试上网搜索. 于是找到下面这个网站(这个网站下载 ...
随机推荐
- 使用bootstrap的插件实现模态框效果
在上一篇文章中,我们使用 js+css 实现了模态框效果,在理解了模态框的基本实现方法和实现效果后,我们就要寻找更快捷的方法,又快又好的来完成模态框开发需求,从而节约时间,提高效率.一个好的轮子,不仅 ...
- OpenStack Newton版本Ceph集成部署记录
2017年2月,OpenStack Ocata版本正式release,就此记录上一版本 Newton 结合Ceph Jewel版的部署实践.宿主机操作系统为CentOS 7.2 . 初级版: 192. ...
- Jdk1.6 JUC源码解析(6)-locks-AbstractQueuedSynchronizer
功能简介: AbstractQueuedSynchronizer(以下简称AQS)是Java并发包提供的一个同步基础机制,是并发包中实现Lock和其他同步机制(如:Semaphore.CountDow ...
- JEESZ-Redis分布式缓存安装和使用
独立缓存服务器: Linux CentOS Redis 版本: 3.0下面我们针对于Redis安装做下详细的记录:编译和安装所需的包:# yum install gcc tcl创建安装目录:# mkd ...
- OBS实现直播解决方案【html实现直播】
项目的需要,要整一个视频直播,但又不想在其他平台那种直播室盗链展示,那我就直接用播放器来实现rtmp流媒体服务器推流吧!没废话,走起 1.你要有一个媒体服务器,暂时用[盘古云],这个还好,算是不错的平 ...
- Servlet路径映射
Serlvlet路径映射 当一个请求发送到servlet容器的时候,容器先会将请求的url减去当前应用上下文的路径作为servlet的映射url. 容器默认请求的是一个Servlet,所以不会直接根据 ...
- gulp环境搭建,gulp入门教程
gulp常用地址: gulp官方网址:http://gulpjs.com gulp插件地址:http://gulpjs.com/plugins gulp 官方API:https://github.co ...
- ArrayList构造方法源码分析
首先看一下无参的构造方法: private static final Object[] DEFAULTCAPACITY_EMPTY_ELEMENTDATA = {}; transient Object ...
- eclipse hibernate导出数据库实体类
打开eclipse->help->Eclipse Marketplace->查找hibernate->安装如下插件 只要安装其中一个,hibernate tool即可: 安装完 ...
- haproxy内存管理-free_list原理
haproxy的内存管理中,通过pool_head->free_list,存储空闲内存块,free_list是个二级指针,却把空闲内存块都串了起来,没有用next,pre之类的指针.怎么实现的? ...