第1页: 第2页: 第3页: 第4页: 数据执行保护(DEP)是一种基于硬件的、防止缓冲区溢出的一种技术(图7),它能够让CPU对内存数据区域标记为只读,避免非正常代码无意中被执行。通过这种方式,当某个发动攻击的蠕虫或病毒将程序代码插入到一块被标记为仅包含数据的内存部分时,应用程序或 Windows 组件将不会运行这些代码。系统将给出相应的提示信息(图8)。
这种方式对于缓冲区溢出问题的解决有着明显的帮助,不过需要配合相应的硬件设备才能完全发挥功效。虽然支持此项技术的CPU目前只有Athlon 64和Intel 的Itanium CPU家族,但是XPSP2系统也可以通过软件的方式让我们在普通的处理器上使用部分功能。除此之外,对于在冲击波爆发期间暴露出来的RPC和DCOM安全问题,微软也做了彻底的修改。虽然这些修改对现有利用这2个接口的软件影响很大,但是为了安全,微软还是做了。
小知识:缓冲区溢出
缓冲区是随机存储器(RAM) 中的一个区域,是为了使用临时存储的数据而保留的。其中,这些临时存储的数据正等待在两个位置之间(例如,在应用程序数据区域和输入/输出设备之间)进行传输。
所谓缓冲区溢出,是由于软件代码边界处理缺陷或其他原因,造成破坏性代码在缓冲区里面被执行,引起系统被病毒入侵或被破坏。大多数蠕虫病毒(如冲击波、震荡波)均使用了这个方法来传播。
防止缓冲区溢出,常见的方法还是通过程序员写修正程序或对已知的缓冲区溢出特征进行拦截来实现。DEP技术让缓冲区溢出问题在物理层面上得到了控制。
终极武器之七:全面支持Wi-Fi和蓝牙
无线作为本年度的热点,经常吸引着人们的眼球。但是由于Windows原先并没有提供一个简易的配置向导,当用户面对厂商提供的复杂程序时,常常面现困惑。但在XPSP2里面,控制面板里面新增了无线网络安装向导。有了向导的帮助,还愁不会使用无线设备吗?
另外,在Windows XP SP1中曾宣布已经支持蓝牙设备,不过要正确使用蓝牙设备,还是需要先安装一个Q323183补丁程序。不过在安装XPSP2后,蓝牙设备得到了较好的支持。
在正确安装蓝牙适配器后,我们可以直接在文件夹的右键菜单中使用“发送到”功能把电脑中的文件发送到蓝牙设备中,也可以通过“开始→所有程序→附件→通讯”中的蓝牙文件传输向导接收来自蓝牙设备发送的文件或者把文件发送到指定的蓝牙设备上(如图9所示)。
终极武器之八:众多组件获得升级
为了避免查看长串的补丁清单,支持补丁隐藏显示的新版本的添加删除程序在XPSP2里面被启用。同时,为了让3D效果更加突出,DirectX 9.0c被引入XPSP2,可惜目前只有Geforce6系列显卡支持DirectX 9.0c。
为了提高多媒体播放质量,Windows Media Player 9.0也出现在了XPSP2里面;为了让东亚语言用户更好地使用Table PC,XPSP2进一步增强了Table PC中的手写文字识别能力。
此外,Windows Installer 3.0、Windows Movie Maker 2.1等新版本组件也出现在了XPSP2里面。
认识Service Pack
微软公司为了完善其软件产品,将很多修补程序放入一个软件包内提供给用户,这些软件包称为Service Pack(服务软件包)。
这里首先说说Windows操作系统的补丁,我们主要以Windows 2000/XP的补丁加以了解。一般需要安装的补丁有两种,Hotfix和Service Pack,Hotfix是针对某一具体问题而发布的专门解决这个问题的小程序(也可以叫做修复程序)。微软一般会把在自己的软件产品中发现的重大问题以安全公告(Security bulletin)的形式通知给大家,这些公告都有一个唯一的编号,即MS**-***。例如MS02-063,表示微软公司在2002年发布的第63个安全公告。而这些公告所涉及的问题还有另外一个编号:Q******。MS02-063安全公告的编号就是Q 329834,这个号码表明了该问题在微软知识库(Knowledge Base)中的编号,只要记住这个编号,随时都可以查找到相应的文章和解决方案。因此,每个安全公告所发布的补丁也就有了相应的编号,例如Q329834针对Windows XP系统的补丁名称就是Q329834_WXP_SP2_x86_ENU.exe(注:新的命名方式是以KB开头) ,这表示这个补丁解决的问题在知识库文章Q329834中讨论过。
而Service Pack,即补丁包,一般会在操作系统正式上市一段时间后发布,包含了自发布之日起全部的Hotfix补丁。只要安装了Service Pack,在这个Service Pack发布之前的所有Hotfix补丁都不用再安装了。Service Pack补丁不是累加的,也就是说,对于一个新安装的操作系统,你不必依次安装SP1、SP2、SP3,只要装了最新的Service Pack就可以了。