欢迎光临 Enjoy IT (ITECN.NET) 登录 | 注册 | 帮助

关于UAC的有趣比喻

兄弟我在远景论坛上的《您会不会禁用UAC功能》帖子,到目前为止,已经有70多人参与了投票,看起来,约有50%左右的用户选择UAC或者用标准用户身份登录。约有三分之一的用户对UAC的抵触情绪比较严重。
统计情况比较有意思,初学者和IT高手(尤其是对安全比较关注)的用户,比较倾向于使用UAC。而部分中级用户,则可能会比较反感,主要是觉得剥夺了他们的使用权力。

针对这种情况,我个人尝试做一个比喻,试图帮助这些用户理解UAC的意义(这个比喻也许并不贴切,欢迎大家提出修正方案,或者提供更好的比喻):

打个比方说,以前的Windows(保括2000和XP),就好比是家里没安门,任何人都可以随便进来,其中有些是我们的亲戚、朋友(可信的进程),有些是讨厌的推销员(好比是流氓软件),还有一些甚至是小偷或者打劫的(好比是病毒、木马等恶意程序)。很显然,这样很不安全。

而到了Windows Vista,在UAC的帮助下,这间房屋终于有了一道门,每个访客都必须报出他的名号、来访目的等等,我们验证无误后才让他进来。这些访客就好比是需要提升权限的进程,需要访问一些特权区域(好比是家里的卧室、客厅、储物室等)。如果客人不需要进屋,只是在门外打扫卫生,或者在门上贴一个什么办证的小广告,尽管非常讨厌,但是毕竟对系统(相当于家)没有危害,相当于标准用户进程,所以无需验证,可以直接运行。

实际上这是使用习惯的问题,本来我们就不应该让任意的进程随随便便拿到最高的管理员特权,就好像不应该随随便便让任何一个人进来,道理是一样的。

已发表 2006年10月17日 12:33 作者 ahpeng

评论通知

如果您想在帖子更新时接到邮件通知,请先登录。这里

订阅帖子评论使用 RSS

评论

2006年10月17日 16:29 by junxiulee

# re: 关于UAC的有趣比喻

以前咱们说的那个到公司访问朋友的例子,我看也中。
2006年10月17日 17:20 by Lee

# re: 关于UAC的有趣比喻

我觉得总跳个小东西,严重影响工作效率。
2006年10月17日 17:25 by Lee

# re: 关于UAC的有趣比喻

这里其实非常矛盾,如果不希望使用管理员权限,完全可以使用Users或者Power Users,管理严格的公司,很少给用户Local Administrators权限;给了用户Local Administrators权限的公司,对客户端的管理基本失控。
就像Windows 2000以后的Drivers Signs,按理来说,安装未经数字签名的驱动程序会提示,但是有几个End User是看了提示而且选择No的?!
估计UAC到了后来也一样。不过就跳个提示而已,End User还是看都不看就点Yes(估计远景那些只懂得讨论GUI的End User也看不懂)。3721下载安装的时候也跳提示框............
2006年10月17日 18:26 by zarthur

# re: 关于UAC的有趣比喻

UAC的安全功能有可能落空的最大因素在于——当太多的正常操作需要通过UAC确认,用户成了习惯之后,就会想也不想就点确认。
相当多的用户可能一开始还会看看这个是什么,当他们不能清楚了解,或者是询问了朋友,朋友说点是之后,就会有这种惯性。
其次,UAC太容易被关闭,比如现在就有个工具,只需要用户简单确认一下就可以关闭UAC,那么如果有个恶意程序只要执行了就直接关闭了UAC呢,结果是UAC不会起到想象的作用,用户甚至不知道有UAC在提供保护。
我想在企业环境下UAC还是有可能有作为的,毕竟他的出发点是很好的。
2006年10月17日 20:47 by ahpeng

# re: 关于UAC的有趣比喻

To Lee:
UAC的UI,经过精心设计,对于不同类型的应用程序,其UI并不一样:
1. Windows自带组件,就是墨绿色的色条。这些进程可以信任。
2. 来源可靠(合法数字签名)的应用程序,是灰色的色条。这些进程一般可以信任,也可以查看签名方,进一步确认。
3. 来源不可靠的(没有合法数字签名)的应用程序,则会出现橙色报警,而且系统明确提醒除非确认来源,否则不要运行。鼠标焦点默认在“取消”按钮上。

当然很多初级用户可能还是会感到困惑,可能导致HelpDesk的Support Call数量剧增。

