IE8主页不能修改的Case Study

如果您不愿意看文字,可以直接查看本博文最后的视频演示 :)

 

近,根据技术论坛的反馈和我收到的求助邮件,有很多用户遇到了IE8主页被恶意篡改的问题,而且使用注册表、第三方安全工具均无法修复。

针对这一问题,笔者对其中一位邮件求助者进行了一个跟踪分析。从分析结果来看,很多用户都可能是安装了某个下载的游戏或者软件之后,IE主页不能修改,具体原因是HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main下面的Start Page不能更改。因此,像360安全卫士一类的安全辅助工具只能检测到IE主页被篡改却不能修复。在本案例中,IE主页被篡改成www.qq5.com(为了您的安全,建议不要访问该网址)。

 

笔者发现,只要是尝试修改Start Page键值就会遭遇报错,这说明很有可能是注册表项的权限被恶意更改了。我们用注册表编辑器查看Main键的权限,果然,只有一个Everyone组,而且只有读取的权限。而查看其他的前后键的权限,都是继承于Internet Explorer键的正常权限。如下图所示:

 

 

这很明显,说明了Main键的权限被下载的游戏或者软件安装包在安装过程中执行了系统regini.exe的8号命令——World Read Access,因此Main键值就只读了,任何用户都没有权利去修改。在这里需要说明一下,regini.exe是系统自带的用于指定注册表项目权限的实用工具,只提供命令行版本。在本案例中,它完全是被恶意软件或者广告软件利用了。通过它把Main项的权限指定为"World Read Access"无非就是想要达到不允许用户更改其下Start Page键值的目的。更多关于regini.exe的用法,请在命令提示符下键入"regini /?"查询。 

 

由于被指定了"World Read Access"权限,此时我们无法再从注册表编辑器直接添加权限了,也不能使用regini执行7号命令"World Full Access"了,为啥呢?因为Main键的所有者还是默认的SYSTEM,当只有一个Everyone权限而且还设为只读时,全世界就只剩下所有者一人可以执行其他的操作了,因为所有者是在此情形下唯一具有特权的用户。我们接下来需要将当前的所有者SYSTEM替换为Administrators或者当前的某个具体的管理员帐户,这样就可以利用所有者的特权了。(注意,如果能保持当前用户登录(这样HKCU才是你)并以SYSTEM身份执行regini的7号命令——World Full Access,也是可行的,但是这样做难度有些大,没有我们当前将要继续的这种方法简单)

 

清楚了原理之后,接下来我们就可以修复该问题了:

 

您需要以隶属于Administrators组的管理员帐户登录Windows,并以当前账户或者Administrators组取得Main键值的所有权。关于如何取得注册表的所有权,请参见http://technet.microsoft.com/zh-cn/cc786173(WS.10).aspx。在取得所有权之后,点击"应用"按钮即可,不必像操作普通文件系统ACE那样须要先退出权限设置。

 

接下来直接转到"权限"选项卡,删除Everyone并选中"包括可从该对象的父项继承的权限"之后,确定即可。

 

这样,Main的设置又还原成默认的了。如果您要和默认设置完全一模一样,那您还需将Main的所有者还原为SYSTEM(您需要在所有者选项卡中点击"其他用户或组"按钮,键入SYSTEM并确定才能将其添加进候选区域)。

 

好了,现在Start Page便可以自由修改了,主页自然也就可以自定义了 J

 

以下是本文章的视频演示:

 

posted @ 2010-03-28 17:19  佘华煜  阅读(7008)  评论(2编辑  收藏  举报