源地址:http://www.suzhou.cyberpolice.cn/shownews.asp?id=242
=====================================================================
在上网过程中,有人不慎浏览一些恶意不良网站,这些网站通过网络对用户的注册表进行恶意的攻击,强行修改用户的IE,指向恶意的连接,改写主页地址,即使重新设置主页地址也无济于事(甚至无法重新设置主页地址),造成用户的不便;改写文件,在启动列表中添加不良网站,使计算机启动时,连续打开这些网站,类似病毒发作,造成用户的恐慌与不安;强行禁止用户对注册表的编辑权限,禁止用户打开注册表进行相应的操作,威胁操作系统的安全。下面就注册表的结构及注册表可能受到的网络攻击方式进行分析,并给出相应的解决方案和预防措施。
一 注册表结构
在Windows的注册表中,所有的数据都是通过一种树状结构以键和子键的方式组织起来,就象磁盘文件系统的目录结构一样。每个键都包含了一组特定的信息,每个键的键名都是和它所包含的信息相关联的。使用注册表编辑器可以观察注册表中的根键,在“运行”对话框中输入Regedit,然后单击“确定”按扭,则可以运行注册表编辑器。注册表的根键共有6个,这些根键都是大写的,并以HKEY为前缀(见图1)。这种命令约定是以Win32API的Registry函数的关键字的符号变量为基础的。
它们分别为:
1)HKEY—CLASSES—ROOT管理文件系统。根据在Windows中安装的应用程序的扩展名,该根键指明其文件类型的名称,相应打开该文件所要调用的程序等信息。
2)HKEY—CURRENT—USER管理系统当前的用户信息。在这个根键中保存了本地计算机中存放的当前登录的用户信息,包括用户登录用户名和暂存的密码。在用户登录Windows时,其信息从HKEY—USERS中相应的项拷贝到HKEY—CURRENT—USER中。
3)HKEY—LOCAL—MACHINE该根键存放本地计算机硬件数据,管理当前系统硬件配置。此根键下的子关键字包括在SYSTEM.DAT中,用来提供HKEY—LOCAL—MACHINE所需的信息。
4)HKEY—USERS管理系统的用户信息。在这个根键中保存了存放在本地计算机口令列表中的用户标识和密码列表。同时每个用户的预配置信息都存储在HKEY—USERS根键中。HKEY—USERS是远程计算机中访问的根键之一。
5)HKEY—CURRENT—CONFIG管理当前用户的系统配置。在这个根键中保存着定义当前用户桌面配置(如显示器等等)的数据,该用户使用过的文档列表,应用程序配置和其他有关当前用户的安装信息。6)HKEY—DYN—DATA管理系统运行数据。在这个根键中保存了系统在运行时的动态数据,此数据在每次显示时都是变化的,因此,此根键下的信息没有放在注册表中。
以上是注册表树最顶层的6个分支所分别代表的含义,可以由用户有针对性的对其进行修改、编辑等操作,但也可能受到来自网络的恶意攻击。
二 对注册表常见的攻击手段及解决方案
1.IE默认连接首页被修改。IE浏览器上方的标题栏被改成“欢迎访问……网站”的样式,这是最常见的攻击手段。攻击方式为更改注册表项目:
HKEY—LOCAL—MACHINE\SOFTWARE\Microsoft\InternetExplorer\Main\StartPage
HKEY—CURRENT—USER\Software\Microsoft\InternetExplorer\Main\StartPage
通过修改“StartPage”的键值,来达到修改浏览者IE默认连接首页的目的。如不慎浏览某一恶意网站“http://www.xxxx.com”,该网站就会将你的IE默认连接首页修改为“http://www.xxxx.com”。
解决方案:
1)在Windows启动后,点击“开始”→“运行”菜单项,在“打开”栏中键入regedit,然后按“确定”。
2)展开注册表到 HKEY—LOCAL—MACHINE\SOFTWARE\Microsoft\InternetExplorer\Main下,在右半部分窗口中找到串值“StartPage”双击,将StartPage的键值改为“about:blank”即可;
3)展开注册表到 HKEY—CURRENT—USER\Software\Microsoft\InternetExplorer\Main 在右半部分窗口中找到串值“StartPage”,然后按2中所述方法处理。
4)退出注册表编辑器,重新启动计算机。
特殊情况: 当IE的起始页变成了某些网址后,即使通过选项设置修改好了,重启以后又会变成他们的网址。这是因为这些恶意攻击者在你机器里加了一个自运行程序,它会在系统启动时将你的IE起始页设成他们的网站。解决方案:运行注册表编辑器regedit.exe,然后依次展开HKEY—LOCAL—MACHINE\Software\Microsoft\Windows\CurrentVersion\Run主键,然后将其下的registry.exe子键删除,再删除自运行程序c:\ProgramFiles\registry.exe,最后从IE选项中重新设置起始页就好了。
2.篡改IE的默认页。有些IE被改了起始页后,即使设置了“使用默认页”仍然无效,这是因为IE起始页的默认页也被篡改。攻击的方式为修改注册表项:
HKEY-LOCAL-MACHINE\Software\Microsoft\InternetExplorer\Main\Default_Page_URL
Default_Page_URL这个子键的键值即起始页的默认页。
解决方案:运行注册表编辑器,然后展开上述子键,将“Default_Page_URL”子键的键值中的那些篡改网站的网址改掉就好了,或者设置为IE的默认值。
3.修改IE浏览器缺省主页,并且锁定设置项,禁止用户更改回来。攻击的方式为修改了注册表中IE设置的下面这些键值(DWORD值为1时为不可选):
HKEY—CURRENT—USER\Software\Policies\Microsoft\InternetExplorer\ControlPanel
“Settings”=dword:1
HKEY—CURRENT—USER\Software\Policies\Microsoft\InternetExplorer\ControlPanel
“Links”=dword:1
HKEY—CURRENT—USER\Software\Policies\Microsoft\InternetExplorer\ControlPanel
“SecAddSites”=dword:1
解决方案:将上面这些DWORD值改为“0”即可恢复功能。
4.IE的默认首页灰色按扭不可选。攻击的方式为修改注册表项目HKEYUSERS\.DEFAULT\Software\Policies\Microsoft\InternetExplorer\ControlPanel下的DWORD值“homepage”的键值。原来的键值为“0”,被修改为“1”(即为灰色不可选状态)。
解决方案:将“homepage”的键值改为“0”。
5.IE标题栏被修改。在系统默认状态下,是由应用程序本身来提供标题栏的信息,但也允许用户自行在上述注册表项目中填加信息,而一些恶意的网站正是利用了这一点来得逞的:它们将串值Window_Title下的键值改为其网站名或更多的广告信息,从而达到改变浏览者IE标题栏的目的。
攻击的方式为更改注册表项目:
HKEY—LOCAL—MACHINE\SOFTWARE\Microsoft\InternetExplorer\Main\Window_Title
HKEY—CURRENT—USER\Software\Microsoft\InternetExplorer\Main\Window_Title
解决方案:
1)在Windows启动后,点击“开始”→“运行”菜单项,在“打开”栏中键入regedit,然后按“确定”键;
2)展开注册表到HKEY—LOCAL—MACHINE\SOFTWARE\Microsoft\InternetExplorer\Main下,在右半部分窗口中找到串值“Window_Title”,将该串值删除即可,或将Window_Title的键值改为“IE浏览器”等你喜欢的名字;
3)同理,展开注册表到HKEY—CURRENT—USER\Software\Microsoft\InternetExplorer\Main然后按2中所述方法处理。
4)退出注册表编辑器,重新启动计算机,运行IE。
6.IE右键菜单被修改。
攻击的方式为将注册表项目:
HKEY—CURRENT—USER\Software\Microsoft\InternetExplorer\MenuExt下被新建了网页的广告信息,并由此在IE右键菜单中出现。
解决方案:
打开注册标编辑器,找到
HKEY—CURRENT—USER\Software\Microsoft\InternetExplorer\MenuExt删除相关的广告条文即可,注意不要把下载软件Netants或者FLASHGET删除掉。
7.IE默认搜索引擎被修改。在IE浏览器的工具栏中有一个搜索引擎的工具按钮,可以实现网络搜索,被篡改后只要点击那个搜索工具按钮就会链接到那个篡改网站。攻击的方式为修改以下注册表:
HKEY—LOCAL—MACHINE\Software\Microsoft\InternetExplorer\Search\CustomizeSearch
HKEY—LOCAL—MACHINE\Software\Microsoft\InternetExplorer\Search\SearchAssistant
解决方案:
运行注册表编辑器,依次展开上述子键,将“CustomizeSearch”和“SearchAssistant”的键值改为某个搜索引擎的网址即可。
8.系统启动时弹出对话框。
攻击的方式为更改注册表项目:
HKEY—LOCAL—MACHINE\Software\Microsoft\Windows\CurrentVersion\Winlogon
在其下被建立了字符串“LegalNoticeCaption”和“LegalNoticeText”,其中“LegalNoticeCaption”是提示框的标题,“LegalNoticeText”是提示框的文本内容。由于它们的存在,就使得系统每次登陆到Windwos桌面前都出现一个提示窗口,显示那些网页的广告信息。
解决方案:
打开注册表编辑器,找到HKEY—LOCAL—MACHINE\Software\Microsoft\Windows\CurrentVersion\Winlogon这一个主键,然后在右边窗口中找到“LegalNoticeCaption”和“LegalNoticeText”这两个字符串,删除这两个字符串就可以解决在登陆时出现提示框的现象了。
9.浏览网页注册表被禁用。
攻击的方式为将注册表项目
HKEY—CURRENT—USER\Software\Microsoft\Windows\CurrentVersion\Policies\System
下的DWORD值“DisableRegistryTools”修改为“1”。将其键值恢复为“0”即可恢复注册表的使用。
解决方案:
用记事本程序建立以REG为后缀名的文件,将下面这些内容复制在其中就可以了:
REGEDIT4
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System]“DisableRegistryTools”=dword:00000000
10.IE中鼠标右键失效、查看“源文件”菜单被禁用。
浏览网页后在IE中鼠标右键失效,点击右键没有任何反应;在IE窗口中点击“查看”→“源文件”,发现“源文件”菜单已经被禁用。
攻击手段为在注册表
HKEY—CURRENT—USER\Software\Policies\Microsoft\InternetExplorer
下建子键“Restrictions”,然后在“Restrictions”下面建立两个DWORD值:“NoViewSource”和NoBrowserContextMenu”,并为这两个DWORD值赋值为“1”。在注册表HKEY—USERS\.DEFAULT\Software\Policies\Microsoft\InternetExplorer\Restrictions,将两个DWORD值:“NoViewSource”和“NoBrowserContextMenu”的键值都改为了“1”。
解决方案:
将以下内容另存为后缀名为reg的注册表文件,如dragon.reg,双击dragon.reg,导入注册表,不用重启电脑,重新运行IE就会发现IE的功能恢复正常了。
REGEDIT4
[HKEY_CURRENT_USER\Software\Policies\Microsoft\InternetExplorer\Restrictions]“NoViewSource”=dword:00000000
“NoBrowserContextMenu”=dword:00000000
[HKEY_USERS\.DEFAULT\Software\Policies\Microsoft\InternetExplorer\Restrictions]“NoViewSource”=dword:00000000
“NoBrowserContextMenu”=dword:00000000
要特别注意的是,在编制的注册表文件dragon.reg中,“REGEDIT4”一定要大写,并且它的后面一定要空一行,还有,“REGEDIT4”中的“4”和“T”之间一定不能有空格。如果你的操作系统是Win2000或WinXP,则将“REGEDIT4”改为WindowsRegistryEditorVersion5.00。
三 预防措施
对于这种来自网络对注册表的实施的恶意攻击,不仅要有相应的解决方案,还要做到防患于未然,采取一定的预防措施。首先,不要轻易去一些自己并不了解的站点,特别是那些看上去美丽诱人的网址更不要贸然前往,否则美丽的外表下面暗藏着陷阱。其次,由于该类网页是含有有害代码的ActiveX网页文件,因此在IE设置中将ActiveX插件和控件、Java脚本等全部禁止就可以避免中招。具体方法是:在IE窗口中点击“工具→Internet选项,在弹出的对话框中选择“安全”标签,再点击“自定义级别”按钮,就会弹出“安全设置”对话框,把其中所有ActiveX插件和控件以及Java相关全部选择“禁用”即可。不过,这样做在以后的网页浏览过程中可能会造成一些正常使用ActiveX的网站无法浏览。另外,这类网页是通过攻击注册表来破坏系统的,那么可以事先把注册表加锁,禁止对注册表攻击,这样就可以达到预防的目的。为了可以使用注册表编辑器regedit.exe,还要在此前事先准备一把“钥匙”,以便打开这把“锁”。加锁方法如下:
1)运行注册表编辑器regedit.exe;
2)展开注册表到
HKEY—CURRENT—USER\Software\Microsoft\Windows\CurrentVersion\Policies\System下,新建一个名为DisableRegistryTools的DWORD值,并将其值改为“1”,即可禁止使用注册表编辑器regedit.exe。
解锁方法:用记事本编辑一个任意名字的.reg文件,比如dragon.reg,内容如下:
REGEDIT4
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System]“DisableRegistryTools”=dword:00000000
然后保存,如果要使用注册表编辑器,则双击dragon.reg即可。如果用的是Win2000或WinXP,将“REGEDIT4”写为WindowsRegistryEditorVersion5.00。