查看: 23639|回复: 162
收起左侧

[技术探讨] Microsoft AntiMalware家族,绝对利刃之动态启发和动态转换,MA的动态防御体系

  [复制链接]
驭龙
发表于 2013-10-11 12:57:00 | 显示全部楼层 |阅读模式
本帖最后由 驭龙 于 2013-10-12 16:19 编辑

本帖内容仅供参考,如有错误请多多包涵,本人是菜鸟级的业余爱好者,不是专业人士,不可能没有错误,还望见谅。

现在为大家揭秘的是驭龙回归系列的最后一篇帖子,由于涉及到的技术层面太多,难免有遗漏和错误,同时部分英文为机器翻译,请各位见谅。

之前几篇的链接:
Microsoft AntiMalware家族,DSS动态签名服务的静态与动态云查杀
Microsoft AntiMalware家族,NIS网络检查系统的全新解析,独特的网络实时行为监控
Microsoft AntiMalware家族,MSE预发行版本,因何而存在?MA架构解读
Microsoft AntiMalware家族,MSE、SCEP、FEP、WIEP、WD共同的起源,MA反病毒客户端

Microsoft AntiMalware的动态防御:
很多人认为MA没有主动防御,实际上MA是拥有属于自己的防御体系的,涉及到的技术很多,包括基于基因和启发的行为检测的动态启发,以及代码仿真,还有Microsoft自家的Dynamic Translation 中文名为动态转换的技术,当然不能忘记之前帖子说的动态签名服务的动态云拦截。

Forefront Endpoint Protection 2010 uses system behavior and file reputation data to identify and block attacks on your systems from previously unknown threats. Detection methods include behavior monitoring, emulation, and dynamic translation.

Forefront Endpoint Protection 2010 使用的系统行为和文件信誉数据,来识别和阻止以前未知的威胁,使您的系统免受攻击。检测方法包括行为监控,仿真和动态转换(Translation是翻译,但称为转换更贴切)。

