Windows Vista明显提高了对黑客和恶意入侵者的防范,毫无疑问,它是迄今为止最为安全的微软操作系统。通过诸如用户帐号控制(UAC)、BitLocker驱动器加密、文件/注册表虚拟化、强制完整性控制(MIC)和IE浏览器保护模式等功能,你可以在系统级别或更精细级别来加固Vista的安全性。
然而,由于Vista的安全配置的复杂性,人们对一些Vista安全功能和推荐配置存在很多令人迷惑之处。下面让我们看一下关于Vista安全的十大顶级误解,并给出正确的理解。
1、administrator帐号默认将被禁用?
通常情况下Vista会默认禁用administrator帐号,但是有一个前提:在管理员组里面存在其他活跃的定义好的成员。更准确的说法应该是,如果Vista检测到其他启用的管理员帐号的话,通过禁用真正的administrator帐号,来试图最小化管理员帐号的数量。在新安装Vista的时候,第一个新帐号将被增加到管理员组里,就如同在Windows XP和Windows 2000中一样,但是后来增加的用户不是。一旦第二个管理员帐号被增加后,Vista将禁用真正的administrator帐号。
需要注意的重要一点是,默认禁用的管理员帐号是没有密码的。你应该对administrator帐号设置一个复杂的密码,即使它是被禁用的。如果你要启用一个被禁用的administrator帐号的话,首先设置密码,然后你就可以启用这个帐号了。
2、Vista只存在四个强制完整性控制级别?
强制完整性控制(MIC)是Vista安全架构中新增加的一种检测机制。Vista中的所有安全性对象和进程都有一个完整性级别,完整性级别(IL)低的进程不能修改级别高的文件或注册表表项。有四个主要的强制完整性控制(MIC)级别:
・低(Low)
・中等(Medium)
・高(High)
・系统(System)
包括管理员组中的非提升权限成员在内的大多数用户,都运行在中等级别。以下是一些其他级别是如何被设定的。
・内核级别的Windows文件以系统完整性级别运行
・用户级别的代码,例如Windows Explorer和任务管理器,以中等完整级别运行
・真正的administrator或系统管理员组中的提升权限的成员以高完整级别运行
・保护模式下的IE浏览器以低完整性级别运行
・如果一个对象或资源没有明确的设定完整性级别,那么它具有中等完整性级别。
建立强制完整性控制的的主要目的是,使一般用户、程序和在IE保护模式下的下载内容难于修改系统文件。因此,即使一个用户可能是系统管理员组的一个成员,或者甚至即使一个恶意软件设法突破了IE的初级安全防御,它们也难于修改Windows的系统文件。
除了上述四个级别外,至少还有两个人们知道比较少的强制完整性级别:非信任级别和保护进程级别。非信赖完整性可能是级别最低的强制完整性级别,被设置给匿名空连接会话。保护进程可能是级别最高的强制完整性级别,只有在系统需要的时候才会被使用。
或许只有你在进行研究或故障排查的时候才能碰到这些强制完整性级别,你可以认为恶意黑客们将试图获得一个保护进程强制完整性级别的权限,来使Windows更轻松的被攻破。
3、用户帐号控制(UAC)减少管理员被需要的次数?
Vista要求用户获得提升的权限和许可来完成系统任务,诸如安装软件、更新内核驱动等等。Vista还有一些新的要求较少管理性帐号的功能,但是用户帐号控制(UAC)不是其中之一。
用户帐号控制(UAC)明确的要求那些希望完成管理性任务的用户具有提升的本地组中成员资格,例如administrators组或backup operators组。用户帐号控制(UAC)的存在并不会减少对管理性用户的需要,当执行诸如电子邮件或网络浏览等非管理性任务的时候,它提供了针对属于提升权限组的用户的额外的保护。
当一个提升权限的用户(但不是真正的administrator)登录后,用户帐号控制(UAC)设定两个访问安全令牌,也被叫做一个“分离令牌split-token”。直到用户通过用户帐号控制(UAC)提升了访问权限后,标准系统管理员组的成员安全令牌才可用。否则,Vista针对用户的安全令牌采取如下措施:
・Vista移除通常设置给管理员组成员的9个提升的权限
・用户的强制完整等级从高等降级为中级
・指定禁用安全标示符(deny-only security identifier,deny-only SID)
・出现用户帐号控制(UAC)同意提示窗口
・应用文件和注册虚拟化
当用户提升它们的session时,那些额外的限制将被移除。但是,Vista要求一个管理员帐号来完成许多普通的系统任务。通过在不明确被需要的时候移除提升的权限和许可,用户帐号控制可以同时保护系统和用户。这样,管理帐号不用在浏览网页或打开恶意电子邮件的时候担心其被提升的安全权限被使用。
在其他方面,Vista的确降低了必需的管理员的数量。首先,Vista已经移除了完成许多普通系统任务对管理员权限的需要,诸如查看或修改时区,配置无线网络,修改电源管理设置,创建和配置一个虚拟专用网络(VPN)连接和安装关键的Windows更新。
其次,Vista让管理员可以定义非管理员帐号可以安装的驱动、设备和ActiveX控制。因此,举个例子来说,你可以让你的用户安装打印机、网卡、USB设备和VPN软件。
第三,对于基本的网络重新配置任务,你可以增加非管理员用户到网络配置操作组中。在这个组中的用户可以释放IP地址,清空DNS缓存和完成其他普通网络任务。还有很多其他的方式来降低你需要管理员权限的次数。UAC不是其中之一。
4、只有administrators才能使用用户帐号控制(UAC)权限提升?
默认情况下,你不能输入非提升权限的帐号到用户帐号控制(UAC)同意对话框中。这意味着,如果一个用户帐号不属于一个提升权限组,它不能通过用户帐号控制(UAC)来提升权限。但是权限提升并不是管理员才有的功能。任何在administrators、backup operators、network configuration operators和power users组的帐号都被认为是可以提升权限的。你可以把它们作为潜在的用户帐号控制(UAC)凭证来使用进行合适的权限提升。当然,你依然不能使用非管理员用户来完成只有管理员才能完成的任务,但是你可以使用这些在提升权限组里的帐号来完成其他任务。
举个例子来说,你可能需要用户来运行一个要求细微差别许可的程序,但是你并不想给予他们管理权限。你可以创建一个具有合适权限的新用户帐号,并把它放到power用户组里(这个Vista中的组没有默认的权限或许可)。当这个用户需要“提升权限”来运行这个应用程序的时候,他们可以使用在power users组中的那个新帐号。
5、用户帐号控制是一个安全防线?
用户帐号控制(UAC)不是一个安全边界或安全范围。微软从来没有想让用户帐号控制(UAC)成为像防火墙一样具有定义好的安全范围的安全边界。当用户通过一个提升权限的帐号登录到系统时,用户帐号控制(UAC)保护保护用户和系统免遭特定类型的恶意攻击。它实际被用作一个支撑系统,无论什么时候要求临时的管理员访问。对于合法的应用程序来说,这是经常发生的事情。
用户帐号控制提供了以前版本的Windows操作系统所不能提供的保护。如果你想具有承诺的安全的真正保护,用户不应该作为一个管理员来登录到系统。就是那么简单。
6、IE保护模式会保护所有下载内容?
更准确的说,IE保护模式提供了对浏览网页过程中自动下载的互联网内容的额外保护。这儿的第一个例外是IE保护模式不适用于所有IE安全区域。默认情况下,IE保护模式并不会对在信任站点区域的任何网站起作用。但是,实际上还不仅仅有这一个例外。
通过以一个低强制完整性级别来运行IE浏览器,IE保护模式会给你额外的保护。这个原理也适用于大多数其他IE对象,诸如菜单条、浏览器帮助对象和其他插件。被IE保护模式自动下载下来的内容被存储在低完整性文件和注册表区域中,因此它不能直接对系统文件和标准中等完整性用户区域进行写访问。
创建IE保护模式是专门用于针对“隐蔽强迫(drive-by)”下载:那些未经用户同意就下载的行为。如果一个用户手动的下载一个文件或故意的执行激活一个内容,它会被标记为中等完整性级别。被一个提升权限的用户所同意的内容(例如安装一个ActiveX控件)则运行在高完整性级别。因此,假若用户被欺骗下载或执行一个内容,IE保护模式就不起作用了。
7、所有Windows进程被数据执行保护(DEP)所保护?
IE主进程Iexplore.exe被排除在Windows的数据执行保护(DEP)缓存溢出的默认保护之外。微软专门选择不启用对Iexplore.exe的数据执行保护(DEP),因为它可能导致Java和许多常用浏览器插件的问题。
因此,即使是在IE保护模式下浏览器也依然将暴露出许多常见的缓存溢出缺陷。但是,即使一个缓存溢出漏洞被成功利用,这个恶意的攻击将会发现它非常难于执行一个有意义的攻击。你可以轻松的对IE浏览器启用数据执行保护(DEP),如果数据执行保护不会引发任何问题的话,你可以保持它运行。
8、文件和注册表虚拟化会阻挡恶意文件和注册表修改?
文件和注册虚拟化的确可以阻挡恶意的修改,但是那是针对有限的一部分位置而说的。默认情况下,原有的应用程序对以下位置进行读写的时候会被重定向到每个用户的虚拟化的区域(这不是一个完整的列表):
・Program Files何其子文件夹
・64位系统上的Program Files (x86)
・Windows和所有的子文件夹,包括System 32
・Users%AllUsersProfile% ProgramData(在XP中是Documents and SettingsAll Users)
・Documents and Settings
・HKLMSoftware
除了这个有限的列表中的写阻挡位置外,以下对象从不会被虚拟化:
・默认的Vista应用程序
・具有可执行扩展名的文件,诸如.EXE、.BAT、.VBS和.SCR。你还可以在注册表中以下位置增加额外的文件扩展名例外:HKLMSystemCurrentControlSetServicesLuafvParameters
ExcludedExtensionsAdd
・64位的应用程序和过程
・在可执行名单中具有一个被请求的执行级别指示的应用程序,例如大多数Vista进程
・使用管理员权限运行的过程或应用程序
・内核模式应用程序
・修改一个标有Don't_Virtualize注册标志的注册表值的应用程序
关于最后一点,任何在HKLMSoftware下的键具有三个新的注册标志,你可以通过Reg.exe来查看:
・Don't_Virtualize
・Don't_Silent_Fail
・Recurse_Flag
标有Don't_Virtualize的任何键不会参与注册虚拟化。你可以使用Reg.exe来显示和设置注册标志。
Vista的新的Windows资源保护(WRP)经常被吹捧为Windows文件保护(WFP)的一个插件替代。Windows文件保护(WFP)在Windows 2000中被初次引入,在此前的Windows版本中采用了一个类似的系统文件保护(SFP)。两者都与Windows资源保护(WRP)类似,但是它们的工作原理和完成任务存在巨大的不同。
Windows文件保护只保护文件。而Windows资源保护则对关键文件、文件夹和注册表值进行保护。Windows文件保护和系统文件保护监视对受保护系统文件的修改。如果这个修改是未经授权的,它就使用一个合法的源文件的备份来提到被修改的文件。通常情况下,一个Windows文件保护事件发生的唯一警告是一个快速告警信息或者一个被写到事件日志中的事件。
Windows资源保护首先尽力来防止对系统资源的修改。管理员不能修改系统资源。默认情况下,只有Windows信任的安装安全主体(security principal)才能使用Windows模块安装服务来进行修改。
这儿需要提出的一个重大警告是,假若你个系统管理员或一个提升权限的用户完全掌握了一个受保护资源,并给了它们自己完全控制的权限,它们将能够修改,甚至是删除这些受保护的资源。和Windows文件保护WFP和系统文件保护SFP不同的是,Windows资源保护不会自动的使用一个合法的备份拷贝来替代受保护的文件。Windows资源保护WRP只替代对重起Windows比较关键的系统文件。
为了使Windows资源保护替代所有被修改的受保护资源(这在排障情况下是一个不错的想法),运行以下命令:sfc/scan now。如果你需要一个受保护文件的原始拷贝,你可能必须提供Vista安装文件。
10、Windows防火墙默认情况下不阻挡出站连接?
除了别的功能,Vista还增加了出站连接阻挡功能到Windows防火墙中。不过批评家们迅速指出,Vista默认情况下不阻挡任何出站连接,但是这种说法是不对的。默认情况下,在好几种场合Vista会阻挡出站通信。
Vista防火墙阻挡了一些源自许多默认服务的多余的或不需要的通信。它有82个默认过滤器来防止34个服务出站通信,而不是通过定义端口和IP地址范围来限制。举个例子来说,P2P分组服务被拒绝外出访问任何端口,而不仅仅是它默认的3587端口。另外还有很多其他的默认出站阻止,其中包括那些针对Windows Defender、Session Isolation和SNMP Trap通信等。
不幸的是,没有图形化的界面来配置或查看这些默认的过滤器。不过只想查看的话,这些默认的过滤器被列在注册表中的以下位置:
HKLMSystemCurrentControlSetServicesSharedAccessParametersFirewallPolicy
RestrictedServicesstaticsystem
目前,COM脚本工具是其主要的管理界面。
Windows Vista实际上具有比人们想到的更多默认的保护。只有经过合适的配置,你才能将Vista的安全性达到你要求的程度。
标签: