记录黑客技术中优秀的内容,传播黑客文化,分享黑客技术精华

卡巴斯基发文声明:我们不需要“ExPetr”颁发的自由通行证

2017-07-14 20:10

卡巴斯基7月13日发表了一篇文章,就最近讨论的比较激烈的一个话题进行解释,事情是这样的,有人发现“如果安装了卡巴斯基的产品,ExPetr恶意软件就不会覆写特殊的恶意代码去执行加密 MFT和MBR”。针对这一情况,看官们脑洞大开,甚至有些人认为这其中有阴谋,不过也有些人认为阴谋论的说法毫无依据。

那么究竟发生了什么事? “代码不会撒谎”,卡巴斯基安全研究人员对 ExPetr 感染/擦除 MBR 的有关代码进行详细的分析,并写成此文。事实胜于雄辩,相信读者看完之后,自会有评断。

简而言之恶意软件主要有以下这些动作:

  • 检查管理员权限;
  • 列举正在进行中的进程;
  • 根据检测到的进程,初始化一个特殊的运行时的配置;

根据此运行时配置,恶意软件执行选定的分支;

图1:恶意软件的主函数(代码示例)

图2:恶意软件“检查权限和进程”的函数(代码示例)

一个有趣的事实是,恶意软件会试图寻找几个正在运行的进程(它会计算正在运行中的进程名称的散列值,并将其与硬编码中的几个值进行比较)

图3:枚举正在运行中的进程,比较Hash值(代码示例)

最有趣的部分发生在这里:

图4:恶意程序感染/擦除MBR 的逻辑(代码示例)

上述代码中,可以执行两个恶意函数:

  1. InfectMbr这个函数将使用GoldenEye的加密代码感染 MBR,强制重启之后,此代码将对驱动器上的主文件表(Master File Table,即MFT)进行加密。
  2. WipePhysicalDrive这个函数会覆盖磁盘的前10个扇区,用随机的垃圾数据填充。

让我们来详细的描述一下这两个函数执行的条件:

  1. WipePhysicalDrive函数被启动的条件:
  • RuntimeConfig 不是某个特殊点(当恶意软件检测到exe正在运行时会发生);
  • InfectMbr函数无效/失败

初次感染后,恶意程序的执行情况如下图所示:

图5:恶意程序执行的条件判断(图解)

这里,需要重点补充一些内容:

  1. 无论avp.exe 进程是否在运行,WipePhysicalDrive都将被启动。当恶意软件无法将恶意代码写入 MBR时,就会调用WipePhysicalDrive。
  2. 无论 MBR 是否被恶意代码感染或被随机垃圾内容覆盖,恶意软件都会尝试使用 AES 和 RSA 算法和攻击者的公钥对受害者的文件进行加密。

总的来说,ExPetr幕后的集团似乎建立了一个恶意程序的“石头汤”(这是一个典故,寓意着每个人都奉献一些东西,就会产生奇妙的结果),其中融合了旧代码、新代码、测试检查和一些不同寻常的代码。例如,程序中有一个特殊的条件模块,AES文件加密功能根本无法运行,条件判断结果总是错误的,就好像它的功能还没有写好,就被拿出来用了。

你可能会奇怪,为什么这么匆忙?对此,我们也不知道确切答案,不过猜测有几种可能,其中一个可能是恶意软件制作者在努力的搭上“EternalBlue/EternalRomance”的火车,WannaCry事件之后,很多结构开始给自己的windows打补丁,修补这些漏洞,这样做有效地缩小了攻击者可以利用的机会窗口。所以,ExPetr的作者可能是想在这些漏洞被修补之前,尽可能多的感染一些目标。

尽管匆忙,但是攻击者显然意识到了我们的技术(以及其他安全公司的技术)在打击此类勒索软件方面是非常有效的,特别是System Watcher。System Watcher会收集运行中进程的可疑工作,并对可疑行为进行打分,生成一个风险分数。比如当一个程序在内存中读取了一个完整的文件,之后又写了一个大小相同但格式不同的文件,而后删除原始文件时,这个程序的风险分数就会增加。又其他类似的恶意行为时,分数会增加;相反,行为良好时,分数会减少;如果发生多次恶意操作,分数可能就会达到一个阈值,这表示确实发生了恶意事件。在这种情况下,System Watcher会警告用户,要求终止违规进程并恢复数据。

ExPetr的作者使用了多种对策来反抗这类系统监控技术。其中一个策略就是:如果判断到卡巴斯基的产品正在运行,那么就禁止GoldenEye加密代码写入 MBR。这样做是为了防止风险分数过高而过早的被终止掉。事实上,恶意软件制作者似乎投入了大量的精力试图绕过我们的产品并瞄准我们的用户,这意味着他们非常担心被阻止。然而,这些匆匆忙忙拼凑出来的、套用了一大堆黑客理论的恶意程序似乎并没有起到太好的作用。System Watcher依然会被触发,阻止恶意软件加密文件,终止进程并撤销更改。

最终,尽管已经被ExPetr瞄准,但是我们的用户得到了适当的保护。

那么,为什么我们要专门写一篇文章来解释这件事情呢?

恶意程序代码越来越复杂,而且内置了很多绕过反病毒产品的策略,这就导致人们很难全面的理解当下这些恶意软件的全部功能,也就很容易受骗,误以为某些代码检查是给了卡巴斯基用户一个自由通行证。事实上,恶意软件制作者的意图是绕过System Watcher的雷达。不过最终,它失败了。

我们的用户不需要来自ExPetr的自由通行证,我们的安全产品已经为用户提供的这些功能。


知识来源: www.mottoin.com/103312.html

阅读:129162 | 评论:0 | 标签:安全报告 ExPetr MBR exp

想收藏或者和大家分享这篇好文章→复制链接地址

“卡巴斯基发文声明:我们不需要“ExPetr”颁发的自由通行证”共有0条留言

发表评论

姓名:

邮箱:

网址:

验证码:

ADS

标签云