当初很多人认为MA的行为监控是一个普通的传感器,发现可疑行为不具备拦截能力,而是链接到Microsoft Malware Protection Center既微软恶意软件保护中心的云服务器,调用动态签名服务来拦截,而上面的官方介绍被看做是噱头,但事实真的如此吗?(各位先不要急着下结论,请耐心看完本帖

为了本帖,我前几天去请样本区的墨家小子帮忙,收集了一些样本,我从中提取了四个(其中也有上次消停提供的样本)双击以后被MA拦截的样本,来进行测试。

注:几个样本不能说明任何问题,仅供参考,不代表最终结果!

我是使用半个月之前的特征库和断网测试,不存在动态签名服务和特征码查杀的情况。


逐一双击四个样本,其中一个样本释放出的DLL被特征码查杀,母体被MA动态技术拦截进程,其他三个样本全部被动态技术直接拦截。








现在将System Center Endpoint Protection的行为监控关闭,再次双击这四个样本,其中两个Zero Access样本成功自我删除,SCEP除了特征码拦截之前的那个DLL衍生物之外,毫无反应。








通过如上的简单测试,可以简单的说明,Microsoft AntiMalware家族的行为监控,是拥有拦截能力的,但是,仅仅是拦截高危的威胁行为才会拦截,如果是低威胁的可疑行为,MA的行为监控,还是不拦截,仅仅是调用云服务器,来检测动态签名服务的动态签名查杀。

为了让测试更可靠,我借用火绒剑,来记录了开启行为监控和关闭行为监控的双击样本记录,其中尾数是1的TXT是开启行为监控的记录,2是没有开启行为监控的记录,我筛选掉了对注册表的获取和打开选项,要不然记录太大了。
该文件中还有事件日志的记录,其中是我多次测试的结果,其中有低威胁的行为监测记录。




在测试过程中,事件日志还记录了行为监控的低威胁(火绒剑驱动触发中级别的仿真)的行为记录,是通过动态仿真识别出来的,当然这些可疑行为,行为监控是不拦截。






通过如上测试,大致可以确定Microsoft AntiMalware的行为监控是具有强大的拦截能力,它是一个混合型的动态防御体系,其中包括:以基因和启发为基础的行为分析和代码仿真,以及动态转换技术,当然还有文件信誉,这是Microsoft AntiMalware三代的突破技术。

可疑文件的上报,MA的信誉服务,在MA四代时得到大升级。



绝对利刃之动态启发:
在MA的动态防御体系中,动态启发式分析是最重要的部分之一,只有当它确定威胁的时候,MA才会拦截运行中的样本,但是,它是拦截的内存中分析完成的威胁,因此动态启发报的威胁,样本本体不会被MA隔离或者删除,动态启发报的威胁是运行中的进程ID,这就是MA不会删除威胁本体的原因,它只是解决掉运行中已经分析完成的恶意进程行为。

当初在2009年的时候,Forefront Client Security 2.0代号:Stirling 之所以被取消(应该说是推迟发布,之后正式版为Forefront Endpoint Protection 但是版本却是新一代的MA 3.0而不是之前的MA 2.0),就是为了添加新技术,其中就包括基于行为技术的动态签名服务和全新的高级启发式(下面说补充Stirling的高级启发式,但是当时的Stirling并没有发布,仅仅是Beta版,那时候该高级启发式技术是全新的技术)等先进技术。

Additionally, we are investing significantly in a behavior-based technology called Dynamic Signature Service to help deliver more comprehensive endpoint protection for zero day attacks.  This will complement the "Stirling" suite's advanced heuristics, dynamic translation and real time application scanning for kernel level malware with a sophisticated approach to on-demand threat mitigation.

此外,我们正大力投资在基于行为的技术称为动态签名服务,以帮助端点实现更全面的零日攻击保护。这将补充“Stirling”套装的高级启发式扫描,动态转换和实时应用程序的内核级别恶意软件扫描,用复杂的方法,按需缓解威胁。


现在的Microsoft AntiMalware 4.X代,动态启发式分析已经变得更强大了,其实MA的启发式技术真的是不错的。

在动态启发报毒的时候,威胁路径被进程ID取代。




接下来,我把SCEP的实时保护中“监视计算机上的文件和程序活动”,也就是常规的文件监控关闭,再次双击威胁样本,其中有两个样本依然被动态启发式分析完成解决掉了,但是,另外的没有被报。




尽管动态启发式分析是独立的启发式行为基础算法,但它还是与威胁特征库签名的基因相连动的,动态启发虽然能够独立使用,不过配合特征基因才能达到更好的效果。


多面的行为监控:
上面提到基于行为技术的动态签名服务,当Microsoft AntiMalware三代发布的时候,行为监控的官方介绍是这样的。
实时系统行为监视
Microsoft AntiMalware 利用一个由已知恶意软件的特征和行为组成的定义数据库。实时系统行为监视功能使用传感器来检测可疑进程、文件、注册表和内核操作,以帮助识别新威胁。并且会通过每次的月度更新添加新传感器。基于通过我们的动态转换技术实现的模拟行为的泛型和启发式规则集使单个签名能够检测数以千计的变体。Microsoft 安全响应中心每月会从世界各地 6 亿多台的 PC 中收集威胁,并进行评估。每天多次编写和部署新签名,以便在需要时可以使用这些签名。


官方还有另一句话。
•New Antivirus Engine -  Highly accurate and efficient threat detection protects against the latest malware and rootkits with low false positive rate.   
•New behavioral threat detection -  Protection against “unknown” or “zero day” threats provided through behavior monitoring, emulation, and dynamic translation.
•Dynamic Cloud Updates: On-demand signature updates from the cloud for suspicious files and previously unknown malware

•新的杀毒引擎 - 高精度和高效的威胁检测抵御最新的恶意软件和Rootkit,同时误报率较低。
•新的行为威胁检测 - 对“未知”或“零日”的威胁,通过行为监测,仿真和动态转换,提供保护。
•动态云更新:按需签名更新,从云可疑文件和以前未知的恶意软件。


由此可见,行为监控不仅仅是一个动态签名服务的传感器而已,加上动态启发和代码仿真以及基因和启发式的分析,全部包含在实时监控中的行为监控,正确的说实时监控中行为监控是包含两部分的,分别是行为监控传感器+动态签名服务和基因、启发动态分析+代码仿真+动态转换。

行为监控+动态签名服务的完整官方功能图解。


正由于组成Microsoft AntiMalware行为分析技术的是两部分,这就是之前为什么大部分人都认为MA的行为监控仅仅是可疑行为的监控器,而不是行为阻断的原因,现在大家是不是明白帖子一开始的测试,为什么在关闭行为监控以后,没有动态启发式分析和动态转换进行的拦截原因,实际上说MA行为监控没有拦截能力的人并没有错,因为毕竟动态签名服务那部分的行为监控真的是传感器,没有拦截能力,因此在MA的行为分析问题上,并没有谁对谁错的情况。


奇特的动态转换技术:
说到动态转换技术,我可真的是有很多感触,两年半之前,我曾经分析过动态转换,但是,当时的官方资料不完整,我所解读的DT是不完整的,这次我将完整的解读DT的工作原理跟用途,首先我要说的是DT不是Microsoft AntiMalware的唯一虚拟技术,MA还有虚拟技术是Virtual Files System简称VFS的虚拟技术,它是可以对文件进行静态虚拟分析的技术,当然VFS是跟DT有密切关系的,也就是二者也可以算是一体,因为VFS深度分析的时候,就会动用DT,而DT也离不开VFS,因此MA的虚拟化能力还是不错的,但不是那种保护系统的功能。

当初Microsoft说Dynamic Translation 中文名为:动态转换,缩写DT是独家技术,工作原理是这样的。

一个可疑的文件(未知威胁)在系统上试图运行的时候,MA的实时保护驱动(应该是MpFilter驱动)会截获该未知威胁,然后使用DT技术,在一个虚拟环境中,来通过DT技术,模拟未知威胁的代码行为,释放出未知威胁的行为以后,基因和动态启发式分析,将分析基于行为的特征,确定为未知威胁为恶意文件,MA将阻止未知威胁的运行,拥有DT替换掉了未知威胁的操作,未知威胁不会对系统产生破坏。*(我认为有不足,完全不如滚回威胁操作好,本帖二楼有吐槽)

动态转换替换未知威胁真实操作示意图。


大家注意上图中左侧绿色标记里的未知威胁行为操作代码,被动态转换技术安全的在虚拟环境中由DT的代码替换,成为右侧橙色标记中的虚拟操作,这样未知威胁的行为将暴露无遗,同时操作行为又不会影响真实的系统,动态启发式分析虚拟环境中的未知威胁真实行为,便可大大的提高动态启发的效果,发现未知威胁,并且拦截威胁的运行。

官方的DT操作流程示意图。


我菜鸟级的翻译一下操作流程示意图。


现在完整的解读一次“基因和动态启发行为分析与动态转换技术的协同工作,流程图。

官方原文流程图。


我简单翻译的流程图。*(我英语非常差,如有错误,请多多包涵)


一个可疑的文件(未知威胁)在系统上试图运行的时候,MA的实时保护驱动(应该是MpFilter驱动)会截获该未知威胁,然后使用DT技术,在一个虚拟环境中,来通过DT技术,转换未知威胁的代码行为,释放出未知威胁的真实威胁行为以后,基因和动态启发式,将进行基于行为特征的分析,确定为未知威胁为恶意文件,MA将阻止未知威胁的运行,由于过程是在虚拟环境中完成,真实系统受到的影响不大。

动态转换技术的大致工作原理和作用,差不多就是这样了,我很期待着它的升级,现在的DT虚拟化还是有一点不足之处,而且检测的能力还是不如其他家的主动防御强悍。

关于Microsoft AntiMalware的动态防御体系,这次就先说到这里,本帖中如有错误,还请各位见谅,技术大牛请勿见笑。

当然本帖的内容,并不是MA的全部技术,仅仅是一部分,因为MA一直在进步,本帖的介绍是针对于Microsoft AntiMalware 4.4之前版本,并不代表着以后的版本,MA的技术一直在前行,今后必然还会有新的变化,让我们一起期待着Microsoft AntiMalware的不断进步吧!


注:本帖仅代表我个人看法,与卡饭和特殊组无关,如有转载,请注明卡饭会员驭龙原创内容!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?快速注册

x

评分

参与人数 8人气 +10 收起 理由
Ricty + 1 感谢解答: )
88865ff + 1 版区有你更精彩: )
尘梦幽然 + 1 版区有你更精彩: )
HEMM + 3 版区有你更精彩: )
moby023 + 1 长知识了

