【转载】2010 BlackHat – 即时恶意软件分析和控制方案

转载自:http://www.leadfrenzy.net/comments.php=10&m=08&entry=entry100819-164418

############################

原标题:Goodware drugs for malware: on-the-fly malware analysis and containment

原作者:Daminano Bolzoni,Christiaan Schade 翻译:Lead Frenzy 2010 Aug

前言
每年的BlackHat大会都会有一些关于信息系安全方面的新东西出来,可能是新的攻击手段、发现了新的漏洞、新的防御方法等等。我计划有空的时候能把大部分论文或PPT都拜读一下,比较好的也顺便翻译和总结出自己的想法,以供业内人士一起分享。

现在这个是第一篇,关于如何即使分析恶意软件,并将起控制和隔离起来,无需客户端程序的支持,挺不错的想法。

注:本文的“我们”是指原文作者,“笔者”是指我本人。

原文
原文PPT地址:https://media.blackhat.com/bh-us-10/presentations/Bolzoni_Schade/BlackHat-USA-2010-Bolzoni-Schade-Goodware-drugs-for-malware-slides.pdf 
作者介绍,Daminano Bolzoni: http://www.blackhat.com/html/bh-us-10/b … ml#Bolzoni
Christiaan Schade: http://www.blackhat.com/html/bh-us-10/b … tml#Schade 

摘要

在本演讲中,我们将会展示一种新的无需在终端主机部署任何客户端的即使恶意软件分析方法,即使对那些未知的新恶意软件也会有效。我们的方法是基于这样的一个事实:恶意软件通常是以很小的代码(孢子)的方式植入目标主机,用来维持恶意软件的持续存在并下载另外的代码(蛋),蛋通常是已可执行程序或DLLs的方式存在,具有比孢子更多的功能(窃听密码,URL重定向等)。

我们的系统名为“Avatar”,实时检测尝试下载“蛋”的不成功操作,然后传回给受怀疑的恶意软件一个我们称之为“红色药丸”(简称红丸)的程序。当红色药丸程序被恶意程序执行时,首先执行一些初步的检查,然后发送父进程可执行程序到一测试用主机(例如沙盒)。在测试环境中,就可以对被怀疑的恶意程序进行实时分析了。如果发现被检测的程序确实存在是恶意程序的危险,告知红色药丸程序中断被监控的进程,这样就能有效地防止恶意软件引起的大规模感染。


原PPT分了好几个部分,以下分部分来做简要介绍。
恶意软件
在过去五年间,恶意软件已经发展成为了一种产业(笔者注:这点在国内安全界大家都心知肚明的),主要是用于网络犯罪,这也是目前互联网最紧迫的安全问题。

恶意软件最初是以一种完整的执行程序的方式进入到被感染系统中,有一些不利的方面:很难适应不同配置的操作系统;很容易被杀毒软件发现。现阶段大约有30%的恶意软件都是在运行后再下载额外的程序:“孢子”程序负责“种植”此恶意软件;新下载的程序用于收集用户名、密码、受感染的EXEs等;BOTnets就是一个很经典的例子。

当前分析和防御恶意软件的工具分为动态恶意软件分析(Dynamic malware analysis DMA)和基于特征码的杀毒软件。前者在沙盒中运行让恶意软件的样本,记录其执行的每一个动作;有些工具还支持集群,可以从已知的样本家族库中检测出新的样本;基于这个方法的工具有Anubis,CWSandbox,Malheur,Malnet等。后者也利用了动态恶意软件分析技术,用来构建和更新相应的特征码库。

DMA工具的缺点
恶意软件的作者也了解DMA工具,通过一些简单的对策就能避开或减慢DMA工具的分析:1)只在用户有效的登陆后才运行;2)在激活前等待一段时间;3)检测是否实在虚拟化环境中;4)检测已知的注册表健值;5)检测已知的IPs。而DMA工具对于上述这些执行上下文是未知的,无法做到灵活调整。

另外,DMA工具做的一般都是事后分析:用户提交样本,然后得到分析结果。这样就导致了只能提供对内部网络和终端主机的有限保护和监控;当用户提交样本时,用户可能已经中招了此恶意软件,不然用户为什么要提交样本呢,是因为用户安装的杀毒软件没有检测出来。因此,现有的DMA工具是没法做到对恶意软件的破坏做到实时保护,都需要先通过专门的手段来分析才能确认是否是恶意软件。

主要思想
因为恶意软件需要下载额外的程序,也就需要连接外部的“内容提供商”(通常是在早些时候被入侵的一些WEB服务器)。对于这些内容提供商(WEB服务器)来说,不见得是一直在线的,因此恶意软件需要执行多次下载尝试,以保证在一定的时间限度内最快的将额外的程序(蛋)下载来并执行。

如果我们可以检测到这些下载尝试,我们就可以给恶意软件提供一个精心制作的可执行程序(也就是我们所说的“红丸”),这个程序将会在终端主机上运行,做一些实时的分析,这也就是我们所谓的实时恶意软件分析;这个程序还能够用于终止其父进程,以达到有效的对恶意软件的控制和隔离。

AVATAR
原型AVATAR系统中包含有三个主要组成部分:
   1)下载检测引擎(DDE):检测失败的下载尝试;
   2)红丸生成器(RPG):将红丸打包并发回目标主机;
   3)恶意软件分析引擎(MAE):接收红丸执行后发送来的信息。

下图是AVATAR原型系统的基本架构:
  

【转载】2010 BlackHat - 即时恶意软件分析和控制方案
来源:BetaBin

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2013年4月17日
下一篇 2013年4月18日

相关推荐