您的位置首页 >资讯 >

一个程序多久会感染另一个程序?让我们数一数

我们将计算机病毒和设备或进程称为“被感染”是有原因的。当病毒是新病毒,程序被编译为COM文件时,感染程序很简单。该病毒将自己的代码附加到目标的末尾,并通过跳转到该代码覆盖了第一条指令。病毒发出的最后一条指令开始执行程序的常规功能,这是一种非常早期的进程注入形式。

快进现代世界,可能性更加复杂和众多。在这里举行的Black Hat会议上,来自SafeBreach的一对研究人员签约评估和减轻安全风险,他们对一个程序可以向另一个程序中注入代码的所有方式进行了详尽的调查。他们的会议要到星期四才举行,但在通报会之前我们赶上了他们。

联合创始人兼首席技术官Itzik Kotler和安全研究副总裁Amit Klein与其团队一起出发,收集,管理和演示恶意软件编码器可能破坏其他进程的所有可能方式。最初,他们认为可以找到六个或七个,但是最后总结出20种变化,最后归结为十几种。为了向大众文化致敬,该演讲的副标题为“全部抓住他们”。

全过程注入

我向Kotler提到了我对旧COM程序病毒的想法,他同意这是一个非常早期的过程注入示例。他说:“重要的是要记住,COM文件和DOS没有安全性。”“今天,Microsoft必须为所有人提供安全性。”

Kotler和Klein首先调查了用于将代码注入Windows程序的所有技术,丢弃了不再可行的技术,发现它们仍然有很多功能。

除了要提到的实际技术之外,我不会详细介绍它,除了Kotler和Klein之外,他们还创造了一个新的栈,称为Stack Bombi。在他们的Black Hat演示中,他们将发布一个名为Pinjectra的工具,该工具将实现所收集的每种技术。

谁需要它?

Pinjectra是一个开源工具,任何人都可以免费使用。精通技术的消费者可以使用它来测试安全套件的功能。企业安全团队可以对端点保护执行相同的操作。当然,恶意软件编码者可以研究代码以获得一些新想法。

我问科特勒,为什么他要把这个工具交给坏人。他回答说:“我从事进攻性安全工作已有15年了。我相信,如果我们不发布任何东西,那并不意味着坏人就不会拥有它。”“这只是意味着我们作为一个社区没有解决它。忽视现实并不能解决问题。”

他指出,Pinjectra工具没有恶意负载。如果您的安全措施无法防范特定攻击,则将显示一条弹出消息,提示“ Hello World”,仅此而已。他承认:“是的,人们可以改变它。”“但是他们几乎可以将任何事情变成邪恶。”

我问为什么微软不能仅仅修补操作系统来防止这些进程注入攻击。他说:“我当然不能为他们说话,但是这些技术可以用于合法目的。”“可能需要它们来支持旧版应用程序。某些可用于调试。在过程注入中,没有什么本质上是坏的。”

为什么您的安全产品可以做Microsoft无法做的事情?Kotler说:“您可以在安全产品中进行选择。”“您了解它的局限性。也许您知道它破坏了旧版程序,所以您禁止了旧版程序。也许该技术已获得专利,并且不适用于Microsoft。”

显然,过程注入将一直存在,因为它既有好的用途也有坏的用途。但不要惊慌。如果您使用功能强大的安全套件保护了设备,那么您将获得多层保护,可以确保您的安全。这些措施包括防止恶意代码的下载,下载后识别并删除,检测和防止其恶意行为,保护受害者进程免受操纵等。是的,有很多攻击机会,但是由于众所周知,因此防御是可能的。

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。