查看全部评分

驭龙
 楼主| 发表于 2013-10-12 16:19:23 | 显示全部楼层
本帖最后由 驭龙 于 2013-10-20 12:39 编辑

本楼说一下Microsoft AntiMalware动态防御体系的不足之处,由于动态启发发现的未知威胁,仅仅是拦截进程行为,不删除样本母体,由于没有对威胁的滚回行为操作,导致写入启动项的未知威胁在下次启动系统的时候重新启动,这就是死循环现象,只有特征库更新该未知威胁,MA才会删除样本母体和启动项,这是目前MA动态防御体系的最大不足,希望以后的Microsoft AntiMalware能够解决这个问题,变得更强大吧,现在真的不是非常强大。
飞霜流华
发表于 2013-10-12 16:24:53 | 显示全部楼层
驭龙 发表于 2013-10-12 16:19
本楼说一下Microsoft AntiMalware动态防御体系的不足之处,由于动态启发发现的未知威胁,仅仅是拦截进程行为 ...

精华要申请,今晚新人区例会之后,我会提交国外区会议室。
驭龙
 楼主| 发表于 2013-10-12 16:28:09 | 显示全部楼层
飞霜流华 发表于 2013-10-12 16:24
精华要申请,今晚新人区例会之后,我会提交国外区会议室。

