通过仿真来消除恶意软件

2013年7月2日
尤金•卡巴斯基

首先,回顾一下…

百分之百担保的保护根本不存在。到目前为止你可能已经知道得很清楚了。事实上,即使是最可靠的杀毒软件有时也会阻止不了专业袭击。这个消息已经够糟了。更坏的消息是劣质的杀毒软件会更频繁地绕过很多攻击。

如果想要,高度专业的罪犯可以破解任何程序;值得庆幸的是,这类网络Moriatys并不多见。在大多数情况下,网络暴行往往是通过普通的程序员实施的,他们似乎混淆了是非观念 – 被贪婪所吸引并以为他们可以逃脱罪责(哈!)。这些投机者通常不具有足够的犯罪网络技能以成功破解最先进的大型防御,但他们也不止能够进入完全未被保护或安装了具有保护漏洞的计算机。唉,在世界上这样的公司多得是。

这一切的基本逻辑相当简单:

显而易见,保护愈强 – 防御愈强。与此同时,攻击愈专业- 可以攻破的防御愈强。

现在,有25亿潜在的受害者,这种逻辑导致了下列经济学:

犯罪分子不需要绞尽脑汁去找到一把超巨型的万能钥匙,从而闯入超巨型的安全保管库(尤其是当这个超巨型的安全保管库存放的往往是一些真正令人毛骨悚然/怪异/危险的东西,则最好不要知道)。其实破解一个更实际的网络往往更加简单和便宜,例如邻居的网络,因为他们的抵抗力必然要轻得多,而且他们的存放处更易察觉。

所以你得明白:一般的黑客,没有必要去惹上准备和开展大型专业攻击的麻烦。或将其犯罪重点从Windows切换到Mac也没有多大意义。对他们来说更有效的方式是进行“地毯式轰炸” – 无需遇上很多的挑战或耗费过多的脑力且不需要精确位置进行攻击,从而影响尽可能多的受害者。

 

防护愈强,黑客就愈不感兴趣。他们不会费心去攻破防护,只需在其他地方找到更易受攻击的其他受害者即可。

现在,让我告诉你一个其他功能,该功能使得网络罪犯放弃攻击你公司转而攻击其他没有此功能的其他公司。没错,是时候介绍另一个在我们的防病毒引擎罩下的让人大开眼界的功能了,并让你知道更多如何让你的任务栏上的字母K阻止网络侵入者 – 通过仿真保护防止未来威胁。

1

我用更多是因为我在前文网页中已经谈到过仿真。有些人可能没有看过那篇文章,我建议你们快速浏览一下。下面是一个快速简介,我知道你们中有些人忙得像蜜蜂一样团团转。

简单地说,仿真是一种自动检测全新的恶意软件的方法 – 通过分析可疑程序的行为而不实际运行它们 – 使他们不对计算机造成伤害。但我们如何才能无需启动一个程序而去分析它呢?这正是仿真的作用。仿真器可以仿真程序的运行 – 而无需实际运行它。仿真器创建一个特殊的虚拟环境,使程序在该环境下运行。这有点像在试管中测试/分析一个(人)身体的病毒(如一种流感),而不是通过一些被流感击倒的可怜人的静脉来测试/分析。总体而言,这样可以减少对受害的个体或计算机的伤害,即,对主机的环境。

有了仿真,我很高兴向大家报告,恶意软件将无处藏身!嗯,应该说几乎……只是还有一个大的“但是”:

最机智狡猾(最危险)的恶意程序已经学会如何识别其所在的环境是否为人工测试环境,并且只要他们无法找到防御的薄弱环节就会自动改变他们的攻击向量。

我们这里谈论的是特殊的抗仿真器招数。

例如:开展非法功能,跟踪处理器寄存器的变化以检查环境的真实性,分析错误代码,在内存中搜索指定的代码,利用“逻辑炸弹”使仿真器进入无限循环,等等。

只要一招有效,恶意软件就知道它在一个测试环境内,并迅速化装成一个看似良性的程序装成一副老实样,或者干脆自行关闭。然后,在后台,偷偷摸摸地试图使用不同的逻辑继续尝试不知不觉地跳过仿真器进行攻击。

在这方面多年的战斗中双方轮番占上风,双方反反复复沿袭着经典守旧的拉锯之战,一方想出新的攻势另一方又予以反击,只是这些没有给所有普通的用户带来一点欢笑。由于这场战斗过于漫长和令人厌烦并耗费了大量的资源,一些专家们认为仿真作为一项有用的反恶意软件技术的时日无多了。我们还是设法找到一种方法在这个问题上笑到最后。

 

防护愈强,黑客就愈不感兴趣。他们不会费心去攻破防护,只需在其他地方找到更易受攻击的其他受害者即可。

很明显,想要赢得这场战斗只需创造一根类似于人体(真实计算机环境)的试管(测试环境)。

嗯,我不知道克隆时代的生物病毒,但至于电脑恶意程序理论上是可能的;然而,其非常昂贵且真的难以付诸实践。为什么呢?主要是因为需要开发一个全新的操作系统 –  一个与原操作系统相当的操作系统。而且这个操作系统需要在每个可疑文件上运行。试想一下,这一操作将需要多少系统资源啊!

因此我们另辟了一条蹊径 – 一条从未涉足的旁路…

现在,绝大多数的恶意程序运行在用户级别的操作系统中。然而,对于系统调用(例如,文件的读出/写入),它们与系统的内核在系统级别进行互动。这两个级别之间有一个很大的差异:在用户级程序中可以看到对环境所做的更改(并因此使用抗仿真器技巧),而在系统层面 – 他们却不能看到。

因此,我们将所有复杂的反恶意软件仿真技巧集中在系统级别,而在用户层面,我们专注于实现与原环境相似的最高可能性。其结果是:一个近乎完美的使“试管”变成无形的解决方案诞生了!

具体来说,我们正确地模拟所有的API功能调用的执行,然后移动到系统级别进行深入的反恶意软件分析。因此,恶意软件在用户级别得到一种在原始环境而不被处罚的感觉 – 实际上是一种虚假的安全感 – 最后暴露出其恶意本质和意图。中了!

唉,与其他任何技术一样,我们改善了的(顺便说一下,超稳定)模拟器会在很大程度上减慢计算机的性能,所以我们增加了一个智能的硬件加速器,从而选择性地绕过基于软件的仿真和执行一些真正处理器上的程序位。我不能透露更多细节了(专利仍在申请中!),我只能说,我们提出的是技术二重奏,比传统的模拟效果更快!又中了!

阅读评论 2
评语 2 请留言

    李波

    帮助············

    Sofia Podosenova

    如何帮助?

请留言