IE7保护模式深度剖析
时间:2010-12-07 来源:秩名
原理简述
IE保护模式(Protected Mode),以前也叫做IE低权利(Low Rights)。事实上,IE保护模式依赖于Windows Vista的以下三大特性:
(1) UAC(用户帐户控制)
其可以让管理员帐户自动获得一个标准用户的访问令牌,以减少Windows Vista系统的受攻击面。
(2) MIC(强制完整性控制)
这是Windows Vista安全架构中新增加的一种检测机制。大家知道,Windows 2000/XP安全体系里,安全子系统把进程的访问令牌和资源的访问控制列表进行匹配比较,以确认该进程是否具有访问该资源的权限。而在Windows Vista下,除了遵守传统的安全控制机制外,还必须检查进程和资源对象的完整性级别,完整性级别低的进程,不能写入完整性级别高的资源对象。
(3) UIPI(用户界面特权隔离)
完整性级别低的进程,不能向完整性级别高的进程发送?Window消息。
完整性级别的深远影响
在Windows Vista底下,系统不光是查看资源对象的ACL,还要查看进程和资源对象各自的完整性级别(Integrity Level),就算进程满足资源对象的ACL要求,如果进程的完整性级别更低,那么该进程还是无法拥有资源对象的写入权限。
而运行在保护模式下的IE浏览器,IE进程的完整性级别是Low,这可以从它的访问令牌里得知。借助Process Explorer查看IE进程属性的“安全”标签页,可以看到其访问令牌里有一个“Mandatory Label\Low Mandatory Level”的SID(相应的标志位是“Integrity”),这表明IE进程的完整性级别是“Low”。
独立的四套班子
读者朋友可能会问,既然
原来,对于保护模式下的
(1) IE临时文件: %userprofile%\AppData\Local\Microsoft\Windows\Temporary Internet Files\Low
(2) ?系统临时目录: %userprofile%\AppData\Local\Temp\Low
(3) Cookies: %userprofile%\AppData\Roaming\Microsoft\Windows\Cookies\Low
(4) ??历史: %userprofile%\AppData\Local\Microsoft\Windows\History\Low
这些目录的完整性级别都是“Low”,以便IE进程能够正常访问。
注意
值得一提的是,收藏夹并没有保护模式?IE的独立版本。
IE保护模式的文件虚拟重定向?
Windows Vista为了能够让绝大多数加载项都能在IE浏览器上正常运行,IE保护模式采用一种虚拟重定向技术。
原来IE保护模式在以下目录中,创建一个和[用户配置文件夹]完全一致的目录层次[拥有“Low”的完整性级别]:
%userprofile%\AppData\Local\Microsoft\Windows\Temporary Internet Files\Virtualized
例如D:\Users\Admin,对于IE保护模式来说,还有一套完全一致的虚拟镜像版本:
D:\Users\Admin\AppData\Local\Microsoft\Windows\Temporary Internet Files\Virtualized\D\Users\Admin
这样,如果IE加载项需要修改[用户配置文件夹]下的文件,系统就会自动重定向到该文件的虚拟镜像版本,对于该加载项来说,它根本不知道自己被IE保护模式“欺骗”了
标签分类: