论坛: 菜鸟乐园 标题: <WIN常见漏洞攻击与防范实战>第三章A 复制本贴地址    
作者: wish [wish259]    论坛用户   登录
.禁止光盘的自动运行功能   
为屏幕保护设置密码之后我们就万无一失了吗?不!光盘的自动运行功能会给我们带来麻烦。众所周知,Windows 98具有自动运行光盘的功能,当我们在光驱中插入CD之后,CD会自动进行播放,而当我们插入根目录中带有“Autorun.inf”文件的光盘之后,光盘也会自动运行。Windows 98的屏幕保护功能并没有禁止光盘的自动运行功能,也就是说即使处于屏幕保护程序密码的控制之下,用户在插入一张根目录中含有“Autorun.inf”文件的光盘之后,系统仍会自动运行,这就给恶意攻击者带来了可乘之机(据说市面上已经出现了一种专门用于破解屏幕保护程序密码的自动运行光盘,插入该光盘后,系统就会自动对屏幕保护功能的密码进行分析并破译出密码,然后再将密码写到软盘上,接下来……),因此我们必须将光盘的自动运行功能关闭,让屏幕保护真正发挥它应有的安全保护作用。关闭光盘的自动运行功能,可以按如下步骤操作:

(1)用鼠标右键单击“我的电脑”图标,然后从弹出的快捷菜单中执行“属性”命令,打开“系统属性”设置框;

(2)单击“设备管理器”标签;

(3)展开“CDROM”分支,从中选择用户所使用的光驱;

(4)单击“属性”按钮,打开光驱属性设置框;

(5)单击“属性”标签;

(6)取消“自动插入功能”选项;

(7)连续单击两次“确定”按钮,保存设置并退出所有对话框。

执行上述步骤后,无论谁在光驱中插入根目录中含有“Autorun.inf”文件的光盘之后,系统都不会自动运行。美中不足的是,本方法非常“霸道”――除光盘的自动运行功能之外,CD的自动播放功能也将被“牵连”,也就是说设置此功能后,系统将不会再自动播放插入的CD。有没有两全其美的办法呢?回答是肯定的,下面的步骤可为我们排忧解难:

(1)重复执行前述步骤,并在第6步中复选“自动插入功能”选项;

(2)运行“regedit”命令,打开注册表编辑器;

(3)展开“HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentversionPoliciesExplorer”分支;

(4)在“Explorer”主键中新建一个“Dword”值,取名为“NodrivetypeAutoRun”并将其值设置为“1”;

(5)这样,光盘的自动运行功能将被禁止,插入根目录中含有“Autorun.inf”文件的光盘后将不会发生任何作用,而CD的自动播放功能则得以保存。

3.7.4 对普通用户权限的限制   

现在,我们来设置普通用户的权限。对这些用户,我们一方面应根据工作需要赋予他们适当的权限,如启动计算机,打开相应的应用程序,对自己的数据文件进行拷贝、删除等操作,以保证他们工作的正常开展;另一方面,为了防止他们对系统进行修改而破坏整个系统,必须对他们的权限进行必要的限制,如不允许他们使用控制面板中的某些设置项目以防任意修改系统 ;不允许使用注册表编辑器、隐藏系统文件所在的分区以防意外等。

启动Windows 98,系统弹出启动登录框后从中选择须要限制其权限的普通用户,并输入相应的密码,以该用户的身份进入系统。参照超级用户的有关步骤对电源管理、屏幕保护等项目设置密码,然后根据需要对他们的权限进行必要的限制(注意,由于工作原因,不同普通用户可能须要拥有不同的操作权限,因此我们在对他们的权限进行设置时必须根据实际情况有选择地加以限制),最后将启动密码、电源管理及屏幕保护的密码通知相应用户,要求其独立对这些初识密码进行更改。至此,我们对相应用户权限的限制工作也告完成,此后即可由他们在限制的权限内正常对计算机进行操作。对普通用户的权限进行限制的措施主要包括:

1.删除“开始”菜单中的有关命令和项目

为了防止用户利用Windows 98“开始”菜单上的“查找”、“运行”等命令来运行一些特殊的应用程序,我们必须采用适当方法将它们删除:

