经常听到一些‘比较专业’的IT人员说,‘即使用户安装了杀毒软件,也没有任何杀毒的概念。“你认为他们不会这样中毒吗?”
想要避免中毒,更重要的是进一步了解病毒的运行原理和杀毒软件的保存方法。在此,希望能为一般企业的电脑用户提供一些充分的‘反病毒概念’。也许你不能'保证'什么,但至少你可以对电脑上发生的事情有个大概的了解!
一个精巧的引导程序。
所有电脑都必须先开机,从开机到加载操作系统,也就是俗称的‘引导程序’。由于大多数病毒试图使自己成为“引导程序”的一部分(以便寄生和感染),您必须首先了解整个程序的步骤:
1.开机,如果所有硬件正常,进行下一步。
2.BIOS(基本输入/输出系统)执行例行的引导检查,然后用预设的存储设备接管引导过程。
3.根据业内公认的规范,预设的引导设备(通常是硬盘)启动软件引导过程,依次加载操作系统的核心和驱动程序.
4.操作系统核心加载后,还可以加载各种驻留程序(杀毒软件,IM软件.)由用户根据设置指定。
在上述每个启动程序中,当你从一个步骤进入下一个步骤时,会留下一个“挂钩点”。例如,如果主板上的BIOS系统想要执行存储介质的引导程序,它将从固定位置执行引导命令。这个固定位置在哪里?我们大多数人不需要知道,但是这个位置绝对是一个开放的规范。
所以写操作系统的人知道存储介质开启的位置,写磁盘维护程序的人知道,写工具程序的人知道,写病毒的人……当然知道,于是就有了所谓的‘开启病毒’。
而现代的‘开机病毒’很少,主要是开机后加载的操作系统相当庞大复杂,这种病毒很难在如此复杂的开机条件下正常运行。目前大多数病毒选择在操作系统中进行破坏。
无法启动的可能性有.
无论是Windows、Mac OS、Linux还是BSD,操作系统的初始加载都是由精致的顺序步骤组成的,一个接一个。通常,操作系统必须设置处理器的运行模式,加载系统内核、驱动程序和图形接口,然后加载驻留程序,最后给予用户使用权。如果这一系列‘精致’但‘脆弱’的过程出了一点小差错,导致系统加载失败,用户就会说,‘啊,我的电脑挂起/崩溃/无法开机/死机了.有各种各样的说法,等等:
司机有问题。
核心程序有问题。
存储OS内核程序的磁盘有问题。
用户的常驻程序有问题。
只要出现一点小错误,操作系统就可能无法正常加载——好在这种情况不常发生。
到目前为止,以上概念听起来都很简单?
请介绍‘记忆’的概念
无论是哪种操作系统,开机程序完成后,用户都可以执行各种应用软件。例如,您可以执行浏览器、文字处理器、电影播放器等。具体行为是用鼠标在应用程序的图标上连续按两次鼠标左键。是的,就是这么‘容易’。
大多数人经常忘记的是,电脑中有一个非常重要的‘部件’,叫做‘内存’。当用户按下电源,执行引导程序时,这个程序的一个重要步骤就是‘将操作系统的内核从存储介质加载到内存中’。
操作系统的核心加载到内存后,按照开发者的设计,会不断维护自己的核心和用户应用的正常运行。这个过程也是一样的微妙和脆弱。另外,因为程序是‘人’写的,如果写程序的人‘乱涂乱画’(不管是有意还是无意),应用程序就可能导致操作系统的核心程序被破坏,导致机器死机。
病毒呢?
病毒会希望它能拥有以下能力:
留在内存里,把自己伪装成操作系统的一部分。
伪装的过程中,最好没有人或者任何软件能发现。
尽量不要干扰原程序的运行,以免被察觉。
用一切可能的方法把自己(病毒)占有给别人(其他电脑)。
如果有必要,你可以为作者做一些有用的(或有趣的)事情,包括窃取信息和造成损害.
可执行文件学习很多。
嗯,如果病毒想把自己藏在内存里,首先它必须让你“执行”它。
问题是,谁会愚蠢地执行病毒——如果病毒的额头上写着‘我是病毒,来执行我吧’,你会去碰它吗?不会吧!
所以病毒编写者会想尽办法让用户在不知不觉中执行,从而达到‘感染’的目的。
因此,“可执行文件”成为大多数病毒“寄生”的主要目标。
所谓可执行文件,就是我们所说的‘程序’和‘软件’。通常,这类软件也是由一个(或几个)文件组成的。如前所述,在用户执行和使用软件之前,必须将软件加载到内存中。所以软件的作者会用开发工具把‘原程序’编译成‘可执行文件’,然后交付给用户,让用户执行。
以前,只有几种固定格式的可执行文件:COM,exe和。BAT扩展,所有这些都是可执行文件。在Windows7时代,这一点依然没有改变。然而,Windows后来推出了许多“罕见”的可执行文件格式。例如,DLL是一个‘动态链接库’,也是一个必须依附于主程序的可执行文件。SCR是屏保,也是有特殊功能的可执行文件;MSI(Windows安装程序包)通常在“安装程序”中找到,但是.它也是一个可执行文件;一些叙述性文件,如。VBS。JS…….也是可执行文件。
执行是最危险的事情。
问题是Windows会默认隐藏它识别的文件的扩展名,所以,说实话,你并不知道你到底做了什么。
没关系,想象一下:当你在一个图标上按两次鼠标左键,你一定在做什么。
在执行某件事情的时候——你一定要记住:这是我们的“『红旗』”信号,用户绝对要注意。如果有一件事你必须警惕,除了'有人问你要密码'另一件事就是这个。
所以,你必须记住:
执行某事时要小心。'
就这么简单。
因为很多病毒会附着在可执行文件上,而且你一执行就会中毒。不仅如此,在被感染的电脑被清理之前,它们会感染电脑中的文件,或者发出病毒信件,或者感染服务器上的其他文件.此外,这种病毒会修改系统设置,即使用户发现有问题,也很难(有时几乎不可能)清理。
所以有时候,被感染的电脑不得不完全重装,因为所有的可执行文件都被感染了,无法恢复。
互联网是“地狱之门”
然而,恐怕还有一件事无法阻止网页!
当你用浏览器连接任何网页的时候,老实说……地狱之门就会打开。因为网页可以让你做很多事情,执行很多功能——而且大部分都是在你不知情的情况下自动完成的。当然,正常的网页不会欺骗你,也不会毒害你……然而,不正常的网页也不少!
事实上,你知道,浏览器本身就是一个执行器,是一个被设计用来执行各种功能的工具。不仅如此,操作系统还存在所谓的‘兼容性’问题,只是浏览器本身被设计成了所谓的‘跨平台’。最好所有的浏览器都有相同的功能,这样web开发人员就可以编写一个函数——全世界的所有用户都可以使用——天哪!世界大同的实现,无非如此。然而,这也给了网络病毒作者可乘之机.怎样做才能让这些病毒编写者更容易得手?当然,写一个跨平台通用病毒!
网页病毒有很多种形式,有些是利用所谓的‘叙事’(JavaScript)不断弹开烦人的窗口,有些会把病毒偷偷放进你的电脑,有些会直接执行一些该死的动作.而且说实话,这种问题比可执行文件中毒还麻烦,因为用户根本无法知道。
所以杀毒软件(或者所谓的互联网安全)在这种情况下就显得极为重要。
防止病毒被执行的方法
那么,仅仅靠用户的关心就能防止病毒逃逸吗?让我们系统地思考一下,在每个环节下,我们能做些什么。以下是一些常见的“防堵方法”:
每个程序都要通过某种认证。
为了防止用户执行不应该执行的脏东西,操作系统厂商规定‘你执行的每一个程序都要检查它’。呵呵,你觉得好笑吗?不,iphone就是这种情况——虽然不是为了杀毒,但是这个封闭的系统是相当安全的——因为所有的软件都必须经过苹果的批准。
每个程序(只要被认为是危险的)都必须在用户同意的情况下执行。
Windows Vista/7下有一个UAC。只要你判断你的程序有危险,它就会跳出来让你‘确认’,这样‘病毒就更难无声无息地感染你了’。不过大部分人可能会气到先把这个功能关了。不过平心而论,方便杀毒是必须的,某种程度上也是必要之恶。
安装杀毒软件。
反病毒软件“应该”能够阻止可执行文件病毒,而防火墙软件“应该”能够阻止来自互联网内外的攻击。而且不要说‘我不做脏事,我不需要装杀毒软件’——你最好不要上网。一些网络蠕虫只是利用所谓的“漏洞”直接钻入你电脑的内存,然后攻击你的电脑