查看: 4827|回复: 20
收起左侧

[微点] 主动防御一项不可能完成的任务

[复制链接]
a445441
发表于 2011-7-22 11:56:45 | 显示全部楼层 |阅读模式
首先我先说明一下我自己的立场,我认为主动防御是一项不可完成的任务。单独使用主动防御无法真正达到“主动防御”概念所描述的那样的一个状态。为什么呢?简单说是因为其主动防御标准含糊不清楚,没得具体的行业标准,可以说是理论上可行而技术上不可行的东西。看了众多贴子,有人支持微点,有人质疑微点。众说分云,因此我们需要从主动防御这个概念来说是否真的可行!首先,根据微点所称有众多的逻辑分析来确定是否为不合法的程序或者病毒等。我们搞技术的都知道,所谓复杂的逻辑分析如果用程序表达出来就是很多的if条件。但是这些if条件只是微点的标准,而不是主动防御标准,那这样的标准怎样能让用户信服?因此,就常常会出现误报。也许有人会说,其它安全工具或者杀毒软件也会出现这样的状况。因此,这就恰恰说明了为什么其它工具把主动防防御作为辅助手段,也说明了微点根本没有质的飞跃。这也许不是微点的错,这是因为的确主动防御这个概念很吸引人,但是没有非常清晰的界定。即通过行为特征认定病毒的标准。同样,微点自身产品也会做很多挂接动作,为什么就不被认定是恶意程序或者病毒。因为开发者知道自己做的微点是来保护系统的。这我也知道。但是,为什么偏偏就要认为我开发的游戏外{过}{滤}挂之类(单机游戏外{过}{滤}挂)的东东是病毒,我游戏外{过}{滤}挂第一不访问网络,只是挂接一些API或者修改游戏主程序的一些变量即内存指令。为什么我的程序就是病毒。也许又有人会说了,你不是可以将这些你认为信任的程序加入到微点中嘛?那如果是这样,对于用户来说,他能知道哪些是可信任和不可信任,干嘛还要来用这些东东?因此,我认为由于主动防御由于没有既定的标准,也就大大限制微点自身的成长(冲其量也无非是有更多的if语句而已),这样根本不是质的创新,也谈不上优越于其它的杀毒软件。


从技术角度来讲,如果单独使用主动防御是否真的能冲当主力?根据一些贴子描述得知微点使用了Driver,这是很明智的选择!先支持一下^_^!但是微点Driver似乎只对ntoskrnl中的一些内核例程还有AP层的一些API有所挂接,我是想问这样就能挡得住病毒嘛?假设一个程序使用NtOpenFile或者CreateFile打开一个磁盘盘符,然后使用WriteFile或者NtWriteFile来进行直接写扇区,如果是一个正常程序写入合法的数据OK,如果微点没有认为是病毒那么我觉得是正确的。但是,如果一个病毒或者恶意程序同样使用与正常程序同样的流程只是WriteFile的时候写入的数据是恶意的、有破坏性的那么微点能防住嘛?因为根据其微点的行为特征来判定,由于默认了正常程序的行为流程那么也意味着其病毒或者恶意程序的流程也在微点中视为合法,这带来的后果我不想多说了。另外,像NtWriteFile或者ZwWriteFile等一些内核例程,其实是把命令打成IRP丢到文件系统层,如果病毒不经由NtWriteFile或者ZwWriteFile这些内核例程直接像文件系统发送命令,那么微点有办法拦到嘛?另外,随着操作系统内核技术公开化,有些病毒也许还会自带Driver,而这些Driver并不是由病毒动态加载。而是由系统每次启动时加载,也许比微点的Driver还要先启动起来。此时我就展开联想说一下,假设病毒Driver一旦加载,他要感染某个程序非常简单。最简单的方法是直接调用内核例程,像上面提到的,其次自动构造IRP扔到文件系统中,除非微点在文件系统Driver层进行拦截。OK,病毒Driver它干脆不扔文件系统层了,而走更低层的Disk磁盘层。有办法主动防御嘛?如果这都有办法主动防御,那么病毒根本不在使用操作系统提供的Driver层次结构,而直接使用IN、OUT指令来对硬盘进行读写。有办法主动防御嘛,可以说到了这里可以说从实践中基本上是无法拦截住了,就算在Disk层就很困难。当然不是没有办法,使用DR调试寄存器来拦截下来。当然不提其它什么更深层的RootKit技术。就说得更简单一点,如果病毒Driver一旦被加载是没有办法让其Unload,除非重启。主动防御不仅从理论上有缺陷,从技术层面来说是不可真正的实现动态监视,基于这两方面主动防御目前只能成为安全工具的辅助手段,也是不可完成的任务。