等到SP1以后,预计那时候绝大多数应用程序会按照LUA的规范进行开发,那时候,UAC弹出提示会更少一些。
2006年10月17日 20:52 by ahpeng

# re: 关于UAC的有趣比喻

To arthur:
你说的关闭UAC,确实有这种工具,例如系统自带的msconfig就可以。
但是恶意程序不可能调用这些工具,何也?
请不要忘记,这些关闭UAC的工具,一定需要提升权限(运行级别为high)。
而恶意程序,只有运行在high级别下,才能调用关闭UAC的工具。但是,既然恶意程序已经运行high级别,还要关闭UAC干吗?
如果恶意程序运行medium的级别,由于MIC、UIPI的作用,medium进程无法访问high的进程,所以达不到目的。
2006年10月17日 20:58 by ahpeng

# re: 关于UAC的有趣比喻

有关影响工作效率一说,其实对于桌面OS来说,需要管理员权限的操作并不多。
而对于Server OS,默认禁用UAC。

另外杀毒软件也无法完全取代UAC。举个简单例子,如果有好事者编写了一个危险脚本(格盘),由于杀毒软件不可能有该脚本的特征码,所以不会报警,但是UAC则会有效防止该脚本危害系统。
2006年10月17日 22:02 by Lee

# re: 关于UAC的有趣比喻

如果说需要管理员权限的情况并不多,其实完全可以不给用户Administrators权限,估计这比UAC来得更好而且更安全。
其实,最终用户真正在使用的时候,他们会否注意到UAC的警告有那么多不同?!是否清楚其中的区别?!是否有足够能力处理?!
如果没有,那么,Vista的发布日就成了Help Desk的受难日............
例如,有用户会问为什么有个这样的提示框~~~~~~而且可能90%的用户会打电话来问,10%还会问多次;甚至有用户因为Unsecurity的默认选择No而打电话来骚扰Help Desk,质问为什么软件装不上了,IT给他装了什么,在他机器上搞了什么~~~~~~~~~~~~~~
2006年10月18日 0:55 by wuzhen

# re: 关于UAC的有趣比喻

就如ahpeng老师以前的文章,所说的“任重而道远的UAC”。UAC在操作上面给用户带来不小的麻烦,但是在安全上给用户带来的是极大的安全。
2006年10月18日 10:00 by zarthur

# re: 关于UAC的有趣比喻

to 盆盆

的确,如果一个工具能够关掉UAC,他必须运行在High级别上。

但是我的假设是建立在第一个前提下,就是用户无意中下载了这个软件,当这个软件要求用户提升级别时,用户习惯性的点了“是”,这样他就可以轻易的关掉UAC。

另外,为什么一个恶意软件目标会是关掉UAC呢。实际上恶意软件的制作者的目标是很难估量的,如果这个制作者就是想关掉UAC这也是一种破坏,因为这样就给其他的恶意软件大开方便之门。比如XP下就有一款恶意软件,它的目的就是关掉你XP的防火墙,而且你无法重新打开,还有的恶意软件的目的是关掉你的防病毒软件。

当然,UAC还是可以很大程度上降低潜在的威胁,也正如盆盆兄所说的,等SP1出来后,如果大量软件都符合规范,UAC才能真正的体现出其价值。
2006年10月18日 10:08 by Lee

# re: 关于UAC的有趣比喻

我相信要么UAC还有漏洞,要么会把用户烦死。
例如,安装SMS客户端,如果跳个提示,会被用户禁止要么暗地里运行;如果是前者,会给IT管理造成很大困扰;如果是后者,证明还是有方法绕过UAC。
同样,装好了SMS客户端后,如果执行一些管理任务,例如软硬件资产收集、软件分发、补丁分发,会发生什么情况呢?!
2006年10月18日 13:27 by ahpeng

# re: 关于UAC的有趣比喻

To Arthur:

实际上这更可见UAC的必要性。

在XP里,只要以管理员登录,任何代码都可以在最高特权下运行,所以关闭防火墙的代码可以得逞。

在vista下,所有代码默认只能以标准用户身份运行。除非用户自己主动要求以提升权限运行。或者是该恶意程序的manifest里指定运行级别为high。这时候会弹出权限提升对话框。

不管恶意代码的目的是什么,要想关闭UAC,就必须提升权限。而恶意代码通常的特点就是在后台偷偷地运行(大多没有图形界面),在2000/XP下,这很容易做到。而在Vista下,所有阴暗的举动都必须放到台面上,光明正大地接受用户审判。用户只要看UAC对话框,就会发现这个进程并不是他手动启动的,而且来源不可靠(没有合法的数字签名发布方)。

