下沙论坛

 找回密码
 注册论坛(EC通行证)

用新浪微博连接

一步搞定

QQ登录

QQ登录

下沙大学生网QQ群8(千人群)
群号:6490324 ,验证:下沙大学生网。
用手机发布本地信息严禁群发,各种宣传贴请发表在下沙信息版块有问必答,欢迎提问 提升会员等级,助你宣传
新会员必读 大学生的论坛下沙新生必读下沙币获得方法及使用
查看: 3883|回复: 3
打印 上一主题 下一主题

IE浏览器,我想你安全、再安全些--Updated

[复制链接]

该用户从未签到

跳转到指定楼层
1
发表于 2008-3-7 10:33:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
IE浏览器,我想你安全、再安全些--Updated
. q2 i( T5 ?  \% NIE浏览器是一个颇具争议的组件,不少用户一想到IE,恐怕脑子里就会浮现起曾经遭遇过的惨状:主页被恶意修改,IE动辄无缘无故关闭,注册表被改得乱七八糟,莫名其妙跳出网页……
: M; z/ }$ T; g9 n, n也难怪, IE是连接Internet的门户,难免会受病毒蠕虫等的“骚扰”。想让IE练就 “金刚不坏”之体,那就得首先分析一下恶意网页为什么可以为所欲为:大多数用户都是用管理员身份登录系统,IE默认获得管理员的访问令牌,这样网页中的恶意代码就会以最高的特权对系统进行篡改。只有让IE运行在更低的特权级别,才能防止恶意网页破坏系统。( Y; F7 T- q; y
怎样才能让IE以更低的特权运行?Windows Vista可以满足要求,其UAC功能可以让所有用户进程运行在Standard User的特权级别,但是Vista还“犹抱琵琶半遮面”,其实我们的XP一样可以达到类似的目的!" R9 k; R) H/ F6 X
提示 为了讲述的方便,这里假设以管理员帐户Admin登录系统。
0 |- ?! I. K2 J/ y2 O1 x一、“运行方式”给IE穿上铁布衫/ a8 a7 T7 H& F3 I+ \( \: s( V
右键单击IE的快捷方式,选择“运行方式”命令,在打开对话框上,确保勾选“保护我的计算机和数据不受未授权程序的活动影响”复选框,如下图所示。
3 n" B. [2 |. c+ S% D; H3 x* r
) R/ [* }) A# K# ^! _5 S0 N; L+ a: U' r% F
" j9 J4 I6 y. H
用这种方法启动IE,对几个“臭名卓著”的恶意网站进行测试,结果非常安全。同时还能用来对付DuDu加速器、3721等流氓插件!- v6 A1 W) E' i( x. a$ _* w
为什么?原来这时的IE浏览器会获得一个受限的访问令牌(Restricted Token),无法对系统目录和注册表进行写操作,网页中的恶意代码也就没办法破坏系统。) u' u6 W/ d2 w7 \9 _" U* Q8 `' L# c
当然,还得让实验来说话:
& \% e$ C) t& e0 d) _( N分别在“运行方式”和正常模式下打开IE浏览器,然后用Process Explorer双击打开这两个IE进程的属性对话框,切换到“Security”标签页,即可查看这两个进程所获得的访问令牌,如下图所示。
- z( ^6 b# m8 o5 o% o. K  u' E  p
$ {: a9 H% M8 ]1 @% }
. f2 c: [& D( T7 _6 f
很显然,相对于正常模式,“运行方式”打开IE进程所获得的受限令牌,其内容发生了以下两大变化:. {3 g$ c0 f$ [$ S* m7 y
u      用户和组的SID( G0 U5 x- f2 C% L7 n
(1)Administrators或Power Users组帐户的SID被标记为拒绝(Deny)。9 c" q! H2 O, g2 l) j; D5 N
如果某个资源拒绝Administrators或Power Users访问,则进程无法访问该资源;而且进程会忽略除Deny之外的其他访问权限。
5 p9 M- v: W- |8 y7 u; U+ h' S(2)除了Admin、Administrators和Power Users组帐户外,其他帐户的SID都加入受限(Restricted)列表:当进程访问资源时,必须经过两次安全检查:一次是检查令牌中启用的SID,另一次是检查受限列表里的SID,只有两次检查都通过,才能访问成功。. D) t9 I5 ?: y8 ~' o
u      特权(Privilege)
5 a, K* X2 t) P. A# P0 g: I' ~- V$ y仅保留SeChangeNotificatonPrivilege(跳过遍历检查)特权。. w6 [/ z$ `$ I8 E! K3 a. B
难怪这时的IE特别安全,尽管是以管理员帐户Admin登录系统,但是IE进程不能访问用户的配置文件夹(%USERPROFILE%),连收藏夹、我的文档都不能访问!
2 t2 E1 y0 e0 P' TIE也不能在分区根目录写入文件,对注册表没有写的权限。同时只有SeChangeNotificatonPrivilege(跳过遍历检查)特权,可以防止病毒滥用特权做坏事。
3 T3 V5 G& ^8 `: M" j7 l9 C' m, c提示 配置文件夹ACL包括Admin和Administrators和SYSTEM,由于Administrators被标记为Deny,而Admin帐户没有对应的Restricted SID(在第二次安全检查时失败),所以无法访问。7 y. ~2 Q% j- i, w, S' _
二、“基本用户”类型帮助IE强身健体
+ i1 a( R% m9 v& a& ?6 d用“运行方式”运行IE浏览器,虽然非常安全,但是有以下两个缺陷:
9 w  l8 j& R) t9 b; Uu      限制太严格,例如IE浏览器无法加载收藏夹。
# a: Z$ B3 O1 P& ]- ~+ p( t! iu      每次运行IE浏览器,还需要增加额外的步骤,很不方便。
5 X% t9 Z! c1 S本文将介绍如何给XP系统启用一个“基本用户”(Basic User)类型,这个“基本用户”(Basic User)类似于Windows Vista的“标准用户”(Standard User),只是默认没有启用。
: e% x7 Y' ?- R7 l' r5 g1.启用基本用户类型7 {/ m' _8 j; w  {
(1)打开注册表编辑器,定位到以下注册表项:
  ~# [( u# a+ T3 H9 m& UHKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Safer\CodeIdentifiers0 S# M% A( \" ~. F0 F. N* ^
(2)新建一个名为Levels的DOWRD键值,其数据数值为0x20000。
/ m+ _( p3 p4 @. u2.Runas命令
  }) r9 u3 g2 r5 M打开命令提示符窗口,运行以下命令:- q% T* d5 p6 z5 p( M
Runas /ShowTrustLevels
  i; [  x5 P9 A即可看到系统当前的信任级别,如附图所示,其中有一个“基本用户”,对应新增加的注册表键值(Levels:0x20000)。
! p* p7 H; n: L  J( J
+ L! q3 ^0 G3 F* a0 w8 p$ @/ U; a
# `5 h2 z1 s7 n
3 {- C) d+ o4 M+ E8 s
运行以下命令,即可以“基本用户”的身份启动IE浏览器:
0 r' a' Q' m) Z- v. J( trunas /trustlevel:基本用户 "C:\Program Files\Internet Explorer\IEXPLORE.EXE"# Q/ Q- v6 [& l( i  Q% N' t1 z
可以新建一个快捷方式,在项目位置里输入以上的命令,这样每次双击该快捷方式,就能够以“基本用户”的身份启动IE浏览器。
5 @/ O8 M1 \0 e  I% m3.软件限制策略
7 J7 E7 u; O4 K6 H. `! r4 `/ R# u打开“本地安全策略”管理单元(如果第一次设置软件限制策略,请右键单击“软件限制策略”,选择“创建新的策略”菜单项),展开软件限制策略→安全级别,在右侧的详细窗格里可以看到“基本用户”,如附图所示,这和“Runas /ShowTrustLevels”命令看到的信任级别是一致的。& U( o: D1 n+ R, t9 b

8 f8 q) h, I: J* m5 ^
8 o3 [; d4 V# u7 \
5 I+ f. o+ k! N; E
可以新建一个路径规则,如附图所示,指定安全级别为“基本用户”,这样每次运行IE浏览器,都可以运行在更安全的级别。6 x3 q: J0 J: Y4 N) M: R

! ^# h' c; u, i4 W
; T* Y6 R/ J: i$ T0 d
* Y. I+ k3 X6 F( @' c, F! A
        每次新建的一条“基本用户”的软件限制策略,都会在HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Safer\CodeIdentifiers\131072注册表项下新增一个子项。如果是路径策略,则会新增一个Path子项;如果是散列策略,这会新增一个Hash子项。注册表项里的131072是什么?实际上就是前面增加的那个Levels:0x20000,0x20000正好就是131072。
! ^" x, t$ w5 `% n+ D4.查看基本用户的访问令牌) `' }0 b  \$ t' f7 \4 K
用Process Explorer查看此时的IE浏览器属性,发现其访问令牌和Windows Vista的“标准用户”功能所获得访问令牌相似,如附图所示。. V- E+ U$ i' R# m, k" J

( m7 l$ X, u3 ]1 a( B, M( |5 W3 g5 ~

% D0 E" n! \! ~% IWindows Vista的标准用户、Windows XP的基本用户、和运行方式之间的区别如下:
0 h' E1 {$ N9 _3 V1 t(1)Vista的“标准用户”比XP的“基本用户”多出了几个特权(Privilege),只是默认禁用。
$ F: s, C( o3 ^3 ~- O, P8 d(2)XP的“基本用户”所获得的访问令牌相对于“运行方式”(Restricted Token)来说,限制相对少一些,只是将Administrators和Power Users组标志为Deny,而并没有将其他帐户放入Restricted SID列表,这样IE进程可以访问配置文件夹等其他资源(包括收藏夹和我的文档),可以读写HKEY_CURRENT_USER下的绝大多数注册表键值,但是仍然不能写HKEY_LOCAL_MACHINE下的注册表键值。
2 N* K" H( D- z) Q5 y& o3 ?1 N三、命令工具) e" b. j5 R* c! ^& C* a5 U9 x
这里推荐Michael Howard所写的命令行工具DropMyRights。/ }& _: z) J4 c3 b
DropMyRights的使用语法如下:
  x& i: ^: ~" `2 k; k# p. G" J7 [DropMyRights {path} [N|C|U]
5 y7 ~( A5 u1 L. e+ e这里的path是指应用程序的路径,N指代基本用户(Basic User),C指代受限用户(Restricted User),U是指不信任用户。0 U8 E% V- m: z3 S/ L
如果要以基本用户身份运行IE浏览器,可以创建一个快捷方式,将项目位置设置为:
& r$ P6 i" S3 W, b1 g' P9 RDropMyRights "C:\Program Files\Internet Explorer\IEXPLORE.exe" N1 K. C+ r5 k5 |3 `6 f
这样就可以在需要时双击该快捷方式,以更加的安全环境下运行IE浏览器。
1 E8 W2 `, i6 n- A四、注意

. O) x7 K' a; `+ a$ J8 z/ D+ ^' W5 Q7 ^9 t/ B% f5 m

6 T# U9 v- z: _& E# W如果确实需要安装某些IE插件、或者要运行Windows更新等需要管理员权限的任务,请暂时禁用“软件限制策略”,否则这些管理任务将无法顺利完成,例如笔者曾经死活安装不上MSN Space的上传图片控件,系统也不报错,原因就是IE浏览器运行在Basic User特权级别下。这里特别期待Vista,因为Vista的UAC可以自动识别是否需要管理员特权。6 I$ K+ z) [2 w1 ^8 T

( a. Q7 v1 S  w# H6 y提示
- p4 t7 u0 }! S8 I/ ?1.本文部分内容参考自Michael Howard的文章《Browsing the Web and Reading E-mail Safely as an Administrator》(两篇),原文链接如下:3 F# W; l& C# z  J" U# E1 R
http://msdn.microsoft.com/security/securecode/columns/default.aspx?pull=/library/en-us/dncode/html/secure11152004.asp
5 x) i9 q" B& o5 jhttp://msdn.microsoft.com/library/default.asp?url=/library/en-us/dncode/html/secure01182005.asp, U+ x5 q# I: {& ~5 I
2.本文提到的Process Explorer,可以到以下网站下载:
) ?7 m$ m  }7 p# V$ ahttp://www.sysinternals.com/Utilities/ProcessExplorer.html
5 ]4 `- w" h1 i) n( m: r本文提到的DropMyRights,可以到以下网站下载:
8 a' ^& l1 O: ]7 R4 [http://download.microsoft.com/download/f/2/e/f2e49491-efde-4bca-9057-adc89c476ed4/DropMyRights.msi
3 z, }  C- |* c4 T3.Windows Vista的核心安全功能UAP,目前已经正式改名为UAC(User Account Control)。
/ G! J: Y5 x1 Q* s' v
* k; w8 P7 P0 }+ ]- o$ m* I, X1 R/ G
1 L: D0 g1 D9 s5 g

8 C/ c4 K+ S* F* Y0 d

* t3 u8 o$ o7 M- k9 }/ i/ P) x2 o. m/ E+ R7 a
. K$ ]! T# b- q; n. R4 K8 S" _( z
Comments
% `* h7 Q8 o: _9 A# re: IE浏览器,我要你安全、再安全些 - P+ `+ b5 h- {9 o
% e9 P9 ^) o# D8 J" t- i% U
如果IE被安装了太多插件(包括Spyware或Malware),要想启动一个无插件状态的IE,可以直接运行“"C:\Program Files\Internet Explorer\iexplore.exe" –extoff”(只适用于Vista下)。 7 q6 `& N6 k9 S- \
# re: IE浏览器,我要你安全、再安全些
5 f. I, Z" o; E$ T. u7 k
: I# x6 w) W, o9 a& x1 X: \如果XP下的IE要实现NoAddon的功能,应该用什么办法呢? 8 [* q% Z# L6 S: A2 c
# re: IE浏览器,我要你安全、再安全些 6 _3 R' a3 w: w9 a% l7 _6 s+ I

5 e8 C4 [" ~; |# {" d' LXP中的IE没有该参数,所以估计只能打开IE(此时已经加载所有插件),然后在IE的“工具”——“管理加载项”中一一禁用这些插件。
: q% C) m6 W3 N; y* Y# re: IE浏览器,我要你安全、再安全些 , f  l# b/ t8 D$ h, [$ W& F

% R( o/ N3 g/ D9 ^/ o& @IE7有一种启动方式叫做“Start without Add-ons”
9 t0 b$ i9 ]4 z+ W# re: IE浏览器,我要你安全、再安全些 7 }5 [5 {* l9 Y

8 ~  f- M. R8 E$ BIE 7.0也有这个功能,太棒了,期待啊~~ 9 u" ~* b4 o- j- P) W# m9 A
IE的很多常见问题就是由于第三方插件的冲突和干扰所导致的。
7 z4 P. i+ k2 A) ~0 ~, v' u! g# re: IE浏览器,我想你安全、再安全些
, X! k' c; k. H- t9 h7 D
* T1 o. w& w8 U9 ^  k# `' fvista的安全模式里面我记得好象也有IE的安全模式,就是"Start without Add-ons"
% S' x, n2 s& o# re: IE浏览器,我想你安全、再安全些--Updated 1 i: x. |0 |& ^* n, o# _* L4 g

2 G6 h" z! p7 M8 |4 P+ u/ t' M如果确实需要安装某些IE插件、或者要运行Windows更新等需要管理员权限的任务,请暂时禁用“软件限制策略”,否则这些管理任务将无法顺利完成,例如笔者曾经死活安装不上MSN Space的上传图片控件,系统也不报错,原因就是IE浏览器运行在Basic User特权级别下。这里特别期待Vista,因为Vista的UAC可以自动识别是否需要管理员特权。 % E* ^" @4 D( r
# re: IE浏览器,我想你安全、再安全些--Updated
% h3 V2 Z& T$ t. t) k+ v. @% [3 M0 n. d" A; L/ F
是的,在HelpOnline论坛上有很多关于IE种种故障的案例,我都是先建议禁止所有插件来看看是否为插件所导致的(事实证明很多情况下都是),如果不是再重装IE(也很方便,一个命令即可)。不过IE 7以前的版本没有一个很方便禁止所有插件的方法,而IE 7提供的这一模式基本等同与诊断模式。 ; M5 O8 i5 b4 e& J. u
# re: IE浏览器,我想你安全、再安全些--Updated : {5 J! u. t4 t
& b. H' ?# a9 ~- {) Z$ j
我也遇到过很多的这样的问题,基本上都是先卸载掉IE的插件就能解决,甚至都不需要重新安装IE.
7 F2 m( m1 I7 v0 q) ~+ x- d# re: IE浏览器,我想你安全、再安全些--Updated ( z2 w  d1 R- `8 }. {  O

9 O' Q+ w; c; v$ i嗯,遇到IE 6.0 SP2相关问题,可以采用以下常规排错方法: ) \! W, {2 G9 j( ?  ]5 D% z0 k
1.在IE浏览器窗口上单击工具、Internet选项。   ~: u! O, _/ [0 C
在打开的对话框的“常规”里单击删除文件,并勾选“删除所有脱机文件”,然后单击确定。 ' `* v3 l- H# J2 i/ T
单击删除Cookies,然后单击确定。
% g8 W  m" P! E- k% ?; v单击清除历史,然后单击确定。
* Y% [8 v9 M6 v7 G9 _9 \6 d2.在Internet选项的“高级”标签页,确保清空“启用第三方浏览器扩展”复选框。 ) _) f+ I* ^8 L  `( h. m
3.在Internet选项对话框上切换到“程序”标签页,然后单击管理加载项。 5 B# s( B6 D; x4 c  P+ g& ~
在打开的对话框上,单击“发行者”,然后禁用所有发行者不是“Microsoft Corporation”的加载项。 0 @+ f" H' ?- p
单击确定,保存设置。 , L7 j4 `: F1 _8 J
# re: IE浏览器,我想你安全、再安全些--Updated ' m  d% a! ?: C# O# c
5 i6 {( ~3 m7 R5 ]3 q0 l# _! t7 Q
盆盆,我不太擅长组策略的设置,我有一个疑问,就是你这种限制之后其他的IE核心的浏览器的权限是否也会降下来呢? 还有这个组策略是否仅针对由explorer进程下创建的IE进程有限制作用呢? # L1 \" V3 ~  ]8 _, U
当其他和explorer差不多同级的进程创建了浏览器进程,后者是否会继承前者的权限呢?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 顶 踩 转发到微博

该用户从未签到

2
发表于 2008-3-7 19:33:04 | 只看该作者
好东东,收藏了,谢谢分享
回复 支持 反对

使用道具 举报

头像被屏蔽

该用户从未签到

3
发表于 2008-3-14 16:08:00 | 只看该作者
谢谢楼主的分享
回复 支持 反对

使用道具 举报

本版积分规则

关闭

下沙大学生网推荐上一条 /1 下一条

快速回复 返回顶部 返回列表