(1)对“开始”菜单中“收藏夹”选项的操作:

●运行“Regedit”命令,打开注册表编辑器;

●展开“HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentversionPoliciesExplorer”分支;

●在“Explorer”主键下新建一个名为“Nofavoritesmenu”的“Dword”值,双击该值,在“编辑Dword值”对话框中将键值由0改为“1”;

●单击“确定”按钮,关闭“编辑“Dword”值”对话框,重新启动Windows 98,“开始”菜单中的“收藏夹”选项就会消失。

(2)对“开始”菜单中“文档”选项的操作:

利用上面相同的方法,在Explorer主键下新建一个名为“Norecentdocshistory”的“Dword”值,并将其值修改为“1”,则“文档”菜单中的内容不能被修改;在Explorer主键下新建一个名为“Clearrecentdocs onexit”的“Dword”值,并将其值修改为“1”,则每次退出系统时,Windows 98将自动清除文档菜单中的历史记录,在Explorer主键下新建一个名为“Norecentdocs menu”的二进制值,并将其值修改为“01 00 00 00”,则“文档”菜单将从Windows的“开始”菜单中消失。

(3)对“开始”菜单中“运行”选项的操作:

利用上面相同的方法,在Explorer主键下新建一个名为“Norun”的“Dword”值,并将其值修改为“1”,则“运行”命令将从Windows 98的“开始”菜单中消失。

(4)对“开始”菜单中“设置”选项的操作:

利用上面相同的方法,在Explorer主键下新建一个名为“Nosetfolders”的二进制值,并将其值修改为“01 00 00 00”,则“设置”子菜单将从Windows 98的“开始”菜单中消失;在Explorer主键下新建一个名为“Nosetraskbar”的二进制值,并将其值修改为“01 00 00 00”,我们将不能再对Windows 98的任务栏属性进行设置(前面设置了“Nosetfolders”二进制值之后,Windows 98的“设置”菜单不复存在,不过我们仍可通过右击Windows 98任务栏,并执行“属性”命令打开“任务栏”属性对话框,这显然不能满足我们关闭“任务栏”属性的要求,而设置此参数后,右击任务栏的方法也将失效)。

(5)对“开始”菜单中“查找”选项的操作:

利用上面相同的方法,在Explorer主键下新建一个名为“Nofind”的“Dword”值,并将其值修改为“1”,“开始”菜单中的“查找”子菜单就会消失。

(6)对“开始”菜单中“关闭系统”选项的操作:

利用上面相同的方法,在Explorer主键下新建一个名为“Noclose”的“Dword”值,并将其值修改为“1”,“关闭系统”命令就将从“开始”菜单中消失。

(7)对“开始”菜单中“注销”选项的操作:

利用上面相同的方法,在Explorer主键下新建一个名为“Nologoff”的二进制值,并将其值修改为“01 00 00 00”,则“注销”命令将从Windows 98的“开始”菜单中消失。

(8)取消用户的环境设置:

利用上面相同的方法,在Explorer主键下新建一个名为“Nosavesettings”的二进制值,并将其值修改为“01 00 00 00”,此后每次退出Windows 98时系统都不会保存用户对环境所作的设置。

经过上述设置后,可以满足不同用户的需要。

2.隐藏“开始”菜单中的应用程序

对于普通用户,我们可能要防止他们使用某些应用程序,这时就应采用下面的方法将Windows 98“开始”菜单中的应用程序隐藏起来:

(1)用鼠标右键单击“开始”菜单,从弹出的快捷菜单中执行“打开”命令,打开“Start Menu”文件夹窗口;

(2)在“Start Menu”文件夹窗口中找到希望隐藏的应用程序的快捷方式。

(3)右击该快捷方式,然后从弹出的快捷菜单中执行“属性”命令,打开相应快捷方式的属性设置框。

(4)复选“隐藏”选项,然后单击“确定”按钮,关闭所有对话框。

此后,这些隐藏的快捷方式就会从Windows 98的“开始”菜单中消失,从而在一定程度上达到了保密的目的(取消这些快捷方式的隐藏属性后即可令其重新显示)。

3.删除“网上邻居”等系统图标的技巧

基于某些特殊需要,我们可能须要禁止普通用户使用桌面上的“网上邻居”、“我的文档”、“回收站”等系统图标,而它们又不能采用常规方法删除。为此,我们可执行如下步骤:

(1)运行注册表编辑器“Regedit”打开注册表;

(2)展开注册表数据库的“HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionExplorer DesktopNamespace”主键;

(3)此时我们可以从“NameSpace” 主键中看到“网上邻居”、“我的文档”、“回收站”等分支,只须删除这些分支即可达到删除桌面上相应系统图标的目的

4.在图形界面下隐藏某个驱动器图标   

为防止普通用户的破坏,我们可能希望将保存系统文件的磁盘分区(如C盘)以及光驱、软驱等隐藏起来,不允许他们对这些磁盘分区进行访问。为此我们可以进行下面的操作:

(1)运行注册表编辑器“regedit”打开注册表;

(2)展开注册表数据库的“HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionPolicies Explorer”分支;

(3)用鼠标右键单击桌面空白处,然后执行快捷菜单中“新建”子菜单中的“二进制值”命令,创建一个名为“Nodrives”的二进制值。该二进制值(“Nodrives”)就是用于设置是否隐藏某个驱动器的,它由四个二进制字节构成(缺省值为00 00 00 00),每个字节的每一位都分别对应一个磁盘驱动器的盘符。当某位为“1”时,资源管理器及“我的电脑”中的相应驱动器图标即会隐藏起来。驱动器的值是这样确定的:A~Z的值依次为2的0至25次方,把要禁止的驱动器的值相加,转换为十六进制,就是“Nodrives”的键值。如要禁止A、D、E,则为1+8+16=25,转换为十六进制数19,修改“Nodrives”的值为“19 00 00 00”即可。

完成上述操作后,相应的磁盘驱动器图标就会从Windows 98的图形界面中消失,我们无论是从“资源管理器”、“我的电脑”及有关文件的打开、关闭对话框还是在其它外挂文件管理器(如Windows Commander等)中都无法发现这些隐藏了的磁盘分区的踪迹,从而满足了防止普通用户对系统文件进行破坏的需要,同时也使得他们不能使用任何外来程序(光驱、软驱都不能访问,光驱的自动运行功能又被禁止,有谁还能安装、运行其它程序呢),很好地保护了系统的安全。

5. 禁止使用MS-DOS方式的技巧   

采用前述方式隐藏某个磁盘分区的作用仅限于图形界面(如“资源管理器”、“我的电脑”、“Windows Commander”及其它对话框等),但它对字符方式,如MS-DOS方式无效。也就是说普通用户只要启动MS-DOS方式即可对隐藏的磁盘分区进行任意操作,这就是一大漏洞,因此我们必须采用适当办法禁止普通用户使用Windows 98的MS-DOS方式。具体步骤为:

(1)运行注册表编辑器“Regedit”打开注册表;

(2)展开注册表数据库的“HKEY_CURRENT_USERSoftWareMicrosoftWindowsCurrentVersionPolicies”分支;

(3)在“Policies”主键下新建一个名为“Winoldapp”的主键;

(4)在“Winoldapp”主键下新建一个名为“Disabled”的“Dword”值,并将其值设置为“1”(该项用于禁止用户进入Windows 98的MS-DOS窗口) ;

(5)在WinOldApp主键下新建一个名为NoRealMode的“Dword”值,并将其值设置为“1”(该项用于禁止用户在关闭系统时选择“重新启动计算机并且切换至MS-DOS状态”)。

这样,我们就实现了在Windows 98中禁止使用MS-DOS方式的目的,此后用户在试图进入MS-DOS方式(包括运行那些基于DOS平台的应用程序)时,系统就会弹出一个MS-DOS受到限制的对话框,不允许用户进入DOS方式,从而达到了保密的目的。

须要说明的是,当我们对某个普通用户的磁盘分区进行隐藏时,必须同时禁止该用户使用MS-DOS方式!反之却不存在必要的对应关系,也就是说我们可单独禁止某普通用户使用MS-DOS方式的权限,而不必对该用户的某个磁盘分区进行隐藏。

6.禁止使用控制面板中的某些特殊功能   

前面我们介绍了通过“Nosetfolders”二进制值可禁止显示Windows 98“开始”菜单中的“设置”选项,不过有时我们并不希望关闭“控制面板”,而只是希望禁止普通用户使用其中的部分功能(如禁止他们对“系统属性”进行设置等)。我们可以利用Windows 98目录下的“Control.ini”文件来达到这个目的:

(1)双击C:windows文件夹中的“Control.ini”;

(2)在“Controlo.ini”文件的“dont load”一节中加上“*.CPL=NO”命令,则相应的系统控制项目就会从“控制面板”中消失,如我们加上“SYSDM.CPL=NO”之后,“控制面板”中的“系统”项目就会消失。有关“CPL”文件与Windows 98“控制面板”中相应控制项目的对应关系如下。注意,部分“CPL”文件同时对应“控制面板”中的几个设制项目,如“Sysdm.cpl”就同时对应“控制面板”中的“系统”和“添加新硬件”两个设置项目,当我们在ontrol.ini文件中对这些“CPL”文件设置“*.CPL=NO”命令后,“控制面板”中它所对应的所有设制项目都会消失。

Access.cpl辅助选项Appwiz.cpl添加/删除应用程序“Desk.cpl”显示器“Inetcpl.cpl Internet”属性“Intl.ntl.cpl”区域“Joy.cpl”游戏控制器“Main.cpl”鼠标、打印机、键盘、输入法、 字体 “Mmsys.cpl”多媒体、声音 “Modem.cpl”调制解调器Nntcpl.cpl网络Password.cpl密码Po9wercfg.cpl电源管理 Sticpl.cpl扫描仪与数码相机Sysdm.cpl系统、添加新硬件Timedate.cpl日期和时间 Odbccp32.cpl odbc数据源管理器Telephon.cpl电话Themes.cpl桌面主体 Mlcfg32.cpl电子邮件 Findfast.cpl文件检索 Togmovse.togglemovse鼠标设置 Tweakui.cpl tweakui设置软件。

经过上述设置后,“控制面板”中的相应项目就不会出现。不过,只要上述文件还保存在计算机中,我们就仍然可以运行,如只须用鼠标右键单击“桌面”、“我的电脑”、“网上邻居”并执行“属性”命令,或双击系统“托盘”中的“时间”、“声音”等项目即可对显示属性、系统属性、网络属性、时区、输入法、声音等项目进行设置!另外,如果没有隐藏Windows 98的系统文件所在的磁盘分区,任何人只要打开Windows 98的“System”目录,用鼠标右键单击相应的“CPL”文件并执行快捷菜单中的“用控制面板打开”命令,都可达到启动“控制面板”中有关设置项目的目的。因此“Control.ini”文件的控制功能是不完善的,想真正做到“万无一失”,应通过修改注册表数据库进行控制:

(1)运行注册表编辑器“Regedit”打开注册表。

(2)展开注册表数据库的“HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionPolicies System”分支。

● 在“System”主键下新建一个名为“Novirt mempage”的“Dword”值,并将其值设置为“1”,则“控制面板/系统”设置项中的“虚拟内存”选项失效;

● 在“System”主键下新建一个名为“Nofile syspage”的“Dword”值,并将其值设置为“1”,则“控制面板/系统”设置项中的“文件系统”选项失效;

● 在“System”主键下新建一个名为“Noconfig page”的“Dword”值,并将其值设置为“1”,则“控制面板/系统”设置项中的“硬件配置文件”选项卡失效;

● 在“System”主键下新建一个名为Nodev mgrpage的“Dword”值,并将其值设置为“1”,则“控制面板/系统”设置项中的“设备管理”选项卡失效;

● 在“System”主键下新建一个名为“Nodisp backgro undpage”的“Dword”值,并将其值设置为“1”,则“控制面板/显示”设置项中的“背景”选项卡失效;

● 在“System”主键下新建一个名为“Nodisp scrsav page”的“Dword”值,并将其值设置为“1”,则“控制面板/显示”设置项中的“屏幕保护”选项卡失效;