那我可等你好消息了,哈哈
飞霜流华
发表于 2013-10-12 16:28:40 | 显示全部楼层
驭龙 发表于 2013-10-12 16:28
那我可等你好消息了,哈哈

你可以先去贿赂小米

评分

参与人数 1人气 +1 收起 理由
驭龙 + 1 我不贿赂的,但我先给你发HB吧,呵呵

查看全部评分

驭龙
 楼主| 发表于 2013-10-12 16:29:59 | 显示全部楼层
飞霜流华 发表于 2013-10-12 16:28
你可以先去贿赂小米

现在贿赂不好的,我还是等结果以后,再说了,呵呵
a908499916
发表于 2013-10-12 16:50:04 | 显示全部楼层
总感觉mse太弱,要是低威胁不杀,要它何用
Everlove
发表于 2013-10-12 16:52:31 | 显示全部楼层
win8单奔WD终于有底气了
biange200
发表于 2013-10-12 18:08:52 | 显示全部楼层
感觉微点的回滚技术 在对未知上 比微软要强
驭龙
 楼主| 发表于 2013-10-12 18:16:10 | 显示全部楼层
biange200 发表于 2013-10-12 18:08
感觉微点的回滚技术 在对未知上 比微软要强

不仅仅是微点,诺顿的SONAR和AVG的IDP,甚至是费尔的主防,都不错的
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|杀毒软件|软件论坛| 卡饭论坛

Copyright © KaFan  KaFan.cn All Rights Reserved.

Powered by Discuz! X3.4( 沪ICP备2020031077号-2 ) GMT+8, 2024-12-22 12:08 , Processed in 0.132481 second(s), 17 queries .

卡饭网所发布的一切软件、样本、工具、文章等仅限用于学习和研究,不得将上述内容用于商业或者其他非法用途,否则产生的一切后果自负,本站信息来自网络,版权争议问题与本站无关,您必须在下载后的24小时之内从您的电脑中彻底删除上述信息,如有问题请通过邮件与我们联系。

快速回复 客服 返回顶部 返回列表