其实我引入游戏外{过}{滤}挂,不是争议游戏外{过}{滤}挂的合法性。因为完全没有必要,我是通过游戏外{过}{滤}挂想引出像这样类似的程序,它目的并不是为了破坏或者干扰系统正常运行而存在的!这样的程序也包括了微点,难道微点不去挂接嘛?不挂接又怎样进行实时监控,那么这样的程序对于系统和用户来说都是合法的。为什么像有些程序去挂接了系统某些东西,就认定不合法?这也是我所要强调的”主动防御不可完成的任务“中心思想。也就是像”主动防御仍处于发展阶段,对处于发展中的事物何来的标准?”这句话,不恬恬说明我所应证的观点嘛。即主动防御的确存在着严重的缺陷。


特征扫描的确也有缺陷!我感觉特征扫描有一种亡羊补牢之意,但是它的确也有它自己的好处。打个比方说,如果病毒有自带Driver这种情况下,是非常危险。可以说一旦让Driver被加载,主动防御就失去了它的威力。(更不要说其标准不完整,技术受限制的问题)因为即使微点也有Driver,那是无法去Unload已经启动的病毒Driver(前提是还需要确定得了这是个病毒Driver)。因此微点对于这种病毒来说形同虚设,这时个就需要特征扫描或者其它的方法来解决。并且,我的观点并不是在支持特征扫描。我只是单从主动防御来看,的确存在着很多局限性。这些局限性限制了微点及主动防御的发展。这不单单是靠一种两种挂接技术就能解决得掉的。

其实,我所要讨论的是关于主动防御性的标准缺陷、技术局限性及有网友一直在说其微点主动防御优越与其它杀毒软件或者安全工具所含有主动防御。我在前面两贴中已经非常详细的把我观点说得非常明了,认为主动防御的重大缺陷不能真正的启到防毒的功能。而这些网友根本没有说明其微点真正的优越性。只是在说一些空洞的宣称口号,让人感觉有“王婆卖瓜,自卖自夸”之嫌。没有任何有力的证明及技术支持。让人感觉有点空高兴一场的意思。如果无法真正的主动防御性的标准缺陷及解除技术局限性,怎么又有优越这种说法。让人很难理解!