● 在“System”主键下新建一个名为“Nodisp appearan cepage”的“Dword”值,并将其值设置为“1”,则“控制面板/显示”设置项中的“外观”选项卡失效;

● 在“System”主键下新建一个名为“Nodisp setti ngspage”的“Dword”值,并将其值设置为“1”,则“控制面板/显示”设置项中的“设置”、“外观”、“Web页”选项卡失效;

● 在“System”主键下新建一个名为“Nodispcpl”的“Dword”值,并将其值设置为“1”,则“控制面板/显示”设置项将被禁止。

设置完上述选项后,相应用户的这些功能就会受到限制,如当我们新建了“Nodispcpl”值之后,用户无论采用什么方法(无论是从“控制面板”中启动“显示”项,用鼠标右键单击桌面空白处后选择弹出菜单中的“属性”项、还是直接运行“Desk.cpl”文件),系统都会弹出一个“管理员已经禁止使用”显示“控制面板”的对话框,禁止该用户使用显示器属性设置框,这就从根本上达到了限制普通用户权限的目的。不过Windows 98注册表数据库对控制面板的限制功能并不完善,它仅能限制上述设置项目,而对其它一些设置项目(如电话、网络、密码等)则无能为力,我们若拟完全禁止普通用户使用这些功能,唯一的办法就是切换到Windows 98的“System”子目录,删除相应的控制面板文件(“*.CPL”文件)。但应注意不要将“Password.cpl”文件(即密码控制器)也删除掉(具体原因后面会详细说明)!

7.禁止自启动应用程序   

某些开机时自动运行的应用程序可能会给系统带来不安全的隐患,因此我们必须采用适当的方法禁止它们。

(1)取消“启动”程序组中的启动程序,绝大多数Windows应用程序都是通过“启动”程序组来实现自动运行目的的,对此我们可采用如下方法加以禁止:

●用鼠标右键单击Windows 98任务栏空白处,然后执行快捷菜单中的“属性”命令;

●在弹出的“任务栏属性”对话框中单击“开始菜单程序”标签;

●单击“删除”按钮,系统弹出“删除快捷方式/文件夹”对话框;

●选择“启动”程序组中欲禁止在Windows 98启动时自动运行的应用程序的快捷方式,然后单击“删除”按钮。

(2)取消“Win.ini”文件中的自启动选项,许多老版本应用程序都是通过“Win.ini”文件中的“Run”和“Load”命令来实现在Windows启动时自动运行的功能的,对于这些应用程序,我们只须利用记事本打开“Win.ini文件,找到“Run=”或“Load=”行,然后将调用这些应用程序的命令行删除即可。

●取消“Autoexec.bat”文件中的自启动命令行 通过“Autoexec.bat”文件实现系统启动时程序自动运行是许多DOS程序常采用的简便方法,对于它们,我们只须利用记事本打开“Autoexec.bat”文件,然后将调用这些应用程序的命令行删除即可。

●修改注册表中的自启动选项 在Windows 98中,系统新增了通过注册表数据库实现在启动时自动运行应用程序的功能,对于采用这一功能的应用程序,我们可采用如下方法:

・运行注册表编辑器“Regedit”打开注册表;

・展开注册表数据库的“HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRun”分支;

・“Run”主键中保存的就是所有通过注册表数据库实现在Windows 98启动时自动运行的应用程序,我们只须从中删除拟禁止的应用程序即可。

8.删除“新建”子菜单中的命令   

一般来说,单击鼠标右键都会从弹出的快捷菜单中发现一个“新建”子菜单(如图3-22)。

图3-22

我们可以通过该菜单下的命令快速实现文本文件、图形文件等的创建,非常方便。不过有时为了安全起见,我们可能需要删除普通用户“新建”子菜单中的某些新建命令。对此,我们可采用如下方法:

(1)运行注册表编辑器“Regedit”打开注册表;

(2)展开注册表数据库的“HKEY_CLASSES_ROOT”主键,在“HKEY_CLASSES_ROOT”主键下找到要删除的新建文件类型的次级主键(如“.zip”次级主键) ;