这样的话,话题又重新回到那个博弈的命题:

UAC的UI是否足够clear?能否让用户一眼便可知晓,从而做出正确的选择?从而让用户体验达到confidence?

这个问题的话,可以预见不会一帆风顺,用户培训可能无法忽略(也许对我们来说,并不是一件坏事^;^)。

如果最终的结果是,如果用户在所有的UAC对话框上都单击“继续”或者“允许"。那么至少,他还可以对付一些XP下的危险程序(这些进程只能运行在普通用户权限下),至少比禁用UAC要好。

但是有一点是肯定的,就是所有的恶意代码,最终都必须诱骗用户点击“允许”,UAC至少增加了一道保险,尽管牺牲了一些易用性。

如果要我说,我推荐不要禁用UAC,因为这样同时会禁用IE保护模式等高级安全特性,降低系统的安全性。

说到底,决定权在用户手里。
2006年10月18日 13:42 by ahpeng

# re: 关于UAC的有趣比喻

To Lee:

如果SMS可以对普通用户进行软件和补丁分发,那么它可以很好地工作在UAC环境,不需要提升权限。

如果SMS必须枚举本地登录的用户帐户,那么可能需要提升权限,我没做过实验,不敢妄断。

至于UAC是否存在漏洞,是否有可以绕过的方法,我个人觉得很可能会最终被发现。但是启用UAC,可以提升用户安全体验。

问题在于,用户的体验往往是有失偏颇的:
通常来说,安全功能是最吃力不讨好的,属于“有了成绩,那是你应该做的;出了问题,就要找你算帐”。
而“易用性”则是最实惠的,这是用户可以明显感觉到的。例如拿IE来说,IE保护模式可能会被普通用户误认为最没有意义的功能;而多标签浏览,可能会被认为是最有价值的功能。实际上,这两者的意义,好比一个是云里鹓雏,一个是草间腐鼠。
2006年10月18日 14:07 by zarthur

# re: 关于UAC的有趣比喻

to 盆盆

对,我也认为,通过一段时间培养用户对于UAC的习惯,UAC会有应有的光芒的。最起码的,比如当用户点开一封电子邮件时,如果弹出对话框,需要提升权限,用户就可以作出判断了。
我想,最终用户需要建立这么一个概念,UAC的目的并不是说表面Vista是多么安全,而是提醒用户问一下自己这个事情是不是自己做的。
2006年10月18日 15:14 by Lee

# re: 关于UAC的有趣比喻

SMS之所以可以在用户为普通用户情况下安装软件,就其根源不过是SMS Agent使用一个管理员权限的用户帐号来进行安装而已。还是必须用到管理员权限的
2006年10月18日 15:16 by 盆盆的博客

# 有关UAC的争论

UAC似乎注定是一个话题人物,犹抱琵琶半遮面时,就已经引来毁誉无数。非常高兴拙作《关于UAC的有趣比喻》(http://blogs.itecn.net/blogs/winvista/archive/2006/10/17/3852.aspx)能够引来诸公那么多有价值的评论,然而这么好的评论放在文章的跟帖中,难免有些“明珠暗投”的委曲,不如将其“扶正”,放进正文里,好叫更多读者知晓,岂不美哉?本文录入了Arthur、Lee等兄弟和我本人对UAC的评论,这些评论有些是针锋相对、有些是殊途同义,端的是热闹非凡。不过需要声明的是:这些观点只有立场差别,没有对错之分,我们可以不同意别人的观点,但是要捍卫别人发表异见的权利。1....
2006年10月18日 22:35 by wuzhen

# re: 关于UAC的有趣比喻

Hack和customer这对矛盾的群体共同推进着计算机业的发展.hack越来越高的技术,使customer感觉越来越不安全,这个问题不是反映给OS厂商就是杀毒或者防火墙厂商,OS厂商或者杀毒厂商防火墙厂商再研究新技术增加customer的安全感...呵呵..Vista和Win95的安全性绝对不是一个档次的,其中UAC就起了不少的作用.安全性能高了,操作复杂性也高了.习惯使用没有UAC的XP或者2K或者2K3等等OS,大家对UAC会接受吗?一般电脑使用者会习惯UAC吗?或者感觉这个是一种不方便的操作呢?UAC...任重而道远..不知道它会走多远...
2008年4月28日 0:50 by Gmxp

# re: 关于UAC的有趣比喻

微软的UAC还是比较明智的选择啊,在Vista下开发就会发现我们的很多代码其实不需要很高的权限,过高的权限反而是件危险的事情。

说说您的看法?

(必填) 
必填 
(必填)