我在这里重申一下我的观点。即"主动防御是不可完成的任务"我从主动防御的标准及技术角度来说明了这个问题。也是说明了为什么在众多杀毒软件中将其放入到辅助地位中。首先,我从微点官方网站上来说看到了其微点在技术上的创新及一些网友对使用过微点后认为微点的确优越于其它杀毒防毒软件中其含有的主动防御。从实际上来看(我没有怀疑微点防毒的能力),微点对一台干净系统会出现频频误报。这是为什么?很显然虽然微点有所谓的什么复杂的逻辑分析来判断,其表现的效果对一般用户来说跟其它占辅助地位的主动防御没什么区别。这到底是由什么造成的?就像我在前面所说的样,微点也许有一些判断标准比如像检测是否有哪个进程去修改了PE文件,注册表,挂接了系统例程等等行为。当然对于病毒来说,会有这些动作。微点进行拦截或者怎样的处理动作都是合法的。但是对于正常的一些程序来说也会有这些动作,微点就跟其它的主动防御没什么区别,也会误报似乎更严重有点“宁可错杀一千,不可放过一个”的意味。对于一个用户来说,他自己使用微点的产品后没事就弹一个这样的警报对话框出来要求用户来确认,他合必要用这种产品呢?用户他需要的是更精确而误报很低那种主动防御产品。省心,花了钱还要自己来判断程序的合法性,那用户真的会哭笑不得。这个实例说明了不管微点使用了什么样的创新技术,也无法改变这样一个事实,就是真正认定程序合法性的标准。这也是我反复强调的东西,即怎样使误报更少判断更精确,这个是要有明确的标准。不是靠技术能解决的,说多点就像开发驱动程序的,他要开发SCSI Driver,OK没有问题。但是他必须要了解SCSI 规范,而对于主动防御来说,没有像SCSI这样的标准。也就是靠经验+复杂的逻辑判断=频繁误报。我想用过微点的用户来说应该比较清楚。因此,从这点来说,如果像微点真的要优越于其它可能性只有一种。那就创造出主动防御的工业标准出来,否则微点所能做的和其它占有辅助作用主动防御的事情一样多。就是不断的更改所谓的复杂的逻辑判断,用户所承受的同样的频频的误报。所以,站在用户角度上来讲,个人觉得其所表现的并不是像有些所说的那样所谓技术上的创新就真正“质”的优越,只是有可能“复杂”逻辑判断比其它的稍微复杂一点。如果作为用户来说觉得我说的不准确,在反驳我之前请先一个微点产品来用用。看所表现的与其它的到底有何区别?是不是频频的误报 。

 

***********************************************************************************

"那些特征码扫描的安全软件哪个可以清楚,本身的级别都不够呀"我首先说一下,扫描Driver文件AP就可以了!当然如果被一直占用那另当别论。
“但是真正到达驱动级的病毒又有哪些,懂得驱动级调试程序的程序员不会再去费神编写木马吧?现在的病毒无非是为了利益而生,真正用来破坏系统的已经少之又少。。“
作为产品人来说,我们开发产品不能假设。假设产品永远不会出错,假设开发的产品肯定受人喜欢,这是错误的。就好像上面这样的假设,既然是防毒,不能说已经变少了的病毒我们不去处理它,预防它。就像我们做游戏支持一样,只要所支持的游戏在一台机子上不过,就必须要去处理它。这种情况在我工作中常常遇到。这才是做产品的态度,你不可能假设这款游戏你觉得不好玩,就不去支持。那这样又何必做呢?即然是防毒产品,那么我所提出的这种可能,你能保证以后一定不会成为流行的手段呢?因为防毒在进步,其病毒也在进步,请不要忽略了。也许有这些假设,让我慢慢意识到在微点官方网站上所宣称的微点产品背后的真正的一些东西了


***************************************************************

根据llcracker朋友的第1、4、9帖:

首先,我虽不会开发,但我比较认同llcracker的一些技术分析。

不过,最后,我想反问一句,这世上有“可完成的任务”么?——似乎没有一种杀毒方式可以消灭现存的所有的有害程序阿?

按照llcracker的观点,不可能完成的任务只能是辅助手段。我觉得似乎可以得出以下的推论:主动防御只能是辅助手段、特征码只能是辅助手段、虚拟机只能是辅助手段,等等。

呵呵,没别的意思,我很尊敬您这种力求完美的技术精神。但是现实是,我们既要有远大的理想,又得有过日子的心。

我认为,与单纯的特征码相比,微点的特征码+行为双引擎的防护能力明显要胜出。很抱歉的是,由于我没有量化测试能力,所以无法给出客观的比较数据。但我认为我这个定性的判断是有道理的。(我并不排斥和贬低虚拟机技术,只不过由于我本人不太喜欢花费若干个小时扫描所有的硬盘)

所以,我觉得微点的存在是有道理的,也是有价值的。我说句难听的,就算微点在市场中倒下了,也必然会有人接过行为引擎这根火炬,把它不断发展不断完善。

哈哈,可能因为您言语比较犀利吧,跟您对话还是很过瘾的。


