遭遇勒索软件应该怎么办 被勒索软件“绑架”了咋办
创始人
2024-02-12 13:22:37
0次

在网络技术不断发展的同时,一系列的网络恶意软件也在不断衍生。勒索软件是黑客用来劫持用户资产或资源并以此为条件向用户勒索钱财的一种恶意软件。

勒索软件

Cylance高级威胁研究员Derek Soeder在本文中与大家分享了如何对勒索软件进行逆向工程以恢复加密用户文件的密码。下面我们来看看Soeder都做了哪些操作,来恢复被勒索软件“绑架”的用户数据。

挑战勒索软件

2013年初,有一家机构向我们寻求帮助,请求恢复他们被勒索软件ACCDFISA感染的服务器中的数据。这个恶意软件已经仔细扫描了每个驱动器上的每一个文件,并且对所有重要文件进行了恶意加密。想要从备份恢复完全是不可能的,因为服务器上的备份驱动同样已经安装了恶意软件。这真的是一场完败!

这个恶意软件让每个文件变成了一个包含加密RAR的自解包程序,同时文件名带有指令:(!!解密电子邮件id…到…@…!!).exe。

这个变体声称使用了256字符随机生成这一高级加密标准.256对每个“受害者”进行单独加密,同时攻击者可以远程存储这些密码。据称这种加密方式可以安全地删除所有未加密原文件以及密码文件,来对恢复硬盘的努力进行阻碍。

试图找到解压软件加密中的一个漏洞似乎并不是最有效的解决思路;相反,我们要把注意力转向破解密码上。为此,我们需要找到创建密码的代码。

找到密码生成器

在对受感染服务器的驱动副本进行反复查看之后,我们发现恶意程序和一些奇怪的文件可能有关系。我们发现微软Sysinternals的删除工具(可以永久删除文件)、一个“NoSafeMode”库以及一个用于自解包程序的RAR实用程序。而RAR实用程序则成为我们进行逆向工程的起点。

这个实用程序接受加密秘钥作为一个命令行参数,所以我们猜测能够通过回溯用于启动的恶意软件代码,从而找到密码生成器。

找到密码生成器

首先,我们在一次性系统中运行此勒索软件。我们用调试器来拦截生成过程的调用,启动RAR实用程序,伪装成svchost.exe。这样我们就能看到勒索软件执行的每个命令,以及最终用于加密文件的密码。截获的密码为aseT322B2XgM(mC0…有57个字符长,大小写、数字、标点符号混合通过一个点击动作就随机生成)。而以aes开始的密码可能是巧合,或是有意而为的点缀。如果是故意的,那么我们期望可以找到勒索软件代码中的字符串。当我们打开勒索软件反汇编程序时,我们发现不只是aes,而是aesT322。我们因此知道密码实际上是aesT322以及后面大约50位随意生成字符。

勒索软件反汇编程序

我们知道截获的密码不一定与加密客户文件的密码相同。但是我们已经知道一些线索来指导我们下一步逆向工程:我们可以寻找密码本身或者碎片,寻找可能用于生成密码的字符表,以及寻找用于构建命令行密码部分的字符串。

我们使用调试器寻找勒索软件运行时被分配到全局变量的值,通过逆向工程,我们确认了一个全局变量:一个是aesT322前缀字符串,另一个是50位随机字符的字符串,以及57位的完整密码。

搞清楚生成器工作原理

我们了解了很多关于勒索软件的工作原理,但目前我们不认为这会对受害者有所帮助。实际上,我们排除了只是一个固定字符串(即简单密码)被用于所有情况的可能,我们仍然在探索的路上。

通过在程序中跟踪每个实例中的三个变量,我们发现一个循环,就是随机选择的50个字符来自一个由26个小写字符、26个大写字母、10个数字以及16个标点构成的78个字符表,其中有重复。计算机很难实现真正的随机。想要打败加密的一个方法便是攻击“伪随机数生成器”(PRNG),而这就是我们真正要做的。

最终我们发现了初始化的PRNG,或说是去了“种子”的,这是一段带有来自执行此代码线程标识符的32字节数字,以及以毫秒为单位系统运行的时长。这些都是可以预测的值。由于32字节的种子,我们现在了解到最多可能有40亿种不同密码,而非真正从78个字符中随机产生出50个字符而存在的天文数字般可能性。

原因是之前提到的,即使在随机行为中计算机也通常运用了僵化的决定方式。而对于任意给定的种子值,PRNG可以在任何时间从初始值以相同顺序、相同方式、产生相同的数字。而种子是32字节的数字,那么就存在0到10亿的可能性,因此相同初始状态存在的可能领域是大大受限的。

猜密码的过程是十分耗时的,而这正是我们接下来要做的。

猜密码

一个包含40亿个密码的列表是恐怖的。但我们知道了种子是依赖于一个线性ID的(它是四的倍数),通常少于10000和系统正常运行周期。在49.7天的进程中,正常运行时间将从0数到40亿,然后环绕一圈再次回到0。我们需要了解服务器在被攻击之前运行了多久——可能通过一个文件时间戳或一个时间日志条目——来缩小可能性的范围。但是我们发现了一些更好的情况。

