从Windows XP到Vista

时间:2022-07-01 03:56:21

可以肯定世界各地的黑客都疯狂地想成为攻破Windows Vista安全屏障的第一人,面对如此严峻的局面,微软自称其自有锦囊妙计。

盖茨近期嘴边最常提起的 “高信度计算(Trustworthy Computing)”不光承诺在更高的标准上提升软件的可靠性和易用性,同时更强调了安全性。尤其是在宣传微软旗舰产品之一的Vista系统时,这个词更是被一再提及。但若要防范如此众多黑客的恶意攻击,它似乎需要一些极端手段才能保证所谓的安全。

对于很多中小型企业来说,在系统软件升级过程中往往会由于新系统过分提高安全等级而带来既让人头疼,又降低效率的麻烦。所以对于这些企业来说,在从Windows XP升级到Windows Vista之前,同样有必要对升级前后要做的各项工作有个大致的了解。

在02年微软工作组收到的一封E-mail中盖茨是这样说的:“高信度计算就是同供电、供水、电话服务一样可行、可靠和安全的计算。”既然高信度计算已经将自己定位为安全可靠的化身,那它首先会拿哪些可能的威胁开刀以开启自己的使命呢?

破解与攻入

网络破解一般是要截获网络传输中的安全认证信息。这些窃取方法的利器之一就是“窃听(Sniff)”,相应的软件叫做Sniffer。网络黑客们可以用它来寻找包含用户名和密码的数据包。所以Vista要想做到安全,首先就是要防范杜绝这种软件的安装和使用。

窃取手段的第二个利器是Keylogger(可以记录使用者键盘动作的软件)。通常,这类软件都夹杂在垃圾邮件中,或者是做成跟某些安全性较差的网站相链接的相似网页。这样你在输入用户名和密码进入这些网页的时候,按键就会被Keylogger截获。当然一般不错的反流氓插件软件和防病毒软件都可以查杀Keylogger,但该类软件不断出现的新的变异,迫使这些防病毒程序也要不断更新才行。

当然,即便不依靠窃听和记录键盘动作的方法,黑客们仍有其他手段破解密码以获取对系统的控制权,比如说对用户名和密码进行穷举。对于这种方法,最简单的应对就是定期更换系统密码(很多网络安全权威机构建议至少三十天更换一次密码)。但很多用户一个密码要用上很久,Vista面对这种情况也需要采取措施来提高自身免疫能力。

尽管上面提到了几种黑客破解手段和应对措施,但它们还远远不足以保证你的系统安全。因为它们都不能解决缓冲区溢出的问题,而正是这个问题对系统的安全性破坏最为严重。

首先以一个简单的小程序为例,它允许用户输入一串字符。这串字符在用户输入时都会被率先存入缓冲区,如果这时缓冲区是动态的,一切都将运行正常。但通常的习惯是给定一个缓冲区大小,这就带来了溢出的问题。也就是说,如果用户不断输入,而同时程序又没有检查输入字段的长度并采取相应措施,那么这些字符串最终会超出缓冲区,多输入的部分没能起到它们在原来字符串中的作用。这里需要强调的是程序会允许多出来的字符显示,只是这些字符并没有发挥原有的作用,同时它们也会影响到后面输入的内容。

如果对于这些溢出的数据进行合理的编排,这些数据不但不会多余,反而会让处理器继续顺序运行。如果这部分数据内容以机器代码编写,那么系统将会读入这段字段并暗中执行。当然一般情况下,只有人为执行程序才会造成数据溢出,但对于在高权限帐户下运行的用户,这种情况就非常危险,因为他们可能并不知道执行中的程序后面包含了一部分的恶意代码。

幸运的是,因为这种数据溢出后面跟随的内容要求以机器代码编写,所以编写相对复杂,再加上系统补丁不断更新,所以尽管它们的危害性非常之大,相对来说我们很少遇到这种情况。

但对于Vista来说,不管威胁再小再少见,都应该采取一定手段同时把易用性和安全性结合起来才是真正的解决之道。而实际上在Vista下真要做到如此安全,微软一再强调的易用性先摆在一边,一系列的安全设置对于中小企业来说还真需要仔细盘算盘算。

设置,成功?

Vista此次采用的防御手段可以说是花样百出,其中最明显的变化就是新提出的“用户帐户控制(UAC,User Account Control)”概念。而也正是这个新概念给升级的用户带来了最大的麻烦。下面我们看看这个概念到底是怎么回事。

UAC简单说就是把所有用户都设为低权限用户(无论是普通用户还是系统管理员),从而降低各种恶意软件运行时对系统的威胁。但当Vista装到电脑上之后,系统权限上的这种变化是否能真正能带给我们方便,却需要我们有所权衡。

首先我们可以理解UAC将管理员也设为低权限是基于下面这种想法:对于一般管理员在系统运行期间,除非特别指定要进行管理权限范围内的功能,他没有必要取得如此高的权限,当他们确实需要这种权限时,他们能“暂时”地被给予权限。

这套自动授权的机制被称做“管理员授权模式(Administrator Approval Mode)”。当Vista收到管理员提高他们权限的要求时,系统会要求他们确认知道自己在提高用户权限。一旦相应任务完成,系统将会立即收回高权限,同时再次将低权限返还给管理员用户。