呵呵,这个帖咱们谈,关于安全软件需要用户参与判断的问题。似乎微点并不是第一个需要用户参与的安全软件吧。我印象中,目前的多数个人防火墙产品,都在不断的弹出对话框,不断地询问用户,某某程序是否可以访问网络?传统的杀软也在杀毒失败的时候会问用户怎么办呢!

所以,我认为就用户的使用习惯来说,用户参与并不是一个完全崭新的事物,并不会造成用户无所适从。当然,做到最佳判断确实是很需要个人修为的。作为一个商业软件来说,是有一个专门的部门来帮助用户解决这个问题的——呼叫中心。对于信息安全这个行业售后服务是非常重要的,更是必不可少的,这也是什么少数国外优秀的信息安全产品只能在少数发烧友手中把玩,而无法在中国占据大块市场份额的一个重要原因。本地化的售后服务和快捷的技术相应实在是太重要了。

另外,我觉得,只要微点能够规模化,很大程度上更适合“菜鸟”型用户,巨大的白名单列表将使得大多数用户使用电脑无障碍化,少部分用户通过售后服务平台也可以得到圆满的解决。

而在微点成规模之前的这段“尴尬期”,提示比较频繁这个问题,确实是一个突出的问题。

挺过去就好了,从来都是先苦后甜的。

 

 

说半天就是看哪个取得系统最核心的控制权(优先权),看哪个能在最底层进行基本的I/O操作,嗯,安全系统在发展,病毒也在发展,这是个趋势。我有个想法,能不能控制最低层的操作为不允许,必须通过中间层呢?比如一加载就从最底层控制对磁盘的读写,由微点来代替读写,如果是危险操作,而且操作的模块是未知不明模块,就拦下来并报警。或者微软操作系统不再支持最底层操作,必须从中间层来操作。其实要做到象以上朋友说的,可能微软必须提供更多的关于底层的资料。我是半瓶醋,就在这乱讲讲吧。上面朋友说了那么多,但说每一种问题的时候缺少对比性,比如你说绕过内核用中断也好,BIOS基本输入输出也好,说微点拦不住的时候,是不是也应该说说瑞星拦得住吗?怎样拦住?卡巴拦得住吗?怎样拦住?有比较地说一下,我们这些看客才能有更客观的判断标准。

 
LSCMH
发表于 2011-7-22 12:11:08 | 显示全部楼层
这个……好久好久以前的帖子……在微点论坛见过……
a445441
 楼主| 发表于 2011-7-22 12:12:23 | 显示全部楼层
LSCMH 发表于 2011-7-22 12:11
这个……好久好久以前的帖子……在微点论坛见过……

是啊  微点有点冷清 像热闹一点。。。

评分

参与人数 1人气 +1 收起 理由
lychina2008 + 1 版区有你更精彩: )

查看全部评分

挥泪斩情思
发表于 2011-7-22 12:50:53 | 显示全部楼层
看的头大
shutuo864
发表于 2011-7-22 16:45:19 | 显示全部楼层
貌似我等的水平看不懂啊!
悠闲的小强
发表于 2011-7-22 16:46:36 | 显示全部楼层
不错,比较爱看这种技术型文章
sgod
发表于 2011-7-22 18:41:46 | 显示全部楼层
用外{过}{滤}挂就不要用微点,用网银,经常网上交易的,非微点莫属
-oAo-
发表于 2011-7-22 19:52:18 | 显示全部楼层
在微点论坛看过
saga3721
发表于 2011-7-23 01:18:45 | 显示全部楼层
楼主头像这脖颈,这小肩膀……我怎么看都是女的
叶水心
发表于 2011-7-23 08:23:37 | 显示全部楼层
技术贴。。看得我头晕。。
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

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

Copyright © KaFan  KaFan.cn All Rights Reserved.

Powered by Discuz! X3.4( 沪ICP备2020031077号-2 ) GMT+8, 2024-11-25 20:43 , Processed in 0.123539 second(s), 17 queries .

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

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