1 引言
1.1 研究背景
微软公司于2004年8月份正式发布了耗资庞大的Windows XP Service Pack 2(英文版),这不是一次简单的补丁打包升级,而是融入了众多新技术的Windows系统更新。微软声称SP2解决了以往的众多系统漏洞并且大大加强了Windows的安全性。对于Web开发者来说,值得关注的是SP2在IE中加入了Pop-up(弹出窗口拦截)功能,这将影响到世界上绝大部分使用弹出窗口的站点。虽然此前在Netscape等浏览器已加入了此项功能,并且Google以及中国的搜索公司Baidu推出的工具栏中也包含了这个功能,但是对于占据大部分市场份额的IE来说,这次升级是影响重大的。因为占据了浏览器市场80%份额以上的IE,每一个站点都不得不小心奕奕地使用弹出窗口。
2 项目概述
2.1 研究目的
研究Windows XP Service Pack 2中IE的Pop-up Blocker特征和原理,找到站点的弹出窗口在IE(SP2)下的解决措施。
2.2 测试环境
Windows XP Professional Version 2002 + Service Pack 2
Internet Explorer 6.0.2900.2180
2.3 项目周期
2004年8月26日-9月20日
40小时左右
3 项目内容
3.1 Windows XP SP 2简介
Windows XP Service Pack 2对操作系统做了许多重大改进增强了个人计算机的安全。它能够通过四个方式来抵御通常的攻击,网络保护,内存保护,增强的电子邮件安全性以及更加安全地浏览Internet。另一方面,Service Pack 2提供了更加方便的系统更新程序。管理员能够更加容易地控制企业网络安全,用户可以方便的使用蓝牙设备。Service Pack 2还包括了DirectX 9和Windows Media Player 9,它们包括了安全,性能和功能的改进。
通过 Windows XP Service Pack 2 (SP2),Microsoft 引入了一组安全技术,这些技术将有助于提高基于 Windows XP 的计算机抵御病毒和蠕虫恶意攻击的能力。这些技术包括:
• 网络保护
• 内存保护
• 增强的电子邮件安全性
• 更安全的浏览
3.2 Pop-up Blocker
Windows XP SP2在Internet Explorer中增加了Pop-up Blocker(弹出窗口阻止程序),它可以阻止或屏蔽大部分的弹出窗口。对于由最终用户点击链接打开的窗口不会被影响,另外来自本地网和信任站点域的弹出窗口也不会被阻止。
3.4 如何检测浏览站点的浏览器是否是SP2 中的 Internet Explorer
可以使用 window.navigator.userAgent 来检测。
var g_fIsSP2 = false;
function browserVersion()
{
g_fIsSP2 = (window.navigator.userAgent.indexOf("SV1") != -1);
if (g_fIsSP2)
{
//This browser is Internet Explorer in SP2.
}
else
{
//This browser is not Internet Explorer in SP2.
}
}
如果用户代理字符串中包含“SV1”,说明连接到您站点的浏览器是 SP2 中的 Internet Explorer。
3.5 其它方面
Windows XP Service Pack 2(SP2)还对ActiveX控件的安装和下载文件产生影响。