技术分析 | 新型勒索病毒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 操作系统,配置的差不多之后,想使用注册机激活系统.使用了几个本地以前下载的注册机激活失败后,尝试上网搜索. 于是找到下面这个网站(这个网站下载 ...
随机推荐
- 像写C#一样编写java代码
JDK8提供了非常多的便捷用法和语法糖,其编码效率几乎接近于C#开发,maven则是java目前为止最赞的jar包管理和build工具,这两部分内容都不算多,就合并到一起了. 愿编写java代码的过程 ...
- Hive篇之安装
1,安装 hive的版本的选择,是选择内置的数据库保存元数据,还是用外部的mysql之类的数据库保存元数据,同时,如果使用外置的mysql,需要注意对mysql远程访问的配置. 再就是关于文件的配置了 ...
- java之反射
初学反射,也是第二次写博客了把,就简单记录一下. Reflection(反射)是被视为动态语言的关键,反射机制允许程序在执行期借助于Reflection API取得任何类的内部信息,并能直接操作任意对 ...
- flume集群日志收集
一.Flume简介 Flume是一个分布式的.高可用的海量日志收集.聚合和传输日志收集系统,支持在日志系统中定制各类数据发送方(如:Kafka,HDFS等),便于收集数据.其核心为agent,agen ...
- Linux(ubuntu)下jdk&tomcat的安装
1.下载相应版本的jdk及tomcat:sudo wget ${url} 2.解压: tar zxvf jdk-7u79-linux-x64.tar.gz tar zxvf apache-tomca ...
- TCP三次握手(建立连接)/四次挥手(关闭连接)
TCP数据包格式 顺序号(32位):用来标识从TCP源端向TCP目的端发送的数据字节流,它表示在这个报文段中的第一个数据字节的顺序号.如果将字节流看作在两个应用程序间的单向流动,则TCP用顺序号对每个 ...
- jquery之属性操作
jQuery之属性操作 相信属性这个词对大家都不陌生.今天我就给大家简单地介绍一下JQuery一些属性的操作 属性一共分三大类 一.基本属性 1.attr 2.removeAttr 3.prop 4. ...
- springboot(二):web综合开发
上篇文章介绍了spring boot初级教程:spring boot(一):入门篇,方便大家快速入门.了解实践Spring boot特性:本篇文章接着上篇内容继续为大家介绍spring boot的其它 ...
- springMVC---简介
SpringMVC介绍 为什么要使用springMVC? 很多应用程序的问题在于处理业务数据和显示业务数据的视图的对象之间存在紧密耦合.通常,更新业务对象的命令都是从视图本身发起的,使视图对任何业务对 ...
- centos修改无法用用户名和密码登录
vi /etc/ssh/sshd_configPermitRootLogin这行改为PermitRootLogin yesPasswordAuthentication no上面的no改为yesUseP ...