饮流斋说瓷吧 关注:41贴子:1,373

计算机反病毒

只看楼主收藏回复

2.1 病毒如何传播
我们曾经讲过计算机病毒是可以运行的程序,然而它和普通程序在行为上有很大差别,我们就可以利用这些差别来鉴定一个程序是否为病毒。
疑问
计算机病毒从开始运行到全面爆发究竟都做了什么呢?计算机病毒是如何传播的呢?
病毒作者在制作一个病毒时,从最开始静态文件的表现(如使用什么文件名、使用什么图标等),到病毒运行后执行哪些功能,都是经过深思熟虑的。他无非就是想:他的病毒可以很容易的运行起来,运行后不易被发现,并且拥有最长的生命周期,可以稳定地完成各种功能,可以用最快的速度传播感染最多的计算机。为了达到这些目的,该病毒也必然会表现为一些特定的行为。下面我们将以一个计算机病毒作者的身份逐步揭示普通计算机病毒常见的特性及行为。
1. 欺骗
计算机病毒想要做的第一件事,就是想办法运行自己,如果不能运行起来,再强大的病毒也不能发挥出它的威力。
疑问
计算机病毒是怎样运行起来的呢?
计算机病毒通常是利用欺骗的手段诱骗计算机使用者去点击它而达到运行的目的。
例如文件病毒通常会伪装成一个正常程序的模样或者令人感到好奇的东西,从而诱使用户去双击它而运行起来。例如,有些计算机病毒的图标使用文件夹图标,伪装成文件夹,如图 2-1 所示。
注意
图 2-1 从表面上看是个文件夹,但是正常的文件夹一般是没有扩展名的。仔细看一下图中文件名,它有扩展名,而且是 “.exe”,这表明它可能是伪装成文件夹模样的可执行程序。因为可执行程序的扩展名必须为 “.exe”,一个病毒若想通过双击运行起来,必须带有 “.exe” 扩展名。
有的病毒又会伪装成一个图片模样,如图 2-2 所示。病毒如此伪装就是想诱使用户去双击运行它。如果用户不注意,则会认为这是个文件夹或图片而去双击打开,结果却是运行了这个病毒程序。

注意
图 2-2 从表面上看是个图片,仔细看一下它的扩展名,图片的扩展名应为 “.jpg”、“.bmp” 等,总之不可能是 “.exe”,这表明它可能是伪装成图片的可执行程序。但是如果扩展名被隐藏了,我们就无法知道它是个可执行程序,就会把它当成图片去双击,从而使病毒运行起来。
通过扩展名的查看引起了我们的警惕,因为计算机病毒要通过双击运行,就必须带有 “.exe” 扩展名,那么即使计算机病毒图标伪装成一个文件夹,但是它带有 “.exe” 这个扩展名,只要我们稍加注意就不会被欺骗了。
建议
双击文件夹时,需要留意其扩展名。
警示
实际上我们是无法通过文件名的扩展名是否为 “.exe” 而做到稍加注意的。
上面的提示并不矛盾,因为计算机文件的扩展名是可以隐藏的。如果扩展名被隐藏了,我们很可能就会将这个病毒程序误认为是文件夹而去双击打开,这样病毒就运行起来了。是的,即使用户的计算机默认设置了不隐藏文件扩展名,但是计算机病毒为了欺骗用户,它一定会想方设法隐藏用户计算机上所有文件或者可执行文件的扩展名,从而能够欺骗成功。至于如何设置显示或隐藏扩展名将在 2.2 节的实例 02-01 进行详细讲解。
病毒欺骗用户而使自己运行起来的手法还有很多,随着我们对计算机病毒认识的逐渐加深,我们会看到更多更巧妙的欺骗手法。