猜密码

在所有奇怪的文件中,我们发现一个在ProgramData目录下的stppthmainfv.dll,带有21行每行含有8个随机字母。我们决定逆向操作,用“暴力”破解所有存在可能的种子值,找出哪个可能让PRNG产生出这21行的。由于这是一个32位的字符串,我们知道在一台正常电脑上搜索应该不会超过几个钟头。这样就会比使用所有潜在密码破解RAR实用程序速度快得多。

一个单核CPU4秒钟便可测试31956209种存在的可能性,同时找到stppthmainfv.dll 中相同顺序的字母生成的31956208个种子值。我们生成了大约12MB的密码列表与种子值进行测试(比测试236GB大小的40亿中可能要强太多了)。我们通宵运行了一批程序,针对RAR实用程序进行密码逐个测试。

当清晨降临,我们已经获得了那个我们一直在等待的——正确密码。实验成功了!最终,看我们成功从勒索软件中夺回了用户的数据。

相关内容

热门资讯

中学换饮水机滤芯 全校每班平摊... 中学换饮水机滤芯 全校每班平摊98元  【中学换饮水机滤芯 全校每班平摊98元】2026年9月8日,...
外交部回应“印方建议调查小米公... 外交部回应“印方建议调查小米公司”  【外交部回应“印方建议调查小米公司”】2026年9月10日,外...
史上最长16天中秋国庆假期运输... 史上最长16天中秋国庆假期运输来了  【史上最长16天中秋国庆假期运输来了】2026年最贵的三个工作...
知识“沉”下去,防线“筑”起来...   在环球港一家餐厅等位时,市民王先生顺手扫了桌台上的二维码,利用碎片时间完成了一场消保知识问答“挑...
刘翔称已买断 获49.4万买断...   刘翔称已买断 获49.4万买断费  【刘翔称已买断 获49.4万买断费】9月10日,刘翔发文称9...
人类史上首次!老人比小孩多了 ...   人类史上首次!老人比小孩多了  【人类史上首次!老人比小孩多了】近日,美国人口普查局报告显示,全...
奶奶把男童放车篓多次拍头 已被...   奶奶把男童放车篓多次拍头 已被批评  【奶奶把男童放车篓多次拍头 已被批评】9月8日,广州荔湾区...
汇正财经贺峰专业能力怎么样?从...   评价“汇正财经贺峰专业能力怎么样”,不宜用一两个标签下结论,而应从可观测的维度入手:研究体系是否...
汇正财经服务费能退吗?透过实践...   汇正财经服务费能退吗?一些投资者在选择投顾服务时,会关注这一问题,但对于持牌机构而言,服务的核心...
央视曝光后 安徽山东河南连夜核...   央视曝光后 安徽山东河南连夜核查  【央视曝光后 安徽山东河南连夜核查】“查到最多挨两句训,罚点...
彻底告别LPL,曾是Chovy... 大家好,S16赛季的比赛已经正式开始了,相信绝大多数的玩家都关注了最近一段时间的对抗,各大赛区的比赛...
任天堂《塞尔达传说:时之笛》重... IT之家 9 月 8 日消息,任天堂今天在新一期直面会公布《塞尔达传说:时之笛》重制版游戏的实机演示...
两兄弟起家,总收入超4亿:UE... 好的创意,第一次最好用。 文/依光流 今天,葡萄君不得不跟各位聊聊《致命视角(Bodycam)》这款...
资讯:IG零封LGD花絮公开!... 根据雷竞技娱乐记者第一手资讯:IG以3比0横扫LGD,不仅闯入了败者组决赛,更重要的是锁定了冒泡赛胜...
有颜有料《剑侠世界4:无限》武... 气剑纵横,伞琴济世。西山居剑侠世界系列收官之作《剑侠世界4:无限》10月15日全平台公测,今日正式曝...
赛季末对抗路上分推荐,仅有3位... 这篇文章我们来聊一下赛季末的对抗路应该有用什么英雄去上分,这次的推荐就只推荐比较强力的了,可能英雄的...
西山居新游《剑侠世界4:无限》... 一代人的江湖,就是剑侠!西山居打造的剑侠世界系列收官之作《剑侠世界4:无限》将于10月15日全平台公...
Rookie通宵排位备战LGD... LPL季后赛精彩赛事依旧在火热进行中,今天的一场大战,网友们都期待已久了,IG的生死战,IG对阵LG...
为了省钱,付不起宣发费用的FP... 同行并不永远是冤家。 北京时间9月4日凌晨2点,首届“FPS游戏展”(The FPS Games S...
昔日爆款手游《旅行青蛙·中国之... 快科技9月8日消息,还记得当年刷屏朋友圈的《旅行青蛙》吗? 这款手游在2018年问世后迅速成为现象级...