详细介绍
互联网海洋浩浩汤汤,于其中乘风破浪,海阔天空中好不痛快。但在这一望无际的碧蓝里总会有那么几坨臭水,若是被淹上了,难免污了身子。而计算机恶意软件(囊括病毒、木马、恶意广告软件等,下文简称病毒)又是最为令人作呕的污秽之一,如果被病毒乘虚而入,轻则不利身心成长,重则浮尸百万血流千里。人们开始意识到裸奔虽爽,但在互联网的海洋中真心危险,为了抵御病毒,各式各样的安全软件诞生了。
个人市场中的安全软件最初主要以杀毒软件的形式存在,事实上直到今天大多数人谈到如何反病毒的时候,第一反应也是杀毒软件。的确,杀毒软件诞生至今,一次次给了病毒无情的打击,得到了广大人民群众的热情拥护。于是,杀毒软件制作商遍地开花,广告一打再打恨不得在每个网站刷屏,业务一扩再扩甚至涉及到了娱乐业(咦?),价格一降再降直到免费成为主流。
然而,包括杀毒软件在内的安全软件并非是一定有效的,计算机病毒的制作者怎么看都是一些不三不四的怪叔叔,无论你在酮体外套了多少件防护服,他们都会尝试着把你扒光然后笑嘻嘻地把邪恶的触手伸到最深处嗯,系统的最深处。这就是病毒的免杀技术,专用于逃避安全软件的追杀。
是可忍孰不可忍,打着正义大旗的护花使者们怎能忍心看到自己的金主被玩坏呢,于是安全服务提供商们不断研发新型的反病毒技术,安软和病毒旷日持久的战争就这样打了好多年。在战争的日子里,病毒和安软双方都进行了大规模的军备竞赛,你有张良计,我有过墙梯。
我们能够正常的看到,就如同病菌和抗生素的战争史,计算机病毒和安全软件也上演着相似的故事。从一开始安全软件对病毒的绝对压制,到病毒对安软的反攻(甚至会出现了专门感染安软的病毒),到现在病毒开发的傻瓜化和安全软件的多体系防护,双方一同书写了一段段红黑相间的血泪恩怨史。那么,病毒到底有些什么手段去躲避安全软件的绞杀呢?安全软件又有什么方法能在茫茫0101中把病毒给揪出来呢?下面我们来简单谈谈病毒的免杀技术和安软的防护查杀原理。
运行后效果明显的恶意代码很多,但把自己出来的病毒也只能欺负一下同样是遍体无遮的裸奔电脑。杀毒软件对病毒的查杀要经过发现这一环,如何躲过杀软的查找,是一个所有病毒制造者需要思考的问题。1989年第一款杀毒软件McAfee诞生,1997年第一款可以自动变异的病毒“千面人”诞生,2005年免杀工具CCL诞生,病毒和杀软的针尖麦芒间一直飞溅着火花。
现在流行的病毒大多数都作了免杀处理,那么主流的免杀技术有什么?我们共同来看看。
什么方式最容易把一个人藏起来?我们大家可以从偷渡者那里得到答案把人装进密不透光的容器中。如果把病毒比作罪犯,把杀软比作警察,把用户的计算机系统比作城池,我们大家可以得到下面的案例。
警察通过通缉令(病毒特征库)上面的样貌来查找罪犯。若是罪犯抛头露脸地在路上大摇大摆晃来晃去,简直就是在自寻死路恐怕还没进入城门即已被警察击毙。但是,如果罪犯乘搭着一辆看不到里面的车子,情况就大不相同了。正常的情况下,警察是没办法打开这类车子的门上都有锁呢;而警察也无法拦截这样的车子因为这种车子实在是太多了 ,开地图炮把这类车子通通炸掉必然也会让一众路人躺着中枪(杀软误杀),假如慢慢的出现这种情况,你觉得城主(计算机用户)还会请这种比病毒还狂的警察么?
就这样,罪犯搭着车子穿过了一层又一层的城墙,进入到城池的核心区域,然后就开始对用户的电脑做奇怪的事情了,这时候警察想阻止也已经太晚了病毒往往已经取得了高权限甚至把杀软给干掉了。
对某段代码进行加壳,其实在我们日常生活中也很常见压缩软件就是一种加壳工具。由于普及率高,对付加壳是否有效,已经成为了检验一款杀软是否优秀的重要标准。一般而言,杀软(嗯,这里说杀软,不说HIPS之类的其他安全软件)对付加壳有以下几种方法:
一、警察开发出透视、隔空取物之类的功能,能发现车子里的罪犯,并且搞掉。这主要是形容脱壳技术,把已经加壳的代码完全或近似还原到未加壳的状态,此时警察就可以通过通缉令来查找罪犯了。这种方法技术含量比较高,因为壳往往多种多样,原理也大不相同,如何对付各式各样的车子,成为了警察头痛的难题。目前脱壳能力口碑比较好的杀软有俄罗斯的大蜘蛛等。
二、虽说从车子外面看不到里面的人的相貌,但是车窗有时候还是会隐隐约约透露出人影。通过经验得知哪种人影其实是罪犯,并把这类影像也加入到通缉令,也是一种方法。不过这种方法十分不灵活,加壳者很容易改变加壳的参数,如此一来特征码也就改变了,收集这类特征码往往吃力不讨好。
三、统计经常犯事的车子的类型,然后开地图炮,把加了这类壳的车子都轰掉。这就是所谓的“杀壳”,为了确保用户安全把加了某种类型的壳的程序全部视为病毒,采用这种技术的杀软误杀率往往也会比较高。使用“杀壳”技术的著名杀软有小红伞等。
除了加壳以外,病毒也经常使用“加花”的方法来改变自己的特征,以躲避杀软的查杀。
所谓“加花”,是指在病毒程序中加入一段无用的用以混淆视听的代码,如计算用的汇编指令及入口点的内存地址跳转,改变病毒的特征,在不影响病毒正常运作的前提下,逃过杀毒软件的侦测。
举个例子,1+1这道算术题所有人都知道它的结果是什么,但如果在后面加入一段结果等于0的积分算式,虽然这个算术题的结果并没有变,但很多人说不定就不知道怎么做了。加花也是利用类似的原理,让杀软检测不到特征码。
对付加花这类免杀技术,目前杀软主要利用广谱特征码(基因码)以及启发式扫描等技术来侦测,效果十分明显。一般来说,对加花免杀技术的破解市面上的安全软件都有自己的一套心得,如avast和MSE都使用了基因码,nod32小红伞的启发式扫描则比较有名。
人总会有个相貌,代码也会有自己的特征。杀毒软件都有着一套病毒特征库,可以对应已知病毒的特征代码,判断某段代码是否属于病毒。
如果病毒的特征不变,即使加了壳,也有可能会被杀软查杀。病毒运行的时候需要载入内存,在载入内存之时,病毒需要先自我脱壳才能运行。在这时,如果杀软的内存查杀可靠、反应迅速的话,病毒就会被特征库识别,继而被杀软爆得体无完肤。
针对这个问题,病毒制造者们发明出了修改文件、内存特征码的方法来避免杀软查杀。和方法的名字一样,修改病毒的文件特征码,可以避免病毒在进驻电脑时被查杀;修改内存特征码则可以避免病毒运行的时候被查杀。这里所说的修改特征码,并不是说制作一个新的病毒,而是修改已有的病毒,掩盖病毒特征迷了杀软的眼。
修改特征码的针对性很强,当年熊猫烧香之所以能够感染大量用户的电脑,就是专门针对国内装机量较大的几款杀软进行了免杀处理。于是国内满城皆是辛酸泪,遍野无处不哀鸿。
修改特征码这种免杀技术的针对性很强,能有效地针对某款杀软进行免杀处理,这是它的威力,也是它的缺陷每款杀软对病毒特征的定义都不同。比如说,阿星认人可能认相貌,阿山认人却只认身材你在脸上涂多少粑粑也没用。
除此以外,杀软的病毒特征库也是处于实时升级的,修改一次特征码往往只能针对某一期的特征库。当年卡巴斯基升级特征库以后,熊猫烧香被迅速击杀,就是这个道理了。另外,修改病毒特征码也具有较高的难度,需要知道到底哪段东西属于病毒的特征码,还需要掌握一定的汇编知识。
虽然安全软件诞生得很早,人们也足够重视这方面的技术,但是,因果律早已注定安软是属于被动的那一方,特别是杀毒软件,总是扮演着后知后觉的角色。从逻辑关系上来说,只有病毒出现了,安全软件才有一展身手的机会。在这个过程中,很明显安全软件处于滞后的位置。如何更有效地防御注定处于先手位置的病毒,是安全厂商们努力的方向。
实际上,现在主流的安全软件都采取了多种多样的反病毒机制,同时用好几种技术来建立自己的安全体系,下面来简单介绍一下几种比较常见的反病毒手段。
接触杀软年头比较久的朋友,应该还会有着在90年代的时候,对着电脑报上王江民先生发布的病毒特征码,一个个字符手工打入KV系列杀毒软件的回忆。转眼十数年的时光如江水奔流入海一去不复还,王江民先生也已经乘鹤西去,不禁令人一阵唏嘘。
没错,特征码是杀软查杀病毒的主流方式,也是最远古的方式。计算机病毒归根到底是一段代码,杀软可以通过定义目标文件或者进程中是否存在病毒的特征代码,来判断计算机是否受到了病毒的威胁。
我们继续把安全软件比作警察,病毒比作罪犯,用户的电脑比作城池。杀软的病毒特征库就相当于警察手中的通缉令,上面描述着罪犯的体征,如相貌、年龄、身形、口音等等。警察可以根据这张通缉令盘查城池及其附近的人口,发现罪犯后,如果罪犯在城外则阻止他进城,在城内则一枪爆头。
这张通缉令通常是实时更新的,每天都会有很多新的罪犯被加入其中。上文提到的在KV系列杀毒软件中手工输入病毒特征码这种事情存在于很久之前的年代,那时候病毒数量只手可数,网络也不发达,病毒难以传播,手工输入特征码即可对付新病毒。现在的话,安全软件们都是通过联网定时更新特征库,有的先进的安软如avast还通过流式更新来实时更新特征库,对新病毒的反应更加及时。
一、特征码查杀具有滞后性。很明显只有在新病毒出现后,安全厂商们才会得到这个病毒的特征码。得到特征码之前,杀软对新病毒是无能为力的,只会一边报告着自己被关闭或者是系统一切安全,一边看着用户嘤嘤嘤地哭红了眼。
二、特征码查杀针对对象有限。传统意义上的特征码和病毒是一一对应的,一个特征码只能侦测一种病毒。而病毒可以通过人工或者自动诞生出大量变种,在这样的一种情况下,传统的特征码查杀力不从心。不仅如此,上文提到的加壳、加花、修改特征码的方法都能有效规避特征码查杀。化装过后的罪犯,警察只靠这么一张通缉令无法辨认,在新时代的严峻安全形势下,特征码查杀迎来了最艰巨的时刻。
在广义上来说,基因码查杀也属于特征码查杀的一种,不过对特征码查杀进行了技术上的极大改良。
基因码检测总结了某类病毒的特征,一个基因码既可对应一大票病毒。除此以外,基因码还能有效地对付变种病毒,一定程度上弥补了特征码查杀对未知病毒无可奈何的窘境。
按照比喻,基因码查杀相当于改进了通缉令。警察不仅可以从相貌、年龄、身形、口音等外表特征辨认罪犯,还能通过虹膜、指纹、基因等更深入的元素去辨认罪犯。这样一来,罪犯靠伪装躲过追捕的概率就大大减少。
一、增加了误杀的概率。在银河系里,我们知道火星人都很喜欢偷东西,每年因为盗窃入狱的火星人数不胜数。于是,当我们发现地球上有人有着火星人血统的时候,是否应该把他关进小黑屋呢?很明显,这种地域论是不对的。同理,基因码查杀也容易将带有某些特征代码的正常软件判为威胁,一些正常软件会躺着中枪。
二、对新型病毒的查杀仍然较弱。虽说基因码拥有了对变种病毒的查杀能力,但对于全新的病毒,还是没有用武之地。让它看过黑熊白熊,它能认出熊猫,但它仍然认不出企鹅。
目前大部分杀软都使用了基因码技术,如avast、MSE等。值得一提的是MSE,很多人都说它查杀率低,理由是同一个病毒测试包,其他杀软能杀出几千个病毒,MSE可能只会扫出几百上千个。其实这和MSE对病毒数量的定义有关同一个病毒的变种,无论存在多少个,MSE都只会把它们归为一个。总的来说,MSE还是十分可靠的谁能比微软更了解Windows的代码呢?
无论是特征码还是基因码,其原理都是通过分析已知病毒,然后对这些病毒及其变种进行防御。这样一来,从机制上来说,明显很难对全新的威胁进行防御。于是,人们就意识到需要改变查杀病毒的思路。跟着病毒的步子走,只会永远处于被动。
启发式扫描是一种目前比较主流的对付新型病毒的方式。如其名字一样,这种扫描会“启发”一下各种可执行程序,然后根据这些程序的行为进行判断,比较类似于钓鱼用只有病毒才会咬钩的饵料,把病毒给钓上来。
启发式的实现途经主要利用了虚拟机技术,以及智能分析技术。启发式会在用户的电脑上模拟一个虚拟环境,类似于虚拟机,和实机的环境隔绝,无论虚拟机里面发生什么事情,都不会影响到实机。当运行启发式扫描的时候,可执行程序会被装入虚拟环境,并被诱发执行。如果里面虚拟环境里面有一个货是病毒,很明显这货就会疯狂侵染虚拟机。这时候,杀软只要笑嘻嘻地把这货关进小黑屋就可以了。
实际上,在安全专家眼中,病毒和普通程序的行为大不一样普通程序不会在系统关键目录生成文件,不会在系统各处挂上钩子,不会注册乱七八糟的服务诸如此类。启发式扫描将安全专家的一些分析思路使用智能分析技术实现,把可执行程序装入虚拟环境后,实现病毒判断的自动化。不要小看这个,这个分析技术直接关系到启发式扫描的优劣。
启发式扫描的出现一改杀软对病毒的被动,大大增加了杀软对未知威胁的抵御能力无论你制作一个特征码基因码是怎样的病毒,只要它是病毒,就肯定会做一些奇怪的事情。这时候,警察们只需要扮演一出好戏比如说让警花独自一人穿着暴露的衣服行走于漆黑的夜路,色狼自然会出来,这时候埋伏在周围的人一拥而上就能把事情漂亮地解决了。
一、各个安全厂商的水平参差不齐,启发式扫描不是绝对能发现未知病毒。相信大家都看过什么怪盗基德怪盗罗宾汉,即使全城警察都埋伏在博物馆,怪盗依然能够偷走宝物并全身而退。同样,遇到手法高明的病毒,启发式扫描也会瞎了眼。
二、误杀率高。接近走夜路的女子的人,并不一定是色狼,也许他只是想借十来块钱打车回家呢?但是埋伏在周围的警察可听不懂你说什么,一并把你投大牢去。这时候,用户的判断力就十分重要了。
启发式扫描对所有免杀技术都有良效病毒终究要执行的,启发式会诱使病毒执行,这时大多数病毒就会露出马脚。目前启发式扫描做得比较出彩的杀软有nod32小红伞等。
除了启发式扫描以外,安全厂商们还使用了HIPS来对各种威胁进行防御。HIPS的英文全称是Host-based Intrusion Prevention System,翻译为中文就是主机入侵防御系统。这种技术十分强悍,如果运用出色的话,几乎能防御所有类型的病毒。
这种技术并非以查杀为手段,而是以防御为主,这也是为何本文有的时候使用“杀毒软件”一词,有时候使用“安全软件”一词安全软件不止杀毒软件一类,也有纯HIPS类或是带HIPS功能类(当然网络防火墙什么的在这里就不说了)。
我们依然使用“警察”、“罪犯”、“城池”的例子来说明。假定我们仅仅使用HIPS技术,不使用上文提到的各种扫描技术。这样一来,警察就不会根据通缉令等手段来辨认罪犯,而是监视城里面的人的具体行为。整个城池内都是警察的眼线,人们的一举一动尽在警察眼中。张三掏出了钱包,警察会知道;李四掏出了手机,警察会知道;王五掏出了枪,警察也会知道。警察会把城里面所有人的行为都报告给城主(用户),然后城主下令把掏枪那小子干掉就可以了。
这个就是HIPS的实现原理。HIPS会监控计算机的关键部位,如果有程序对这些关键之处进行修改,HIPS则会冻结其行为,并询问用户是否放行。这样一来,一般情况下基本没有病毒能逃得过HIPS的法眼。
一、上手难度高。HIPS最初并非为普通用户定身量造,它本用于企业、军事、政府等机构,有着专门的安全专家维护。鉴于安全形势越来越恶劣,安全厂商将HIPS投入到了个人市场。但并非所有人都具备很多计算机安全方面的知识,HIPS对于多数人来说实在是太难用了,弹窗又多又不懂说的是什么意思。于是,很多人不管怎样,只要HIPS弹窗询问,都一律阻止或放行这样电脑不被玩坏才怪。
二、HIPS并非无懈可击。警察的眼线遍布全城,但也有监视不到的地方。只要是软件,就会有漏洞,HIPS也不例外。除此以外,电脑系统漏洞也能破开HIPS的金钟罩黑客利用系统漏洞取得高权限,直接就把HIPS给干掉了。试想入侵者通过下水道入侵城主府,城主都被入侵者顶替了,警察还有意义么。当然,这需要很高水平的入侵技术才能破开一套优秀的HIPS系统。
针对HIPS上手难度高的缺点,安全厂商们也想出了不少办法解决。智能HIPS,就是其中的一种办法。智能HIPS使用了智能判断系统,代替用户作判断。智能HIPS自带了处理规则等判定能某个程序的行为是否危险的模块,当警察看到有人掏钱包、掏手机的时候,警察可能看看就算了;当有人掏枪的时候,警察果断过去削了他。这一整个过程,都无需报告城主(或者是只提交事后报告书),大大简化了HIPS的操作。
一、误判率高。人尚会误判何况机器,智能化的代价就是误判率上去了。王五掏出了枪没错,但是王五是个镖局的啊,他只是在押银车。但警察可不懂,削了你就是了。
二、安全性降低。当某个人掏出了一根又黑又硬又粗的东西的时候,使用智能HIPS,警察认不出这个是什么的话,可能就这样放他过去了。但是如果是使用传统HIPS,警察依然会冻结住此人的行为,然后让城主判断。如果城主有足够的见识,就能认出这是江湖上失传已久的玄铁重剑,此人十分危险,得速速干掉。一般而言,传统HIPS的安全性会高于智能HIPS。
除了智能HIPS以外,安全厂商们还采取了其他方法降低HIPS的使用难度。目前无论是传统HIPS还是智能HIPS,都内建了白名单机制位于白名单上的程序,无论你做什么,HIPS都不会管你。比如说用户需要安装一个杀毒软件,这种会涉及大量系统关键模块的操作,必然会触及HIPS的眼线,HIPS疯狂弹窗询问也是可想而知的。但如果这个杀软在HIPS的白名单内,HIPS就会自动放行了。
于是,从这里我们就可以看出杀软和HIPS的明显区别了杀软使用病毒特征库来保护用户,也就是黑名单机制;而HIPS使用的却是白名单。所以,一款HIPS的白名单做得如何,也直接关系到用户体验。在这方面,对于国内的用户来说,国产安全厂商做得比较出色(毕竟了解风土人情),其内建白名单对国内的流行软件都有很好地收集,弹窗明显比国外HIPS少。
HIPS类的安全软件对所有免杀技术都有奇效,衡量一款HIPS安全性的标准就是这款HIPS是否容易被穿透,和免杀技术没有太大关系。目前国内带HIPS功能的安全软件有奇虎360金山毒霸瑞星等几乎所有的主流安全软件,比较著名的智能HIPS则有微点;国外的著名HIPS则有Comodo、Mamutu等,Windows的UAC也算是轻量级的HIPS。
对系统安全有洁癖的人,会使用虚拟机来操作电脑。虚拟机能够虚拟出一部电脑的完整软硬件,在虚拟机内的操作基本不会危及到实机(穿透虚拟机的概率极小)。但虚拟机是属于比较重量级的软件,如果为了安全,专门去配置虚拟器,似乎也太杀鸡用牛刀。
沙箱是一种轻量级的虚拟技术,可以构建一个虚拟的执行环境,可执行程序在沙箱里运行,相当于在虚拟机中运行,但沙箱不需要完整地虚拟整个系统,资源占用比完整的虚拟机小得多。
实际上,沙箱是一种十分重要的安全技术。在安全领域,沙箱是一个观察计算机病毒的重要环境。在很多安全软件的技术中,多少都运用了沙箱技术。如上文所提到的启发式扫描,就用了类似沙箱的技术。还有一些系统还原类的软件,如影子系统等,使用的也是沙箱技术。
沙箱以虚拟环境运行可执行程序,即使这个虚拟环境遭到了病毒侵袭,也能和实机隔绝。这也是Chrome安全性的体现Chrome使用沙箱技术,使得网上的病毒无法穿透浏览器入侵本地。目前Chrome的沙箱还没有人能攻破,黑客也只能通过绕过沙箱来入侵Chrome。
之所以要把沙箱单独提出来说,是因为目前越来越多安全软件把可执行程序是否使用沙箱环境来运行的选择交给用户。当安全软件认为某个程序可疑,但又不确定这个程序是否真的是病毒的时候,就会建议用户使用沙箱运行这个程序万一捅了篓子也能补救。这种介于放行和阻止之间的选择,是对HIPS类的安全软件是一个强力的补全。
沙箱当然也并非万无一失。沙箱有被穿透的可能(漏沙),也有无法还原成初始状态的情况(沙倒不干净)。
云安全是最近几年提出来的概念,事实上各个安全厂商的云安全运行机制都有所区别。但是有一点可以肯定,它们都有一个共同之处,就是把判断某个程序是否安全的识别系统从本地转移到了网络。
由于商业上的原因,各个安全厂商对自己的云安全技术都没有透露出太多的细节,我们也只能大致地摸索出云安全的几个特点。
一、更快的反应速度。云安全利用了网络资源,推送安全更新更及时,用户也更方便上报可疑文件。云安全技术能够在第一时间侦测得最新的安全形势,并作出反应。
二、更高的准确率。云安全技术背后有专人维护,安全工程师们实时分析处理客户端发现的可疑程序,人工鉴定某个程序是否安全。此外,有些安全厂商还设立了相关社区,用户可以共同分析可疑程序。这些都使得安全软件的查杀率上升,误杀率下降。
三、安全成长度高。一般来说,病毒样本的采集需要安全厂商设立专门的“蜜罐”服务器,要取得较好的效果,就需要投入大量的资源。云安全技术使每个安装了客户端的用户都能收集病毒样本,将安全信息反馈给云,安全厂商能集中处理这些信息。用户越多,收集的安全信息也就越多,安全成长度就越高。
但有人认为,云安全技术也涉及到了一些个人隐私和信息安全的问题。安全厂商如何保持用户信息收集以及用户隐私保护之间的平衡,是一个值得探讨的问题。
很多朋友都认为,安全软件会拖慢系统速度,裸奔才是王道,反正很多人裸奔也没中毒。没错,安全软件会消耗资源,还会带来弹窗、误杀等麻烦,如果有良好的计算机使用习惯,裸奔的确也不失为一个好选择。
但是,现在的计算机病毒慢慢的变成了了产业链。虽然本文全文都在说“病毒”一词,但是这个词语其中囊括了盗号木马、恶意广告软件等。现在的病毒很少再会像CIH、熊猫烧香一样把用户的电脑搞得面目全非(这样被网警逮捕的风险也大),而是十分隐秘,悄悄地窃取你有价值的信息相比杀人放火,更多的罪犯愿意偷偷摸摸地盗窃。
明白了这点,你还会觉得运行飞快的裸奔电脑中没有病毒吗?笔者不敢说一定有,但是谨慎点总是好的何况免费慢慢的变成了了安全软件的潮流。
一、养成良好的计算机使用习惯,不要访问可疑的页面,不运行可疑的应用,关闭可移动设备的自动播放功能;
二、保持计算机系统最新,及时安装补丁,避开使用administrator登陆系统,打开UAC;
2024好用的生产制造管理erp软件系统十大品牌排名,生产制造业erp管理软件系统有哪些品牌?
智能阅读新突破:超130款新闻资讯鸿蒙原生应用搭载AI技术、意图框架、服务卡片等能力 完成上架
万兴科技旗下亿图图示升级文件导入体验 Visio、CAD文件兼容性提升