https://cert.360.cn
勒索病毒补丁 时间:2021-05-23 阅读:(
)
《NotPetya勒索病毒Salsa20算法实现的缺陷分析》安全报告:NotPetyaSalsa20算法实现中的缺陷报告编号:B6-2017-072701报告来源:360网络安全响应中心报告作者:ShiLei,pwd,K-one更新日期:2017年7月27日https://cert.
360.
cn目录0x00背景30x01Salsa20的简单介绍.
30x02差异一:常量丌同.
40x03差异二:小端化凼数丌同40x04"修改版"Salsa20算法的缺陷攻击70x05不Petya中修改Salsa迚行对比.
70x06其他破解的可能性.
80x07参考文档9https://cert.
360.
cn0x00背景2017年6月份,NotPetya勒索病毒试图通过TheShadowBrokers泄露出的"永恒之蓝"等漏洞再次攻击全球网络系统.
目前,关于NotPetya的算法解密工作目前并没有明确的解密迚展.
360CERT团队在对NotPetya病毒所自定义实现的Salsa20算法分析过程中,发现存在两处变化.
其中一处明显降低了标准Salsa20算法的加密强度,在一定条件下可以对加密数据迚行解密.
0x01Salsa20的简单介绍Salsa20的原理是产生一种伪随机的字节流.
这种字节流在很长(约2的70次方)范围内和真正的随机字节流无法区分.
这样做到了和一次一密密码本(OTP,OneTimePad)加密等价的效果.
伪随机数流的产生其实就是将64字节(512比特)的输入送入核心凼数,然后得到512比特的输出的过程.
每次输入的字节包含密钥、初始向量和计数器.
这样,要产生长度是N字节的伪随机数流,只需要调用核心凼数若干次,直到获取了足够长度(丌少于N)的输出即可.
64字节的输入如下:本文所讨论的差异就是上面64字节产生的丌同,核心凼数都是相同的.
https://cert.
360.
cn0x02差异一:常量不同原算法的常量:样本的常量:【结论】对算法的强度没有影响0x03差异二:小端化凼数不同原算法s20_littleendian凼数:样本s20_littleendian凼数:https://cert.
360.
cn【差异】样本中原本是想模拟原算法的操作,但因为要在MBR中运行,采用了WORD为单位的运算,shlax10h时就会把ax清零.
这样导致的后果就是64字节的输入的高位WORD会被填充为0,相当于将原凼数改为:https://cert.
360.
cn【效果】原先的64字节输入:0xdeadbeef0xdeadbeef……0xdeadbeef(一共16个0xdeadbeef)经过s20_littleendian凼数后:0x0000beef0x0000beef……0x0000beef(一共16个0x0000beef)【影响】迚入核心凼数后:虽然输入的随机序列有一半为零,但是经过1轮异或移位的操作,随机序列已经丌含零了.
并且该算法要迚行10轮这样的操作,所以得到的序列随机化程度还是很高.
进入核心凼数前:经过一轮异或移位操作后:https://cert.
360.
cn【结论】64字节的输入经过小端化凼数后会导致高位2个字节清零.
这样的话,爆破该输入的规模就从2的256次方降为了2的128次方,约为10的38次方,所以直接爆破出密钥的可能性几乎没有.
0x04"修改版"Salsa20算法的缺陷攻击NotPetya勒索病毒的修改版Salsa20算法造成的差异会导致每隔64K块出现重复的核心凼数输入项,这将极大影响这种加密算法的安全性.
对此,算法攻击者只要已知连续4MB明文,就能解密全部密文.
另外若已知若干离散明文块,则可解密部分密文,也可能解密全部密文(已知部分分布合适的情况).
相关证明如下:0x05与Petya中修改Salsa进行对比Petya中修改的Salsa分析链接:http://www.
freebuf.
com/vuls/101714.
html(1)秘钥空间不同Petya中为了方便用户输入,字符必须从数字和大小写字母中选取,定义了54种有效字符:https://cert.
360.
cn来作为8位的原始秘钥,同时用低位为b不字符"z"对应ASCII(122)之和,高位为b*2来扩展成16字节的秘钥.
其实只有8个秘钥需要破解,所以秘钥空间为:54^8.
NotPetya中,一共是32个字节,但是由于清零了一半,所以一共是16个字节需要破解,秘钥空间为2^128.
(2)输出数据不同Petya中采用了2字节的WORD作为数据基本长度,在输出结果中字段从2字节扩展为4个字节,其高位WORD会被填充为0,在接下来的异或操作中,就会暴露出明文的特征.
NotPetya中在核心凼数中保持着4个字节的基本长度,所以输出结果的高位丌会被填充为零.
可以正常加密.
综上两点区别,Petya可以被暴力破解,而NotPetya很难被暴力破解,Petya的具体破解代码:https://github.
com/leo-stone/hack-petya这里的破解算法引用了第三方库,"github.
com/handcraftsman/GeneticGo""github.
com/willf/bitset"0x06其他破解的可能性(1)截断差分攻击这种攻击是针对较少轮次的Salsa20,参考资料认为能攻击到8轮https://cert.
360.
cn的Salsa20,样本迚行了20轮,所以这种攻击实现的可能性小.
(2)滑动攻击这使得破解Salsa20在理论上存在可能,参考文献里也给了具体的算法来计算.
0x07参考文档[1]www.
freebuf.
com/vuls/101714.
html[2]穆昭薇.
流密码算法Salsa20的安全性研究[D].
西安电子科技大学,2011.
CloudCone 商家也是比较有特点的,和我们熟悉的DO、Vultr、Linode商家均是可以随时删除机器开通的小时计费模式。这个对于有需要短租服务器的来说是比较有性价比的。但是,他们还有一个缺点就是机房比较少,不同于上面几个小时计费服务商可以有多机房可选,如果有这个多机房方案的话,应该更有特点。这次我们可以看到CloudCone闪购活动提供洛杉矶三个促销方案,低至月付1.99美元。商家也可以随...
iON Cloud怎么样?iON Cloud是Krypt旗下的云服务器品牌,成立于2019年,是美国老牌机房(1998~)krypt旗下的VPS云服务器品牌,主打国外VPS云服务器业务,均采用KVM架构,整体性能配置较高,云服务器产品质量靠谱,在线率高,国内直连线路,适合建站等用途,支付宝、微信付款购买。支持Windows server 2012、2016、2019中英文版本以及主流Linux发行...
腾讯云双十一活动已于今天正式开启了,多重优惠享不停,首购服务器低至0.4折,比如1C2G5M轻量应用服务器仅48元/年起,2C4G8M也仅70元/年起;个人及企业用户还可以一键领取3500-7000元满减券,用于支付新购、续费、升级等各项账单;企业用户还可以以首年1年的价格注册.COM域名。活动页面:https://cloud.tencent.com/act/double11我们分享的信息仍然以秒...
勒索病毒补丁为你推荐
SCProutepreloadedbaidu模块iphone更新iphonewin10关闭445端口win10家庭版怎么禁用445端口iphonewifi苹果手机怎样设置Wi-Fi静态IP?联通版iphone4s苹果4S移动版和联通版有什么不同重庆电信宽带管家重庆电信宽带安装收费google搜图google的直接搜索图片的功能为什么没了杀毒软件免费下载2013排行榜现在有那些杀毒软件是好用又免费的
网站域名备案 smartvps stablehost 外国空间 realvnc 搜狗12306抢票助手 一元域名 京东商城双十一活动 全站静态化 vip购优汇 工信部icp备案号 世界测速 shopex主机 域名与空间 免费的域名 免费个人主页 阿里dns 免费获得q币 windowsserver2008 西部主机 更多