IP属地:内蒙古1楼2020-10-01 09:20回复
    2. 隐蔽
    通常情况下病毒运行以后不会有任何界面揭示,就在后台运行,完成它的各种操作(如创建文件、修改注册表、连接网络等)。
    如果不使用特殊的工具,根本察觉不到病毒的运行,这就是病毒的隐蔽性。
    我们将在 2.7.3 小节用实例演示这一特性。
    3. 自启动
    疑问
    病毒运行以后都会做些什么呢?
    病毒欺骗用户运行成功以后,那么待用户关闭计算机后,或者利用特殊的方法杀掉病毒进程(关于进程的概念将在 2.3 节详细讲述)后,它又怎么能再次运行起来呢?还依靠欺骗吗?
    答案是否定的。因为病毒已经运行了一次,在这一次运行中病毒完全可以利用各种计算机特性和漏洞而达到自启动的目的。
    所谓自启动就是伴随计算机操作系统的启动而自动运行。
    病毒实现自启动以后,每次用户开机,病毒都会自动运行起来,这样就达到了长期生存的目的,这就是计算机病毒的启动性。在 2.2 节实例 02-06 中将演示病毒如何实现自启动。
    自我复制
    现在病毒实现了自启动,病毒文件开始运行时可能位于任意路径,并且那个路径可能会被用户删掉,如果被删掉了,自然病毒就不能够实现自启动了。
    疑问
    病毒怎么样防止自身被用户删除而导致无法自启动呢?
    计算机病毒为了长期存在于计算机中,他会将自身复制到系统目录下,用户一般不会在 windows 系统目录下删除文件。这样病毒文件就可以长期生存在用户计算机中。另有一些蠕虫等类型的病毒,为了实现自启动,经常将自身复制到各个驱动器的根目录,利用 windows 的自动播放功能实现自启动。 2.2 节的实例 02-05 将演示利用自动播放功能实现自启动的特性。这就是病毒的自我复制性。
    5. 自我删除
    到此,病毒已经将自己复制到了系统目录或者各个驱动器的根目录下,下次自启动就启动系统目录或根目录下的那个文件,那么原始文件就没用了,留下来只会更危险,因为这个路径通常是很暴露的,很容易被用户发现这里有个不安全的文件,而得到病毒原样本。既然这个原始文件已经没用了,病毒在完成复制后就会自我删除掉原路径下的病毒文件。这就是计算机病毒的自我删除性。
    6. 传播
    所谓传播,就相当于生物病毒那样,使更多未受感染的对象也被感染病毒。当计算机病毒为了自己的生存做完准备工作以后,接下来就会疯狂的传播自己。病毒传播自己的方式比较多,如大多蠕虫病毒将利用局域网的共享资源漏洞或 ARP 欺骗等方法在局域网内传播。而某些脚本病毒则会嵌入到一个网页中,或者嵌入到邮件中,当我们打开网页或者邮件的同时,病毒也随之运行起来,从而达到利用网页、邮件传播的目的。优盘病毒则是利用 Windows 系统驱动器的自动播放功能进行传播。在 2.2 节的实例 02-05 将揭示优盘病毒的传播原理。
    7. 感染
    所谓感染性,就是使原本正常的程序,在不改变原有功能的基础上,使其捆绑病毒,从而成为携带病毒的程序。这种程序运行以后通常先执行病毒功能,然后再执行程序原本功能。病毒功能的执行又很隐蔽,所以很难发现病毒的存在。同时因为病毒与正常程序进行了捆绑,所以在杀毒的时候并不能直接删除捆绑病毒的程序,必须清除病毒代码。因此这种病毒的处理难度相对较大。
    警示
    除了以上特性以外,计算机病毒还具有非法性、潜伏性、破坏性、变异性等多种特性。在今后的学习中,我们将会发现计算机病毒的更多特性。


    IP属地:内蒙古2楼2020-10-01 10:09
    回复
      2.2 计算机病毒特性实例揭秘
      计算机病毒为了长期生存,并且为了达到各种目的通常表现出欺骗性、隐蔽性、自启动性、自我复制性、自我删除性、传播性、感染性等特征。病毒的这些特性要利用 windows 系统的一些功能。这一节将在病毒与反病毒的较量过程中,用实例揭示病毒各种常用的手法。
      实例 02-01 显示文件扩展名
      说明
      在 Windows 系统中有多种类型的文件,不同类型的文件具有不同的文件格式,由不同的程序打开,或者具有不同功能,Windows 系统使用不同的扩展名来区分它们。这里所说的扩展名就是完整文件名,符号 “.” 及其后面的部分称为文件扩展名。也就是说通常情况下可以通过文件扩展名判断这个文件所属类型。例如:常见的记事本程序生成的文本文件的扩展名是 .txt,我们听的歌曲文件扩展名有 .mp3,.wmv,.rm 等,Word 文本编辑器生成的文件扩展名为 .doc 等。
      计算机应用程序同样也具有扩展名,32位 Windows 平台上的可执行程序(又称之为 PE——Portable Executable 文件,这种文件具有特殊的文件格式,在 5.1 节将做详细介绍)的扩展名通常是 .exe。只有具有这样的扩展名的 PE 文件,通过双击才能运行起来。否则只能使用特殊的方法运行。
      说明
      一个可执行的程序,例如记事本程序,如果我们将其扩展名除去后再双击它,它不会运行。因为没有了扩展名, Windows 系统无法识别这是什么类型的文件。所以通常会询问用户使用哪个程序来打开这个文件,如图 2-3 所示。此时可以使用特殊方法打开它,这里所谓的特殊方法是指使用能够启动可执行程序的工具来运行程序。使用这种工具启动 PE 文件不需要带 .exe 扩展名。

      一个计算机病毒,它如果想很容易地运行起来,肯定也要使用 .exe 这个扩展名,否则用户怎么可能去用特殊的方法运行病毒呢?
      在上一节曾讲过,计算机病毒为了欺骗用户会将自身伪装成为图片或者文件夹的图标。我们都知道图片文件的扩展名通常是 .jpg 或者其他格式,总之不可能是 .exe,而文件夹正常情况是没有扩展名的。计算机病毒为了欺骗用户伪装成这种图标,为了很容易地运行起来又不得不使用 .exe 这个扩展名,这样稍稍细心的用户就能够很容易看出破绽。
      对于病毒来说,值得庆幸的是 Windows 默认情况下是隐藏所有文件扩展名的,这样就不存在这个破绽了。然而对于我们计算机使用者来说,这可不是什么好的事情。只有更改 Windows 系统的默认设置,才能让病毒无处遁行。为了使计算机病毒暴露,我们应该让 Windows 默认显示所有文件的扩展名。
      通过 Windows 系统提供的功能可以设置是否显示文件扩展名,方法如下:
      (1) 双击 “我的计算机” 打开资源管理器,选择 “工具” 菜单栏,然后选择 “文件夹选项” 子菜单项,此时弹出 “文件夹选项” 对话框,如图 2-4 所示。

      (2) 然后请选择 “查看” 属性页,如图 2-5 所示。在下面的 “高级设置:” 列表框中,拉动右边的滚动条找到 “隐藏已知文件类型的扩展名” 这一项,将前面的 “√” 选项去掉。这意味着在资源管理器中默认浏览文件时不隐藏已知文件类型文件的扩展名。
      如此一来,尽管计算机病毒伪装了图标,可是通过这个明显的 .exe 扩展名我们便能够看出其中的破绽,从而不会轻易双击这样图标的文件。

      建议
      在您使用计算机的时候,请关闭 “隐藏已知文件类型的扩展名” 这个选项,同时注意扩展名为 .exe 的奇怪图标文件,它极有可能是病毒,不能轻易双击打开。


      IP属地:内蒙古3楼2020-10-01 11:04
      回复
        实例 02-02 强制隐藏 .exe 文件的扩展名
        通过显示文件扩展名这个简单的操作,揭穿了计算病毒可能存在的欺骗手段。那么计算机病毒对此是不是就无以应对了呢?当然不是了,计算机病毒作者是很清楚系统各种设置及漏洞的,当然也知道我们会通过以上操作来显示文件扩展名。
        下面我们来揭秘病毒制作者相应的对策。
        Windows 系统中的文件扩展名是可以强制隐藏起来的,即使关闭了上述的 “隐藏已知文件类型的扩展名” 这个选项也无济于事,方法如下。
        (1) 单击 “开始” 菜单,选择 “运行” 菜单项,然后在弹出的运行对话框中输入 “regedit” 命令后按回车键,如图 2-6 所示。
        (2) 回车后将弹出注册表编辑器,如图 2-7 所示。

        说明
        关于注册表和注册表编辑器的详细知识将在后面小节作详细介绍,在此可以按照步骤完成相应操作。读者只需理解其行为结果,不需要理解其原理。
        (3) 在注册表 HKEY_CLASSES_ROOT 根键下,找到 exefile 这一子键(单击前面的 “+” 号即可展开,然后依此展开),然后在右边的窗口中单击右键选择 “新建”,然后选择 “字符串值” 取名字为 NeverShowExt,值为空即可,如图 2-8 所示。
        这时即使我们使用前面所述的方法关闭 “隐藏已知文件类型扩展名” 这一项,虽然可以显示其他类型文件的扩展名,但是您会发现所有的可执行程序的扩展名都看不到了。病毒再次达到了隐藏扩展名的目的。
        然而计算机病毒的这种方法仍然是有破绽的。我们仔细观察会发现,因为我们设置了显示所有文件的扩展名,而病毒隐藏了其本身的扩展名,那么我们看到某个文件的图标是一个图片,按常理我们能够看到它的扩展名,如果它没有扩展名,那么这个文件就非常可疑了。
        警示
        当我们遇到了图标是图片,又没有扩展名的文件,我们首先应该检查 “隐藏已知文件类型的扩展名” 设置项,如果该项已经关闭,那么这个文件就很可疑。
        实例 02-03 隐藏 “文件夹选项” 子菜单项
        通过显示文件扩展名的方法可以揭穿计算机病毒的欺骗的把戏,计算机病毒使用实例 02-02 的方法强制隐藏可执行程序扩展名的方法来欺骗我们。为了欺骗我们,计算机病毒通常还会使用另外一种方法——隐藏 “文件夹选项” 这一子菜单,我们就无法利用系统提供的功能来显示文件的扩展名,方法如下。
        (1) 使用实例 02-02 中相同的方法打开注册表编辑器,然后找到 HKEY_CURRENT_USER 根键,然后依此展开以下子键:
        software\microsoft\windows\currentversion\policies\explorer
        (2) 在右边的窗口单击右键选择 “新建”,然后选择 “DWORD值”,取名叫 NoFolderOptions,值设置为1,如图 2-9 所示。

        (3) 单击确定后关掉注册表。这时我们再看一下资源管理器中的 “工具” 菜单。仍然有 “文件夹选项” 这个子菜单,为什么没有被隐藏呢?这是因为这一项设置的更改需要重新启动计算机才能够生效。
        (4) 我们重新启动一下计算机,再来看 “文件夹选项” 子菜单的确消失了。这时候我们也就没办法使用它里面的功能了,当然也就无法显示文件扩展名了。
        既然我们已经知道病毒使用的方法,当然我们就可以把它做的屏蔽破坏掉了。方法很简单,因为它修改了注册表,那么我们再修改回来就可以了。
        小技巧
        病毒对系统动了手脚,我们恢复的办法很简单。如实例 0202中,我们只需把 NeverShowExt 项删除就可以了;而 02-03 中我们可以把 NoFolderOptions 的值修改为 0,或者干脆把这一项删除掉,但是记得要重新启动计算机,我们的 “文件夹选项” 又回来了,又可以显示文件的扩展名了,从而粉碎病毒的欺骗意图。


        IP属地:内蒙古4楼2020-10-03 09:33
        回复
          实例 02-04 禁用注册表编辑器
          我们利用注册表编辑器,把计算机病毒所做的破坏更改回来,这样病毒的欺骗目的再次被揭穿,那么病毒作者是不是甘于认输呢?肯定不会的,病毒作者也会料到有人了解他欺骗用户的方法,以及对欺骗所作的保护,料到会有人使用注册表编辑器把它所做的修改纠正回来,那样他所作的一切就是徒劳的了。此时他又会怎么做呢?其实他要做的事情很简单,就是禁用注册表编辑器,让我们无法使用它,方法如下。
          (1) 打开注册表编辑器,然后找到注册表编辑器的根键 HKEY_CURRENT_USRER,然后依此展开如下子键:
          software\microsoft\windows\current version\policies\system
          (2) 在右边的窗口中单击鼠标右键,选择 “新建”,然后选择 “DWORD 值” ,取名为 DisableRegistryTools,设置为1,如图 2-10 所示。
          (3) 最后关闭注册表。我们再点击 “开始”,选择 “运行”,然后输入 regedit.exe 回车,启动注册编辑器。看看发生了什么?弹出来一个错误提示框,如图 2-11 所示,注册表真的被禁用了。我们没办法利用它来恢复病毒对注册表的修改了,病毒再一次得逞了。

          我们看到,病毒作者为了能够欺骗用户,使他的病毒得以生存真是煞费苦心。这表现了病毒的又一特性顽固性,到最后,计算机病毒居然把我们的注册表编辑器都禁用了,这样他对注册表做的任何更改,我们都无法通过注册表编辑器来进行恢复了。
          疑问
          计算机病毒修改了系统注册表,又禁用了注册表编辑器,这是我们没有办法再利用注册表编辑器来恢复病毒所做的改动了。如何来解决这个问题呢?在 2.5 节我们将继续讲解,同时还将介绍另外一种禁止注册表编辑器的方法。


          IP属地:内蒙古5楼2020-10-04 09:00
          回复
            实例 02-05 优盘传播病毒原理实例
            我们知道,计算机病毒并不会偶然产生,通常是通过网络进行传播的。然而有些计算机用户,他的计算机根本没有链接网络,那么原本干净的系统怎么会感染上计算机病毒了呢?这种情况下一般是由于在该计算机上使用了携带计算机病毒的可移动设备而造成的,通常是优盘或移动硬盘等。那么计算机病毒是如何通过优盘进行传播的呢?
            说明
            本实例将演示在双击优盘盘符后并不是打开优盘,而是运行优盘中的程序(这里是记事本程序)。
            原理是当我们双击计算机某个分区或者对某个分区选择右键弹出菜单的打开项的时候,系统将搜索该分区根目录下是否存在 Autorun.inf 文件,如果存在则根据 Autorun.inf 文件中的内容执行相应的操作。
            疑问
            Autorun.inf 是什么文件呢?在系统中具有什么作用呢?
            严格的说 Autorun.inf 文件是一个必须存放在驱动器根目录下的有一定格式并且文件名为 “Autorun.inf ” 的文本文件。当我们将光盘放入光驱,光盘会自动被执行,主要依靠两个文件,其一就是光盘上的 Autorun.inf 的文件,另一个是操作系统文件之一的 Cdvsd.vxd。Cdvsd.vxd 会随时侦测光驱中是否有放入光盘的动作,如果有的话,便开始寻找光盘根目录下的 AutoRun.inf 文件,根据其文件内容执行相应操作。
            Autorun.inf 文件由一个或多个 “节” 组成,每个 “节” 必须以节名作为开始的一行,节名必须用中括号 “[]” 括起来,节名之下则为本节中的命令。AutoRun.inf 一共支持三个节,分别为 [AutoRun]、[AutoRun.alpha]、[Deviceinstall],其中只有 [AutoRun] 是必须存在的。AutoRun.inf 文件格式如下。
            [AutoRun] 节通常包括以下命令:
            (1) action: 为 open 和 shellexecute 运行的程序指定名称;
            (2) icon: 指定驱动器图标;
            (3) label: 指定驱动器卷标;
            (4) open: 自动运行并打开指定文件;
            (5) shellexcute: 自动运行并打开指定文件(与 open 不同的是可以使用文件关联信息打开文件)。
            (6) UseAutoPlay: 值只能等于1,用来使用 autoplay 的 v2 特性,只支持 Windows XP 的 SP2 以上版本;
            (7) shell: 指定默认右键菜单名称;
            (8) shell\verb: 添加自定义右键菜单;
            [DeviceInstall] 节用来指定搜索驱动的目录,如:DriverPath=c:\windows\system32。通常病毒不会用到这个功能。
            提示
            本实例的目的是为了实现双击优盘后则执行预先放在优盘中的程序,而不是打开优盘,从而研究掌握优盘传播病毒的传播原理和预防方法。


            IP属地:内蒙古6楼2020-10-04 09:44
            回复
              (1) 将记事本程序(代替病毒程序)——c:\windows\notepad.exe 复制到优盘中,我们计划双击优盘后就运行这个程序。
              (2) 在优盘中新建一个 AutoRun.inf 文件,这里的文件名并不区分大小写,然后在双击打开它输入以下内容:
              [AutoRun]
              open=notepad.exe
              shellexecute=noetpad.exe
              shell\Auto\Command=notepad.exe
              (3) 保存并关闭文件
              (4) 将优盘取下,这时候这个优盘已经具有了双击后运行记事本程序的功能。再次将优盘插入计算机,打开我的计算机,双击优盘的图标,我们发现并没有打开优盘,而是将优盘里的记事本运行起来了。此时在右键弹出菜单中我们会看到一个 Auto 菜单,单击它也会运行记事本程序,如图 2-12 所示。

              说明
              计算机病毒经常利用这个方法来进行传播,而且这种方法不仅用于优盘,同样也适用于硬盘和移动硬盘。例如我们可以在某地本地磁盘(如 D: 盘)根目录下复制同样的程序和文件,然后重启计算机,启动后双击 D: 盘记事本同样会运行起来,如图 2-13、图2-14所示。这就是在我们中了优盘病毒以后无法通过双击打开磁盘分区的原因。

              警示
              在 Windows 98 系统下,可以利用 open=notpad.exe 这种方式实现指定程序在优盘插入计算机后便自动运行的功能。如我们这里是记事本程序的自动运行,通常是指优盘刚刚插入系统后便自动运行记事本程序,无需双击操作。但是在 Windows XP SP2 和 Vista 下,自动运行已经演变为 Autoplay (自动播放)。所以插入优盘后不在自动运行指定的程序,而是弹出窗口询问选择何种操作,如图 2-15 所示。


              IP属地:内蒙古8楼2020-10-05 09:24
              回复
                疑问
                既然优盘病毒传播如此疯狂,当计算机中毒后又如何解呢?
                我们知道了它的原理,解决起来就很容易。上述的方法仅在我们双击盘符或者单击右键菜单的 Auto 项时才会自动运行病毒的程序。我们可以通过右键菜单,然后单击 “打开” 菜单项来打开优盘或硬盘,就不会运行 AutUrun.inf 中指定的程序了。
                警示
                上述解决方法是比较常见、比较简单的解决方法,许多计算机用户也都知道并使用这种方法。对于以上方式的病毒
                这种方法的确可行,但是有时候这并不是十分保险的方法。请看如下例子:
                在 Autorun.inf 文件中输入如下内容:
                [AutoRun]
                open=notepad.exe
                shell\open=打开(&o)
                shell\open\Command=notepad.exe
                shell\open\defualt=1
                shell\explore=资源管理器(&X)
                shell\explore\Command=notepad.exe
                然后保存。此时将优盘取下然后再插入计算机,双击优盘盘符将会发现并没有打开优盘,而是记事本程序运行了。右键单击优盘盘符后的界面如图 2-16 所示。
                此时没有出现 Auto 字样,而是看上去很正常。那么请单击 “打开” 菜单项,结果怎么样呢?它并没有打开优盘,记事本程序依然运行了。这次单击 “资源管理器” 菜单项,还是没有打开优盘,记事本程序又运行了。通过这个例子我们可以发现,仅通过 Auto 去识别优盘病毒,或者利用所谓安全的 “打开” 菜单项都是不可靠的。这种方法也是当今病毒最常使用的方法,非常具有迷惑性,读者需要特别注意这种方法。

                建议
                我们可以使用在 “我的计算机” 的地址栏中输入欲打开的盘符如 D: 然后按回车键这种方法打开目标磁盘。使用这种方法打开驱动器并不会驱动下面 Autorun.inf 文件中指定的程序,也就可以有效地防止优盘病毒的传播。打开之后将 Autorun.inf 文件以及文件内容中 [AutoRun] 项下的 “open=”、“shellexecute=”、“shell\Auto\command=” 所指向的程序分别删除。有时候并不一定指向同一个程序,可能指向多个病毒程序。


                IP属地:内蒙古9楼2020-10-05 09:53
                回复
                  疑问
                  如何有效防止我们使用的计算机感染优盘病毒呢?
                  方法一:关闭系统自动播放功能,有三种方法可以关闭系统自动播放功能。
                  1. 禁用 “自动播放” 服务
                  单击 “开始” → “控制面板” → “管理工具” 项目,打开服务窗口,找到并双击 “Shell Hardware Detection” 服务(关于服务的概念稍厚讲解),将其设为 “禁用” 即可关闭 “自动播放服务”,如图 2-17 所示。
                  2. 使用组策略关闭 “自动播放” 功能
                  单击 “开始” → “运行” 键入 “gpedit.msc” 打开 “组策略” 窗口。在左窗阁的 “本地计算机,策略” 下,展开 “计算机配置” —— “管理模板” —— “系统” 下,在右窗格的 “设置” 标题下,双击 “关闭自动播放”。单击 “设置” 选项卡,选中 “已启用” 复选钮,然后在 “关闭自动播放” 框中选择 “所有驱动器”,单击 “确定” 按钮,即可关闭自动播放,如图 2-18 所示。



                  IP属地:内蒙古10楼2020-10-06 09:08
                  回复
                    提示
                    组策略(group policy)是管理员为用户和计算机定义并控制程序、网络资源及操作系统行为的主要工具。通过使用组策略可以设置各种软件、计算机和用户策略。所谓组策略,就是基于组的策略,它以 Windows 中的一个 MMC 管理单元的形式存在,可以帮助系统管理员针对整个计算机或是特定用户来设置多种配置,包括桌面配置和安全配置。譬如,可以为特定用户或用户组定制可用的程序、桌面上的内容,以及 “开始” 菜单选项等,也可以在整个计算机范围内创建特殊的桌面配置。简而言之,组策略是 Windows 中的一套系统更改和配置管理工具的集合。
                    3. 修改注册表关闭磁盘驱动器的 Autorun 功能
                    说明
                    磁盘分区 Autorun 功能原理是这样的,选择 Windows 注册表如下路径:
                    [HKEY_CURRENT_USRER\software\Microsoft\Windows\Current Version\Policies\Exploer]
                    在右侧窗格中有 “NoDriverTypeAutoRun”,这个键决定了是否执行 AutoRun 功能。它的值默认是十六进制 95,也就是二进制 10010101。其中每一位(从右到左)代表一个设备。不同设备用以下数值表示:
                    设备名称 第几位 值 数值表示 设备名称含义
                    DRIVER_UNKNOWN 0 1 01h 不能识别的类型设备
                    DRIVER_NO_ROOT_DIR 1 0 02h 没有根目录的驱动器
                    DRIVER_REMOVABLE 2 1 04h 可移动驱动器
                    DRIVER_FIXED 3 0 08h 固定的驱动器
                    DRIVER_REMOTE 4 1 10h 网络驱动器
                    DRIVER_CDROM 5 0 20h 光驱
                    DRIVER_RAMDISK 6 0 40h RAM 磁盘
                    保留 7 1 80h 未指定的驱动器类型
                    值为 “0” 表示设备运行,为 “1” 表示设备不运行,更改注册表此键值可控制 autorun.inf 的运行。在默认情况下,会自动运行的设备是 DRIVE_NO_ROOT_DIR、DRIVER_FIXED、DRIVER_CDROM、DRIVER_RAMDISK 这四个保留设备。所以应该将(最右边一位为第 0 位)第 2 位、第 4 位、第 6 位、第 7 位分别设置为 0,其余位置 1,即得到得到二进制 10010101 值,也就是十六进制的 95 00 00 00。如果要禁止硬盘和移动硬盘自动运行,需将第 2 位、第 3 位置 1,其余位置 0,得到如下值:00001100,然后使用 Windows 自带的计算器将这个值转换为十六进制 0C。将这个值添加到注册表的 “NoDriveTypeAutoRun” 键下即可。如果仅想禁止软件光盘的 AutoRun 功能,但又保留对 CD 音频碟的自动播放功能能力,这时只需要将 “NoDriveTypeAutoRun” 的键值改为 BD000000 即可。
                    利用上述原理,我们只需设置相应的值禁用掉驱动器的 AutoRun 功能,便可以有效地预防优盘病毒的传播。


                    IP属地:内蒙古11楼2020-10-06 10:12
                    回复
                      疑问
                      如果既想保留驱动器的自动播放功能,又要防止中 Autorun 病毒,那该怎么办呢?
                      方法二:阻止 Autorun.inf 文件的创建。
                      我们知道病毒主要利用了 Autorun.inf 文件实现的自动运行功能。那么只要想办法不让病毒创建 Autorun.inf 文件就可以有效地阻止病毒的这种传播行为了。
                      如何阻止 Autorun.inf 文件的创建呢?最简单的方法是在所有本地磁盘根目录、优盘根目录、移动硬盘根目录下,也就是病毒可能写入 Autorun.inf 文件的地方新建一个文件夹,取名就为 Autorun.inf。这样如果不删除这个文件夹无论通过什么样的方法都不能再建立 Autorun.inf 文件了,从而达到预防的目的,如图 2-19 所示。

                      疑问
                      上述方法是在不删除 Autorun.inf 文件夹的前提下才能起效,如果病毒在创建它的 Autorun.inf 文件之前首先检测根目录是否存在 Autorun.inf 文件夹,如果存在则删除它,然后再创建 Autorun.inf 文件,这与我们的预防工作就徒劳了,怎样解决这个问题呢?
                      其实我们的预防工作失效的根本原因是病毒删除了我们预先建立的 Autorun.inf 文件夹,只要能够阻止病毒删除这个文件夹就达到目的了。我们可以使用如下方式建立一个不能被删除的 Autorun.inf 文件夹(例如我们在D:盘建立不能被删除的 Autorun.inf 文件夹)。
                      (1) 单击 “开始” → “运行”,在地址栏里输入 CMD 后回车,将弹出控制台命令窗口,如图 2-20 所示。

                      (2) 依次输入以下命令(每输一行请按一次回车键),如图 2-21 所示。

                      d:
                      md Autorun.inf
                      cd Autorun.inf
                      md nokill...\
                      输入完成后关闭程序窗口即可。
                      这样禁止删除的 Autorun.inf 文件夹 就建好了。
                      (3) 当我们试图删除这个文件夹时会弹出如下错误提示框,该文件夹无法被删除,如图 2-22 所示。

                      说明
                      原理是这样的,在 Autorun.inf 文件夹里建立一个任意文件名的无效文件夹,所谓无效文件夹也就是在文件名后面添加三个点再加一个斜杠,这样这个文件夹就成为无效文件夹。因为无效文件夹是不能被访问和删除的,从而也导致包含这个无效文件夹的 Autorun.inf 文件夹无法被删除。那么建立名为 nokill.../ 的文件夹是关键步骤,至于前面的名 nokill 可以任意取,只要在后面紧跟三个半角符号的点和一个斜杠就可以了。这样就使得 Autorun.inf 文件夹删不掉了。
                      注意
                      建立无法被删除的文件夹在 Windows 下是无法被完成的,必须在命令行下完成,同时如果读者自己想删除该文件夹可以在控制台下使用 rd d:\autorun.inf/s/q 命令删除。


                      IP属地:内蒙古12楼2020-10-07 09:02
                      回复
                        2.3 研究计算机病毒所涉及的计算机系统相关知识(略)
                        2.4 计算机病毒对注册表的利用
                        通过上一节的实例,我们可以发现计算机病毒的许多功能都是通过 windows 注册表实现的。这一节将详细介绍它。
                        1. 注册表的概念
                        Windows 注册表是指:Microsoft Windows 9X、WindowsCE、WindowsNT、Windows2000、Windows XP 和 Windows Vista 中使用的中央分层数据库,用于存储一个或多个用户、应用程序和硬件设备配置系统所必须的信息。注册表包含 Windows 在运行期间不断引用的信息,例如,每个用户的配置文件、计算机上安装的应用程序以及每个应用程序可以创建的文档类型、文件夹和应用程序图标的属性表设置、系统上存在哪些硬件、正在使用哪些端口以及包含了有关计算机如何运行的信息。Windows 将它的配置信息存储在以树状格式组织的数据库(注册表)中。
                        注册表取代了 Windows3.X 和 MS-DOS 配置文件(例如,Autoexec.bat 和 Config_sys)中使用的绝大多数基于文本的 .ini 文件。注册表编辑器是用来查看和更改系统注册表设置的高级工具,尽管可以用注册表编辑器查看和修改注册表,但是建议普通用户不必这样做,因为更改不正确可能会损坏系统。能够编辑和还原注册表的高级用户可以安全地使用注册表编辑器执行以下任务:清除重复项、删除已被卸载或删除的程序项。如图 2-25 所示的注册表编辑器,启动注册表编辑器的方法:“开始” → “运行” → “regedit.exe”

                        regedit.exe 在安装过程中自动安装并与 Windows 存储在同一个文件夹中。其数据文件一般保存在 C:\Windows 目录下的 system.dat 和 user.dat (win95) 或者 C:\WINDOWS\system32\config 目录下的
                        “Default”、“SAM”、“Security”、“Software” 和 “System” 五个文件中(属性均为隐藏,且无扩展名)。
                        提示
                        虽然几个 Windows 操作系统都有注册表,但这些操作系统的注册表有一定的区别。无论是哪个版本的操作系统的注册表,其功能都很类似,并且都十分复杂。想完全掌握注册表不是一件容易的事情,需要长时间积累。其实我们并没有必要去搞清楚注册表的每一项,只是掌握具有关键功能的注册表项就可以了。至于哪些地方是关键项,所谓的长时间积累就是这个意思了。笔者前面小节中已经讲到一些,而且在以后分析病毒过程中,我们还可以通过病毒对注册表的使用,掌握更多有用的关键项。


                        IP属地:内蒙古13楼2020-10-08 09:30
                        回复
                          下面介绍一下与注册表相关的术语
                          (1)HKEY(“根键” 或 “主键”)
                          它的图标与资源管理器中文件夹的图标有些相像。Windows98 将注册表分为六个部分,并称之为 HKEY_name,它意味着某一键的句柄。
                          例如,前面的图 2-25 所示的 Windows NT 系统的五大根键。注册表中分别有如下根键:
                          HKEY_LOCAL_MACHINE、HKEY_CLASSES_ROOT、HKEY_CURRENT_CONFIG、HKEY_DYN_DATA(基于 Windows NT 系统没有这一项)、HKEY_USERS、HKEY_CURRENT_USER。
                          (2)key(键)
                          它包含了附加的文件夹和一个或多个值。
                          例如,SOFTWARE\Microsoft\Windows\CurrentVersion\Run 这个注册表路径中,其中 SOFTWARE、Microsoft、Windows 等都称为注册表的键。
                          (3)subkey(子键)
                          在某一个键(父键)下面出现的键(子键)。
                          例如:
                          SOFTWARE\Microsoft\Windows\Currentversion\Run
                          这个注册表路径中,SOFTWARE 键是 Microsoft 键的父键, Microsoft 键则是 SOFTWARE 键的子键。同理 RUN 键则是 CurrentVersion 键的其中一个子键(这里使用其中这个字眼,说明一个父键可以含有多个子键,或者说多个子键可以共有一个父键)。
                          (4)branch(分支)
                          代表一个特定的子键及其包含的一切。一个分支可以从每个注册表的顶端开始,但通常用以说明一个键及其所有内容。
                          (5)value entry(值项)
                          带有一个名称和一个值的有序值。每个键都可以包含任何数量的值项,每个值项均有三部分组成:名称,数据类型,数据。
                          (6)字符串(REG_SZ)
                          顾名思义,一串 ASC‖ 码字符,如 “Hello World”,是一串文字或词组。在注册表中,字符串值一般用来表示文件的描述、硬件的标识等,通常它由子母和数字组成。注册表总是在引号内显示字符串。
                          (7)二进制(REG_BINARY)
                          如 F03D990000BC,是没有长度限制的二进制数值,在注册表编辑器中,二进制数据是以十六进制方式显示的。
                          (8)双字(REG_DWORD)
                          从字面上理解应该是 Double Word,双字节值。由八个十六进制数据组成,我们可以用十六进制或十进制的方式来编辑,如 D1234567。
                          (9)Default(缺省值)
                          每一个键至少包括一个值项,称为缺省值(Default), 它总是一个字符串。


                          IP属地:内蒙古14楼2020-10-08 10:14
                          回复
                            2. 注册表的结构
                            在注册表编辑器中注册表项是用控制键来显示或者编辑的,控制键使得查找和编辑各注册表项更加容易。下面是注册表少个控制键,又称主键或根键。
                            HKEY_LOCAL_MACHINE
                            HKEY_CALSSES_ROOT
                            HKEY_CURRENT_CONFIG
                            HKEY_DYN_DATA(基于 Windows NT 的系统没有这一项)
                            HKEY_USERS
                            HKEY_CURRENT_USER
                            由图 2-25 可以看出这一个 Windows NT 操作控制键的显示和编辑好像是独立的键,然而实际上它们并不是各自独立的。其中:HKEY_CALSSES_ROOT 和 HKEY_CURRENT_CONFIG 是 HKEY_LOCAL_MACHINE 的一部分。换句话说,HKEY_LOCAL_MACHINE 则包含了 HKEY_CALSSES_ROOT 和 HKEY_CURRENT_CONFIG 的所有内容。HKEY_CALSSES_ROOT 其实就是 HKEY_LOCAL_MACHINE\SOFT\CLASSES,但是在 HKEY_CLASSES_ROOT 窗口编辑来说显得相对更容易和有条理。
                            每次计算机启动时,HKEY_CURRENT_CONFIG 和 HKEY_CLASSES_ROOT 的信息都会被独立映射用以方便查看和编辑。
                            HKEY_CURRENT_USER 实际是 HKEY_USERS 的一分。
                            HKEY_USERS 保存着默认用户信息和当前登陆用户信息。当一个域成员计算机启动并且一个用户登陆,域控制器自动将信息发送到 HKEY_CURRENT_USER 里,而且这个信息被映射到系统内存中。其他用户的信息并不发送到系统,而是记录在域控制器里。


                            IP属地:内蒙古16楼2020-10-10 09:20
                            回复
                              2.2.4 注册表操作的注意事项
                              (1)编辑注册表不当可能会严重损坏系统。在更改注册表之前,应备份计算机上任何有价值的数据,以免一同崩溃带来有效数据信息的丢失。
                              (2)在更改注册表之前,建立备份副本。可以使用程序(如 “备份”)来备份注册表。更改注册表之后,最好创建 “自动恢复系统”(ASR)磁盘。
                              (3)不要使用其他版本的 Windows 或 Windows NT 操作系统的注册表来替换 Windows 注册表。
                              (4)使用工具和程序而不是注册表编辑器来编辑注册表。编辑注册表不当可能会严重损坏您的系统,所以应该使用可提供更安全的编辑注册表方法的工具和程序去编辑修改注册表。
                              (5)请不要让注册表编辑器在无人值守的状态下运行
                              关于注册表更多的认识,请读者参阅相关书籍,在此笔者不想再过多讲解。后面章节将要讲解关于注册表的知识是病毒经常利用的,对系统危害非常大的那些关键项。


                              IP属地:内蒙古17楼2020-10-10 09:31
                              回复