如果一般用户也尝试执行高权限才被允许的功能,Vista会提示他们需要管理员为该用户临时提高所要求功能的权限而并不加以执行。正是因为这两种区分方法,对于任何可疑软件,在运行时(无论是前台还是后台运行)均会被系统要求提供管理员的认可。当然这也会带来些副作用:任何一种潜伏于后台的恶意软件一旦运行,系统都会弹出提示,如果它频繁试图启动,可想而知会多么恼人。

所以对于想要升级Vista的用户来说,用户权限的这种赋予取消机制需要仔细设置,同时对于企业来说,每个普通用户都需要做一番相应的培训才能够真正适应这变化。这可能要包括对于系统安全性的讲解,故障或报错时分清一般错误和故障的知识的培训等等―这样会给企业带来不少连带的付出。

这些还不是最主要的―对于升级过程来说,最终的目的是实现所需软件在新环境下能够顺畅地运行,系统安全性达到一个新的高度。所以升级过程中一大问题就是要对工作人员需要运行的软件进行一个大致评估(因为XP下低权限可运行的软件在Vista下可能会要求更高权限才能运行),并且尽量减少系统要求用户更改权限的次数。不过庆幸的是微软提供了一个分配软件运行所需权限的软件,可以尽量帮助管理员一次性解决权限分配的问题。

升级工具

因为Vista对帐户采取有别于以往的更为安全的保存和设置方法,从另一方面来说必然也会让用户在升级过程中遇到不少麻烦,尤其是对于需要大规模进行升级操作的企业。如果仍要单独进行安装,那整个过程绝对会令人痛苦不堪。不过好在微软对于这个问题既提供了详细的帮助可供参考,又给出了很方便的工具帮助用户策划并进行升级。

用户升级工具(User State Migration Tool, USMT)就是这样一个被设计用来为管理员提供平滑过渡的升级工具,它可以在进行升级工作之前提取电脑上所有帐户以及对应帐户下所包含的文件(如图2)。这个工具既可以直接在用户电脑上执行,也可以远程将旧电脑上的文件抓取到新的可运行Vista的电脑上。

利用USMT,管理员可以对不同身份群体进行特定的环境设置,从而细化整个升级过程。同时管理员还可以指定普通帐户对于文件和文件夹的访问权限,可以对所创建的帐户的密码周期和重试次数进行设置,还可以进行一些其他更为细致的设定来提高系统的安全性。

在将用户以后会使用到的大部分程序包含进整个标准安装过程中并且保证它们在Vista下的兼容性之后,用户基本不会再遇到和UAC以及权限相冲突造成的问题。但是还是像之前提到的,在整个升级过程中,全局性的升级安排是很重要的。如果可能的话,阶段性的升级是最好的:可以先选择一部分对电脑了解较多,能够明白电脑报错原因的用户进行升级,等他们熟悉了Vista的工作环境后再对其他用户进行升级。同时如果在升级前能够在测试机上提前测试到可能发生的问题并且能够提供解决方案,那将会对之后的升级和使用提供更多有益的帮助。

无论你在升级过程中采取上面提到的哪种策略,最重要的是在搞清楚如何在Vista下克服系统致命错误之前,一定要对系统以及关键资料进行备份,这样在真正发生这种系统灾难的时候可以帮助你再次迅速恢复到先前的工作状态。比如对于先前提到的阶段性升级方案,你可能需要为这几台提前升级的电脑进行备份,并从它们投入运行后出现的种种致命错误中吸取经验,找到预防和解决的方法。

USMT还为系统升级用户提供本地或者远程服务器资料备份的功能。微软称备份功能对于将E-mail保存于服务器的台式机来说,需要75MB存储空间,直接保存E-mail于本地的台式机需要200MB空间,笔记本则需要300MB空间。

如果新升级的不仅是软件,同时还包括硬件系统的话,那就一定需要远程保存用户档案。对于这种情况,USMT配合得倒是天衣无缝。如果你希望了解更多USMT下用户升级的内容可以参考下面网址:

/en-us/windowsVista/aa905115.aspx。

新起点?

微软在新系统的设计中一方面要保证系统的安全性达到一个新高度,一方面仍要保证新系统和原有系统在使用感觉上不会有太大变化。这就需要将很多新的安全措施更深地隐藏在用户所能见和操作的范围之外,这些新的安全措施包括:地址空间布局随机化(Address Space Layout Randomisation,保证系统在遭到缓冲区溢出这种隐式攻击下仍能安全使用),用户帐户控制(User Access Control,确保用户在任何情况下不能安装任何被感染的代码或者破解工具)等等。

在一般系统的升级过程中,最重要的两点一是升级步骤的合理安排,一是升级过程本身的无错误。而对于Vista则需要再增加一点―确保系统用户安装的软件在运行时不需要调用系统最高权限,因为默认情况下这是不被允许的。

就像我通篇强调的,合理的规划是顺利完成任务的关键。同样的,Vista的升级也是这样―小规模的实验,问题的出现和解决,经验的积累,以及对系统的逐渐熟悉,再到大规模的系统升级,需要一步一步坚实地走好,这样你才能够在整个系统升级的过程当中真正做到平滑过渡,顺利进入Windows的新时代。

上一篇:LG M228WA 下一篇:告别3D游戏:显卡迈向通用计算