(3)展开该次级主键下的“ShellNew”分支(HKEY_CLASSES_ROOT主键下以文档扩展名为名的次级主键中大多都有“Shellnew”分支,这些分支就是专门用于指定采用那个应用程序来创建相应数据文档的,我们只须删除它们即可达到禁止“新建”命令的目的) ;

(4)将“Shellnew”分支下除“默认”项之外的所有键值全部删除;

这样,我们就删除了“新建”菜单中的“新建Winzip文档”命令,从而达到了保密的要求。用类似方法将“新建”菜单中的无用命令一一删除。

9.清除“运行”等对话框中的历史记录  

一般来说,当我们在Windows 98中使用“运行”、“查找”等功能之后,系统就会将查找、运行的内容“记忆”下来,以简化再次运行的步骤,不过这也带来了“泄密”的可能。为保密起见,可采用下述方法将这些历史纪录删除:

(1)运行注册表编辑器“Regedit”打开注册表;

(2)展开注册表数据库的“HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionExplorer”分支;

(3)该主键的“Runmru”分支是用于显示系统“运行”对话框中的历史记录的,只须从中选择不需要的历史记录并单击“Del”键即可删除这些记录;

(4)该主键的“Docfindspecmru”分支用于显示系统开始菜单的“查找”子菜单中“查找文件或文件夹”对话框中的历史记录的,同样可从中删除不需要的历史记录;

(5)展开注册表数据库的“HEKY_CURRENT_USERNetworkRecent”分支;

(6)“Recent”主键就是用于显示系统“文档”对话框中的历史记录的,将其内容全部删除即可清除全部历史记录。

另外还有一种最简单的办法:

(1)用鼠标右键单击“任务栏”的空白处,在弹出的菜单中选择“属性”选项;

(2)选择“开始菜单”选项卡,然后点击“文档菜单”框中的“清除”按钮即可清除“运行”、“文档”、“历史记录”框中的历史记录。

10.禁止使用注册表编辑器   

从上面的介绍中可以看出,注册表编辑器的作用非常之强大,许多系统控制功能都是通过它来实现的,普通用户若能使用注册表编辑器,则我们所做的一些控制就将付之东流。因此我们只有禁止普通用户对注册表编辑器的调用才能真正确保对他们权限的控制!为此,我们可采用如下方法:

(1)运行注册表编辑器“Regedit”打开注册表;

(2)展开注册表数据库的“HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentversionPolicies System”主键;

(3)在“System”主键下新建一个名为“Disable RegistryTools”的“Dword”值,并将其值设置为“1”。

这样我们就实现了禁止运行Windows 98的注册表编辑器的目的,极大地保护了系统的安全。

经过上述步骤后,我们就达到了对相应普通用户的权限进行设置的目的。重复上述操作,可对所有普通用户的权限逐一进行设置(不同用户设置权限的范围可能不一样,有些用户的权限可能要大一些、另外一些用户可能要小一些,主要取决于普通用户的操作需要)。设置完毕后,我们应将不同用户的开机密码、电源管理密码、屏幕保护密码分别告知他们,并指导他们利用“控制面板”中的“密码”设置框对各自的密码进行修改(这也就是为什么前面谈到不能删除“Password.cpl”文件的原因)。至此,对所有普通用户的权限设置工作即告完成。

3.7.5 对非法用户的权限进行限制   

对超级用户和普通用户的权限设置完后,剩下的事情就是“对付”那些通过在用户名选择框中单击“取消”按钮或按ESC键进入系统的非法用户了。对于他们的权限,我们应最大限度地限制,最好是让他们什么也干不成!为此,我们可重新启动计算机,并在系统弹出的用户名选择框中按下Esc键,以非法用户的身份进入系统,然后对其权限进行限制。


地主 发表时间: 04-07-06 00:59

回复: danny6250 [danny6250]   论坛用户   登录
老兄,学学版主把它弄成一本书吧,
我好下下来呀,求你了

B1层 发表时间: 04-07-06 19:58

回复: clark008 [clark008]   论坛用户   登录
想法不错,但也不要求呀。。。。。。。。。

B2层 发表时间: 04-07-07 08:43

论坛: 菜鸟乐园

20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon

粤ICP备05087286号