2008/04/24 | 如何消除ie上的tip:为了有利于保护安全性,IE已限制此网页运行可以访问计算机的脚本或 ActiveX 控件
类别(网页类学习笔记) | 评论(0) | 阅读(2811) | 发表于 21:27

Windows XP Service Pack 2 (SP2) 应用程序兼容性测试与缓解指南

缓解应用程序兼容性问题

发布日期: 2005年11月23日
本页内容
简介 简介
应用缓解修复 应用缓解修复
移除缓解修复程序 移除缓解修复程序
结束语 结束语

简介

现在您已经完成了对应用程序的测试并识别出任何兼容性问题,下一步是克服这些不兼容性。最佳方法是重新开发或升级软件,以使其符合 Windows XP SP2 提供的更好的安全基准。但是,在能够实现更长久的解决方案之前,通常需要短期修复。这种短期方法通过选择性地减少 Windows XP SP2 实现的安全设置来允许应用程序操作。

本章描述使用 UI、脚本和 Active Directory 组策略的组合的缓解技术。缓解包括实现一个兼容性时间表来跟踪缓解修复的部署。一旦通过重新编写或升级应用程序实现了完全的应用程序兼容性,就可以移除被削弱的安全设置。

有关对 Windows XP SP2 的组策略设置的更改和增强的更多信息,请参见微软网站,网址为:

http://www.microsoft.com/downloads/details.aspx?familyid
=ef3a35c0-19b9-4acc-b5be-9b7dab13108e&displaylang=en

应用缓解修复

对运行 Windows XP SP2 的计算机应用缓解修复需要采用谨慎的方法,并完全意识到做出任何更改的可能后果。仅当为了响应特定应用程序兼容性问题时,才应该对 Windows XP SP2 中的安全设置做出更改,并且只应将安全性削弱到需要的程度,以维持应用程序功能性。

Internet Explorer

Internet Explorer 具有 Windows XP SP2 中数量最多的改进。由于 Internet Explorer 是流行的 Web 应用程序前端,这些新功能可能影响应用程序功能。本节包含用于下列 Internet Explorer 功能的缓解技术:

功能控制

UrlAction 安全性

二进制行为

本地计算机锁定

MIME 处理

对象缓存保护

Windows 限制

区域提升阻止

信息栏

弹出窗口管理

加载项管理

功能控制

“功能控制”设置指定哪些进程(包括 Internet Explorer)会受到 Windows XP SP2 中的许多安全功能的影响。如果启用了功能控制设置,则可以使用 Windows XP SP2 功能控制安全功能(如 Internet Explorer 中的安全设置)。

“功能控制”并不直接配置各个功能的安全设置,而是允许该配置生效。使用“功能控制”来允许各个应用程序选择实现或不实现安全设置是可能的。这种灵活性允许管理员减少特定领域中可能导致不兼容性的安全设置,并提供一个简单的安全配置开关。

注意: 如果禁用功能控制设置,Internet Explorer 的行为将恢复为在 Windows XP Service Pack 1 (SP1) 中的行为。

有几种方法可以配置 Windows XP SP2 中的“功能控制”。它们是:

使用安全设置对话框。

创建并执行 RegFile。

运行脚本。

实现 Active Directory 组策略。

这些选项赋予您为环境选择最适合的方法的能力。

使用“安全设置”对话框

通过“控制面板”中的“Internet 选项,并使用“Internet 选项对话框中的安全选项卡,您可以在 UI 中配置功能。自定义级别按钮显示如图 3.1 所示的安全设置对话框。

Figure 3.1 Internet Explorer Security Settings dialog box

3.1 Internet Explorer“安全设置对话框
查看大图

在同一选项卡上,通过选择相应区域并单击站点按钮,您可以配置区域成员资格。图 3.2 显示了用于将站点添加到该安全区域的受限站点对话框。

Figure 3.2 Restricted Sites configuration interface

3.2 “受限站点配置界面
查看大图

这些界面的组合允许手动配置安全区域和每个区域中的功能。

使用注册表编辑器

可以使用 Windows XP 注册表编辑器 Regedit 来直接配置安全功能,虽然使用 Regedit 不是推荐的配置方法。一旦确定了需要的注册表位置,则使用脚本或 .reg 文件来进行必要的更改。启动 Regedit,然后定位到以下注册表项:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft \Internet Explorer\Main\FeatureControl

该项包含了用于每个功能的子项。图 3.3 显示了功能控制注册表项的内容。

Figure 3.3 Feature Control Registry Key and Subkeys

3.3 “功能控制注册表项和子项
查看大图

每个特定于功能的项包含各个设置的值。输入值 1 将启用相应功能的 Windows XP SP2 安全配置。值 2 将该功能的行为配置为与在 Windows XP SP1 中相同。“*”值为没有明确定义的所有进程提供默认配置。

每个单独的功能项的值与图 3.4 中所示的值类似。

Figure 3.4 Feature specific registry key values showing configuration for individual processes

3.4 表明各个进程配置的特定于功能的注册表项
查看大图

注意: HKEY_COMPUTER_USER 中的所有对应设置重写 HKEY_LOCAL_MACHINE 中的设置。此外,通过组策略做出的设置重写 HKEY_CURRENT_USER 或 HKEY_LOCAL_MACHINE 中的对应设置。

创建并执行 RegFile

可以使用 Regedit 将特定功能项导出到 .reg 文件。可以使用任何文本编辑器编辑该文件,然后通过执行 .reg 文件将其导入目标计算机上的注册表。图 3.5 显示了一个典型注册表导出文件的内容。

Figure 3.5The contents of a .reg file exported from the Feature Behaviors registry key

3.5 Feature Behaviors 注册表项导出的 .reg 文件的内容
查看大图

对管理员来说,创建 .reg 文件的理想方法是在导出相应项之前配置一台测试计算机。

运行脚本

也可以选择编写脚本来编辑注册表并实现需要的配置。下面的列表提供了一个适当脚本的示例。

注意: 为提高可读性,某些代码行将分为多行进行显示。

Set WshShell = CreateObject("Wscript.Shell") WshShell.RegWrite "HKEY_LOCAL_MACHINE\SOFTWARE \Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BEHAVIORS \MyApp.exe", "1", "REG_DWORD"
实现 Active Directory 组策略

Active Directory 组策略为管理员提供了向多台计算机实施安全设置的简便方法。Internet Explorer 的功能控制设置同时位于“计算机配置”和“用户配置”下面的以下路径中:

“管理模板”\“Windows 组件”\“Internet Explorer”\“安全功能”

图 3.6 显示了组策略中的功能控制设置。

Figure 3.6 Active Directory Group Policy settings for Feature Control

3.6 用于功能控制 Active Directory 组策略设置
查看大图

可以在这里指定每个功能的 Windows XP SP2 安全配置是否适用于特定进程。组策略为某些功能提供了特定于功能的附加配置。例如,“二进制行为”允许管理员批准的行为列表,“加载项管理”提供明确的加载项列表,“网络协议锁定”可以针对每个 Internet Explorer 安全区域进行配置。

如需查看本指南中关于该技术的更多信息,请单击以下链接:

“功能控制”简介

针对功能控制的应用程序兼容性测试

UrlAction

本指南涉及的许多功能都是使用 UrlAction 安全性来进行配置的。在 Windows XP SP2 以前,这些功能可逐个区域地配置,但是需要 Internet Explorer 管理工具包 (IEAK) 将配置设置作为安全策略的一部分向多个系统交付。在 Windows XP SP2 中,此功能现在包括在“组策略管理控制台”(GPMC) 中,虽然仍然可以通过 UI、使用脚本或通过导入 .reg 文件进行配置。

与“功能控制”设置一样,您可以从“Internet 选项界面中的安全选项卡配置 UrlAction。图 3.7 显示了用于特定安全区域的 Internet Explorer安全设置对话框。

Figure 3.7Internet Explorer security zone settings

3.7Internet Explorer 安全区域设置
查看大图

在该界面中,可以启用或禁用每个区域中的不同 UrlAction。使用安全设置站点对话框,您可以组织 UrlAction 和站点成员资格以减少兼容性问题。

还可以通过直接访问注册表(使用脚本或 .reg 文件)来配置 UrlAction。注册表在以下项中定义每个安全区域:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows \CurrentVersion\Internet Settings\Zones

Zones 项具有 5 个编号为 0 至 4 的子项,这些子项包含每个安全区域的配置:

0 – 本地计算机

1 – Intranet

2 – 受信任的站点

3 – Internet

4 – 受限制的站点

可以使用下面的注册表项配置“本地计算机锁定”:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows \CurrentVersion\Internet Settings\Lockdown-Zones\0

每个区域项包含该区域的每个可配置操作。图 3.8 显示了存储安全区域配置的注册表项和值。

Figure 3.8 Security zone configuration stored in the registry

3.8 存储在注册表中的安全区域配置
查看大图

UrlAction 在注册表中以数值表示。表 3.1 将 UrlAction 名称与注册表中显示的数值联系起来。

3.1 UrlAction 与关联的数值标识符

UrlAction 标志名称 安全设置 UI 数值标识符

URLACTION_DOWNLOAD_SIGNED_ACTIVEX

下载已签名的 ActiveX 控件

1001

URLACTION_DOWNLOAD_UNSIGNED_ACTIVEX

下载未签名的 ActiveX 控件

1004

URLACTION_ACTIVEX_RUN

对没有标记为安全的 ActiveX 控件进行初始化和脚本运行

1200

URLACTION_ACTIVEX_OVERRIDE_OBJECT_SAFETY

运行 ActiveX 控件和插件

1201

URLACTION_SCRIPT_RUN

活动脚本

1400

URLACTION_SCRIPT_JAVA_USE

Java 小程序脚本

1402

URLACTION_SCRIPT_SAFE_ACTIVEX

对标记为可安全执行脚本的 ActiveX 控件执行脚本

1405

URLACTION_CROSS_DOMAIN_DATA

跨域访问数据源

1406

URLACTION_SCRIPT_PASTE

允许通过脚本进行粘贴操作

1407

URLACTION_HTML_SUBMIT_FORMS

提交非加密表单数据

1601

URLACTION_HTML_FONT_DOWNLOAD

字体下载

1604

URLACTION_HTML_USERDATA_SAVE

持续使用用户数据

1606

URLACTION_HTML_SUBFRAME_NAVIGATE

跨域浏览子框架

1607

URLACTION_HTML_META_REFRESH

允许 META REFRESH

1608

URLACTION_HTML_MIXED_CONTENT

显示混合内容

1609

URLACTION_SHELL_INSTALL_DTITEMS

桌面组件的安装

1800

URLACTION_SHELL_MOVE_OR_COPY

拖放或复制和粘贴文件

1802

URLACTION_SHELL_FILE_DOWNLOAD

文件下载

1803

URLACTION_SHELL_VERB

在 IFRAME 中加载程序和文件

1804

URLACTION_SHELL_POPUPMGR

Use Pop-up Blocker

1809

URLACTION_NETWORK_MIN

登录

1A00

URLACTION_CLIENT_CERT_PROMPT

没有证书或只有一个证书时不提示进行客户证书选择

1A04

URLACTION_JAVA_PERMISSIONS

Java 权限

1C00

URLACTION_CHANNEL_SOFTDIST_PERMISSIONS

软件频道权限

1E05

URLACTION_BEHAVIOR_RUN

脚本和二进制行为

2000

URLACTION_MANAGED_SIGNED

运行用 Authenticode 签名的依赖于 .NET Framework 的组件

2001

URLACTION_MANAGED_UNSIGNED

运行没有用 Authenticode 签名的依赖于 .NET Framework 的组件

2004

URLACTION_FEATURE_MIME_SNIFFING

基于内容打开文件,而不是基于文件扩展名

2100

URLACTION_FEATURE_ZONE_ELEVATION

在低特权 Web 内容区域中的网站可以导航到此区域

2101

URLACTION_FEATURE_WINDOW_RESTRICTIONS

允许由脚本初始化的窗口,没有大小和位置限制

2102

URLACTION_AUTOMATIC_DOWNLOAD_UI

文件下载自动提示

2200

URLACTION_AUTOMATIC_ACTIVEX_UI

ActiveX 控件自动提示

2201

URLACTION_ALLOW_RESTRICTEDPROTOCOLS

允许通过受限制的协议的活动内容访问我的计算机

2300

表 3.2 组合 UrlAction 数值标识符和可能的配置值。

3.2 UrlAction 数值名称和配置选项

名称 UrlAction 策略设置选项

1001

"Enable"=0x00000000

"Disable"=0x00000003

"Prompt"=0x00000001

1004

"Enable"=0x00000000

"Disable"=0x00000003

"Prompt"=0x00000001

1200

"Administrator approved"=0x00010000

"Enable"=0x00000000

"Disable"=0x00000003

"Prompt"=0x00000001

1201

"Enable"=0x00000000

"Disable"=0x00000003

"Prompt"=0x00000001

1400

"Enable"=0x00000000

"Disable"=0x00000003

"Prompt"=0x00000001

1402

"Enable"=0x00000000

"Disable"=0x00000003

"Prompt"=0x00000001

1405

"Enable"=0x00000000

"Disable"=0x00000003

"Prompt"=0x00000001

1406

"Enable"=0x00000000

"Disable"=0x00000003

"Prompt"=0x00000001

1407

"Enable"=0x00000000

"Disable"=0x00000003

"Prompt"=0x00000001

1601

"Enable"=0x00000000

"Disable"=0x00000003

"Prompt"=0x00000001

1604

"Enable"=0x00000000

"Disable"=0x00000003

"Prompt"=0x00000001

1606

"Enable"=0x00000000

"Disable"=0x00000003

1607

"Enable"=0x00000000

"Disable"=0x00000003

"Prompt"=0x00000001

1608

"Enable"=0x00000000

"Disable"=0x00000003

1609

"Enable"=0x00000000

"Disable"=0x00000003

"Prompt"=0x00000001

1800

"Enable"=0x00000000

"Disable"=0x00000003

"Prompt"=0x00000001

1802

"Enable"=0x00000000

"Disable"=0x00000003

"Prompt"=0x00000001

1803

"Enable"=0x00000000

"Disable"=0x00000003

1804

"Enable"=0x00000000

"Disable"=0x00000003

"Prompt"=0x00000001

1809

"Enable"=0x00000000

"Disable"=0x00000003

1A00

"Anonymous logon"=0x00030000

"Automatic logon only in Intranet zone"=0x00020000

"Automatic logon with current user name and password"=0x00000000

"Prompt for user name and password"=0x00010000

1A04

"Enable"=0x00000000

"Disable"=0x00000003

1C00

"High safety"=0x00010000

"Medium safety"=0x00020000

"Low safety"=0x00030000

"Custom"=0x00800000

"Disable Java"=0x00000000

1E05

"High Safety"=0x00010000

"Medium Safety"=0x00020000

"Low Safety"=0x00030000

2000

"Enable"=0x00000000

"Administrator approved"=0x00010000

"Disable"=0x00000003

2001

"Enable"=0x00000000

"Disable"=0x00000003

"Prompt"=0x00000001

2004

"Enable"=0x00000000

"Disable"=0x00000003

"Prompt"=0x00000001

2100

"Enable"=0x00000000

"Disable"=0x00000003

2101

"Enable"=0x00000000

"Disable"=0x00000003

"Prompt"=0x00000001

2102

"Enable"=0x00000000

"Disable"=0x00000003

2200

"Enable"=0x00000000

"Disable"=0x00000003

2201

"Enable"=0x00000000

"Disable"=0x00000003

2300

"Enable"=0x00000000

"Disable"=0x00000003

"Prompt"=0x00000001

如需配置安全区域,请使用来自导出的区域项的 .reg 文件并根据需要进行编辑,或按前面所述的那样使用脚本直接编辑注册表。

有关如何使用注册表项 (.reg) 文件添加、修改或删除注册表子项和值的更多信息,请参见微软网站,网址为:

http://support.microsoft.com/default.aspx?kbid=310516

还可以使用组策略逐个区域地编辑 UrlAction 的配置。Internet Explorer 的 UrlAction 设置同时位于“计算机配置”和“用户配置”下面的以下路径中:

“管理模板”\“Windows 组件”\“Internet Explorer”\“Internet 控制面板”\“安全页”

图 3.9 显示了“组策略”控制台中的安全区域配置。

Figure 3.9 Security zone configurations in Group Policy

3.9 “组策略中的安全区域配置
查看大图

还可以通过注册表或使用组策略配置区域模板。这些模板允许容易地向计算机组应用标准配置。通过 Internet Explorer安全设置对话框,您可以通过单击想要应用的设置然后单击重置按钮来应用模板。

图 3.10 显示了应用安全区域模板的位置。

Figure 3.10 Applying a security zone template using the UI

3.10 使用 UI 应用安全区域模板
查看大图

注册表在下列项中包含模板设置:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows \CurrentVersion\Internet Settings\TemplatePolicies

同样,可以使用 .reg 文件或脚本进行配置更改。也可以选择使用位于如下路径的 Active Directory 组策略来配置区域模板:

“管理模板”\“Windows 组件”\“Internet Explorer”\“Internet 控制面板”\“安全页”

表 3.3 列出了这些模板的可配置数值。

3.3 安全区域设置的可配置值

DWord 设置

0

0x00000000

enable

1

0x00000001

prompt

3

0x00000003

disable

65536

0x00010000

high safety

131072

0x00020000

medium safety

196608

0x00030000

low safety

表 3.4 显示了每个安全区域的默认配置。

3.4 默认安全区域设置

UrlAction 数值名称 高安全性模板 受限制的区域 中安全性模板 Internet 区域 中低安全性模板 Intranet 区域 低安全性模板 受信任的区域 本地计算机区域 (LMZ) 锁定的本地计算机区域 *

1001

3

1

1

0

0

1004

3

3

3

1

1

3

1200

3

0

0

0

0

3

1201

3

3

3

1

1

3

1400

3

0

0

0

0

3

1402

3

0

0

0

0

1405

3

0

0

0

0

1406

3

3

1

0

0

1407

3

0

0

0

0

1601

1

1

0

0

0

1604

1

0

0

0

0

1606

3

0

0

0

0

1607

3

0

0

0

0

1608

3

0

0

0

0

1609

1

1

1

1

1

1800

3

1

1

0

0

1802

1

0

0

0

0

1803

3

0

0

0

0

1804

3

1

1

0

0

1809

0

0

3

3

3

1A00

65536

131072

131072

0

0

1A04

3

3

0

0

0

3

1C00

0

65536

131072

196608

196608

0

1E05

65536

131072

131072

196608

196608

2000

3

0

0

0

0

65536

2001

3

0

0

0

3

3

2004

3

0

0

0

3

3

2100

3

0

0

0

0

3

2101

0

0

0

1

3

3

2102

3

3

0

0

0

3

2200

3

3

0

0

0

3

2201

3

3

0

0

0

3

2300

3

1

1

1

1

N/A

结合使用“功能控制”和 UrlAction 来配置 Internet Explorer 安全区域中的安全设置。如果遇到应用程序兼容性问题,请尽量更改特定区域的安全设置而不要软化计算机的整体安全性。如果需要,请使用“功能控制”来仅禁用或启用特定进程的安全功能。

如需查看本指南中关于该技术的更多信息,请单击以下链接:

UrlAction 简介

针对 UrlActions 的应用程序兼容性测试

二进制行为

正如本指南前面所描述的,可以使用“功能控制”和 UrlAction 安全来启用和禁用二进制行为。

如需查看本指南中关于该技术的更多信息,请参考以下几节:

“缓解应用程序兼容性问题”一节的“功能控制”小节。

“缓解应用程序兼容性问题”一节的“UrlAction”小节。

除了允许特定区域中的二进制行为以外,还可以使用以下注册表项来配置管理员批准的特定行为的列表:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows \CurrentVersion\Internet Settings\Allowed Behaviors \#%Namespace%#%Behavior%=DWORD:00000001

请相应地替换 NamespaceBehavior 变量。然后可以使用管理员批准的设置,而不是启用或禁用所有二进制行为。

如需查看本指南中关于该技术的更多信息,请单击以下链接:

二进制行为简介

针对二进制行为的应用程序兼容性测试

本地计算机锁定

在 Internet Explorer 中承载本地 HTML 文件的应用程序可能会受到本地计算机安全性的影响。可以按照本指南前面描述的那样使用“功能控制”和 UrlAction 安全来配置“本地计算机锁定”。

如需查看本指南中关于该技术的更多信息,请参考以下几节:

“缓解应用程序兼容性问题”一节的“功能控制”小节。

“缓解应用程序兼容性问题”一节的“UrlAction”小节。

对于 Internet Explorer,“本地计算机锁定”功能默认是已启用的。可以使用 Active Directory 组策略来允许 CD 上的活动内容运行而不发出提示。

图 3.11 显示了该设置在组策略中的位置。

Figure 3.11Using Group Policy to allow active content from CD

3.11 使用组策略来允许 CD 上的活动内容
查看大图

开发人员以前可能预期能够使用“本地计算机”区域来运行活动内容,例如脚本和 ActiveX 控件。对于 Windows XP SP2,此方法现在可能会失败。请使用下列缓解技术来允许应用程序继续正常运行。

由于“本地计算机”区域现在比其他区域更具有限制性,应用程序可以在 HTML 文件中使用“Web 标记”注释。Internet Explorer 的此功能允许将 HTML 文件强制到除“本地计算机”以外的区域,以便脚本和 ActiveX 组件能够根据不同的安全策略运行。此设置在 Internet Explorer 4 及更高版本上有效。

如需识别从特定域下载(从而已应用了包含该域的区域的安全设置)的 HTML,请使用相应域名添加以下注释:

<!--saved from url=(0022)http://www.microsoft.com-->

括号中的数字与 URL 的长度有关。

如需将页始终视为特定区域的一部分,请使用相应区域名添加以下注释:

<!--saved from url=(0013)about:internet-->

如需查看本指南中关于该技术的更多信息,请单击以下链接:

本地计算机锁定简介

针对本地计算机锁定的应用程序兼容性测试

MIME 处理

为了使用新的 MIME 处理安全性,Web 服务器必须定义一致的内容类型标头和文件名扩展。对此的替代方法是添加“Content-disposition=attachment:”HTTP 标头。该元素将文件直接发送到其扩展处理程序而不是发送到 MIME 处理程序。如果应用程序使用 Internet Explorer 来执行 MIME 处理程序拒绝的文件,您可以通过编程方式更改此行为,以便 MIME 处理程序能够处理该文件。

如果这种方法不可行,您可以让 Internet Explorer 在 MIME/扩展不匹配时忽略 MIME 处理程序,方法是向注册表的以下位置添加该 MIME 处理程序的 ProgID

HKEY_CLASSES_ROOT\PROG_ID_OF_MIMEHANDLER_TO_IGNORE \PreferExecuteOnMisMatch=DWORD:00000001

如果该 MIME 处理程序和扩展处理程序的 ProgID 不匹配,开发人员可以移除对 MIME 处理程序的 ProgID 注册。在这种情况下,如果 MIME 处理程序和扩展处理程序来自相同 CLSID,那么即使 MIME 处理程序拒绝该文件,Internet Explorer 也允许该文件在扩展处理程序中执行。

为了防止由于 MIME 处理程序与 AssocIsDangerous 列表中的文件关联而出现附加文件下载提示,请在以下位置注册相应的 MIME 处理程序以保安全:

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows \CurrentVersion\InternetSettings\Secure_MIME_Handlers

此项应该包含一个值,其中值名称为 MIME 处理程序的 ProgID,值数据为 00000001,类型为 DWORD

如果 MIME 探查导致使用不适当的文件类型处理程序,请按照本指南前面的描述关闭相应区域的该功能(如果可行)。

MIME 探查是使用基于内容打开文件,而不是基于文件扩展名设置来控制的。

如需查看本指南中关于该技术的更多信息,请单击以下链接:

MIME 处理简介

针对 MIME 处理功能的应用程序兼容性测试

对象缓存保护

更有限制性的对象缓存模型可能导致应用程序兼容性问题,在这种情况下,您可以使用“功能控制”来禁用此功能的 Windows XP SP2 配置,或者使用 UrlAction 安全逐个区域地配置对象缓存保护,如前面几节所述。

开发人员也可以选择重新编写应用程序代码,以便在对象被访问之前重新缓存对象。

如需查看本指南中关于该技术的更多信息,请单击以下链接:

对象缓存简介

针对对象缓存的应用程序兼容性测试

窗口限制

如果对脚本初始化的窗口的限制导致应用程序兼容性问题,您可以使用“功能控制”来禁用此功能的 Windows XP SP2 配置,或者使用 UrlAction 安全逐个区域地配置“窗口限制”,如前面几节所述。

如需查看本指南中关于该技术的更多信息,请单击以下链接:

窗口限制简介

针对窗口限制的应用程序兼容性测试

区域提升阻止

如果区域提升阻止在受信任的网页中导致应用程序兼容性问题,您可以使用“功能控制”来禁用该功能的 Windows XP SP2 配置,或者使用 UrlAction 安全逐个区域(或逐个站点)地禁用该功能,如前面几节所述。

如需查看本指南中关于该技术的更多信息,请单击以下链接:

区域提升阻止简介

针对区域提升阻止的应用程序兼容性测试

信息栏

信息栏显示与许多事件相关的信息。下面几小节将介绍这些不同类型的信息。

加载项安装提示

许多网页或应用程序都依赖用户安装代码才能正常工作。如果信息栏导致用户错过安装选项,开发人员应该确保用户被重定向到的页将提供安装 ActiveX 控件。表 3.5 总结了加载项安装提示所提供的信息。

3.5 加载项安装提示所提供的信息

信息栏元素 消息文本

信息栏文本

为帮助保护您的安全,Internet Explorer 已阻止该站点在您的计算机上安装软件。请单击此处以了解更多选项…

简短文本

软件安装已阻止

菜单选项

安装软件...

有何风险?

弹出窗口阻止通知

此功能识别信息栏中任何已阻止的弹出窗口。表 3.6 总结了用于弹出窗口阻止的通知选项。

3.6 信息栏的弹出窗口阻止选项

信息栏元素 消息文本

信息栏文本

阻止了一个弹出窗口。要查看此弹出窗口或其他选项,请单击此处...

简短文本

阻止了一个弹出窗口

菜单选项

显示上一个弹出窗口

允许此站点的弹出窗口显示

允许弹出窗口显示

显示阻止的弹出窗口的信息栏(已选中)

弹出窗口选项...

自动下载提示

在没有用户交互情况下开始的自动下载的通知现在出现在信息栏而不是出现在弹出式对话框中。网页应该包含用户用于开始文件下载过程的链接(最好指定内容的 URL)。如果使用脚本来定位资源,该脚本应该在 OnClick 事件处理程序的上下文中同步运行。表 3.7 总结了针对自动下载的通知选项。

3.7 信息栏的自动下载选项

信息栏元素 消息文本

信息栏文本

为帮助保护您的安全,Internet Explorer 已经阻止从此站点下载文件到您的计算机。请单击此处以了解更多选项…

友好通知文本

已阻止文件下载

菜单选项

下载软件

有何风险?

活动内容被阻止

Windows XP SP2 可能阻止应用程序正常工作所需的某些活动内容。如果发生这种情况,信息栏将出现说明。表 3.8 总结了用于阻止活动内容的通知选项。

3.8 信息栏的活动内容阻止选项

信息栏元素 消息文本

信息栏文本

为帮助保护您的安全,Internet Explorer 已经限制此文件显示可能访问您的计算机的活动内容。单击此处查看选项...

简短文本

已阻止活动内容

菜单选项

允许阻止的内容

有何风险?

由于安全设置,ActiveX 被阻止

对于 Windows XP SP2,与被阻止的 ActiveX 组件相关的任何信息现在将在信息栏中显示。表 3.9 总结了用于阻止 ActiveX 组件的通知选项。

3.9 信息栏的 ActiveX 组件阻止选项

信息栏元素 消息文本

信息栏文本

您的安全设置不允许 ActiveX 控件在该页上运行。该页可能无法正确显示。请单击此处以了解更多选项…

简短文本

已阻止软件

菜单选项

允许此站点运行 ActiveX 控件

有何风险?

网页应该提供文件下载提示以供用户单击。用户被重定向到的任何页还应该显示关于安装所需加载项的信息。如果某个加载项的升级已发布,该升级应该与原始文件具有相同的全局唯一标识符 (GUID),以防止重新安装过程在信息栏中产生提示。

如果出现任何兼容性问题,您可以按照本指南前面描述的那样使用“功能控制” 来配置信息栏

如需查看本指南中关于该技术的更多信息,请单击以下链接:

信息栏简介

针对信息栏的应用程序兼容性测试

弹出窗口管理

通过单击 Internet Explore 中的工具菜单的弹出窗口阻止程序选项,可以在 UI 中配置弹出窗口阻止程序。图 3.12 显示了 Internet Explorer 中的弹出窗口阻止程序菜单。

Figure 3.12 Pop-up Blocker menu in Internet Explorer

3.12 Internet Explorer 中的弹出窗口阻止程序菜单
查看大图

单击弹出窗口阻止程序设置...”将显示弹出窗口阻止程序设置对话框,如图 3.13 所示。该对话框使用户能够允许指定的网站的弹出窗口。

Figure 3.13 Pop-up Blocker settings UI

3.13 “弹出窗口组织程序设置”UI
查看大图

注意: 通过在单击网页链接时按下 ALT 键,可以临时允许弹出窗口。

使用本指南前面关于 UrlAction 安全的小节中描述的方法,可以逐个区域地启用或禁用弹出窗口阻止程序。

如需查看本指南中关于该技术的更多信息,请参考以下小节:

“缓解应用程序兼容性问题”一节的“UrlAction”小节。

可以使用 Active Directory 组策略配置站点列表,即使使用以下位置的设置启用了阻止,也允许这些站点使用弹出窗口:

“管理模板”\“Windows 组件”\“Internet Explorer”\“弹出窗口允许列表”

如需查看本指南中关于该技术的更多信息,请单击以下链接:

弹出窗口管理简介

针对弹出窗口管理的应用程序兼容性测试

加载项管理

可以使用 Internet Explorer 中的管理加载项...”菜单识别任何已安装的 Internet Explorer 加载项。图 3.14 显示了该菜单和管理加载项对话框。

Figure 3.14 Manage Add-ons interface

3.14 “管理加载项界面
查看大图

管理加载项界面中,可以启用或禁用加载项,或者更新 ActiveX 控件。管理员可以配置以下三种“加载项管理”模式:

普通模式(默认)。用户对已启用或禁用的加载项拥有完全控制。

允许列表模式。管理员指定允许的加载项。其他所有加载项都被禁止,并且用户不能更改允许的加载项。

拒绝列表模式。管理员指定被禁止的加载项,但是其他所有加载项可由用户控制。

这些模式的配置可通过注册表使用以下注册表项进行:

Management Mode HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows \CurrentVersion\Policies\Ext\ManagementMode:DWORD

0 – 普通

1 – 允许列表

2 – 拒绝列表

允许列表

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows \CurrentVersion\Policies\Ext\AllowList

允许列表包含子项,子项包含允许的加载项的 CLSID。

拒绝列表

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows \CurrentVersion\Policies\Ext\DenyList

拒绝列表包含子项,子项包含被拒绝的的加载项的 CLSID。

也可以选择通过位于以下路径的 Active Directory 组策略来配置加载项:

“管理模板”\“Windows 组件”\“Internet Explorer”\“安全功能”

如需查看本指南中关于该技术的更多信息,请单击以下链接:

加载项管理简介

针对加载项管理的应用程序兼容性测试

Windows 防火墙

Windows XP SP2 默认启用了 Windows 防火墙。如需允许传入的通信,您必须打开特定端口或将程序放到例外列表中。如果服务或应用程序尝试侦听某个特定的端口,则会有一个对话框将此操作通知用户。如果用户拥有管理权限,则该对话框还提供打开该端口的选项。

全局配置

可以从任何网络连接的属性对话框为所有连接配置 Windows 防火墙。高级选项卡提供了对设置按钮的访问。图 3.15 显示了“Windows 防火墙对话框。

Figure 3.15 Windows Firewall configuration interface

3.15 Windows 防火墙配置界面

“Windows 防火墙对话框提供了几个配置选项。在常规选项卡上,可以关闭防火墙(不推荐)或将其置于不允许例外模式(在此模式下,例外列表将被忽略)。

例外选项卡基于以下对象允许对程序或端口的访问:

程序。必要的端口将在应用程序需要时动态打开,在应用程序终止时关闭。

端口。当 Windows 防火墙或 ICF 服务正在运行时,TCP 或 UDP 端口将操持打开。

当将程序或端口放到例外列表中时,可通过单击更改范围按钮并选择以下选项之一来定义访问范围:

任何计算机(包括 Internet 上的计算机)

仅我的网络(子网)

自定义列表(IP 地址和子网掩码的列表)

特定于接口的配置

如需为单独的网络接口配置设置,请单击高级选项卡,选择所需的接口,然后单击设置按钮。图 3.16 显示了 Windows 防火墙特定于接口的配置。

Figure 3.16 Windows Firewall interface specific configuration

3.16 Windows 防火墙特定于接口的配置
查看大图

如需从命令行或脚本配置 Windows 防火墙,请使用 Netsh Firewall 命令。

使用以下路径中的设置,您可以在 Active Directory 组策略中配置 Windows 防火墙设置:

“管理模板”\“网络”\“网络连接”\“Windows 防火墙”

组策略允许属于域成员的计算机的以下两个配置文件的配置:

域策略。该策略在计算机登录域时生效。

标准策略。该策略在计算机未登录域时生效。

标准策略对于移动工作者很有用。

如果 Windows 防火墙导致兼容性问题,您可能需要在防火墙中打开静态端口,或将应用程序放入例外列表。一些用于维持功能的有用设置包括:

禁止使用 DNS 域网络上的 Internet 连接防火墙。阻止在连接到从那里接收策略的域时启用或配置 Windows 防火墙。例如,如果某客户端计算机从 corp.contoso.com 域接收策略,则 Windows 防火墙不会在连接到 corp.contoso.corp DNS 域时尝试筛选流量。

Windows 防火墙: 允许通过验证的 IPSec 旁路。允许来自使用 Internet 协议安全 (IPSec) 验证过的任何计算机的未经请求的传入流量。此设置需要所有相关计算机上的 IPSec 配置。

Windows 防火墙: 允许远程管理例外。允许使用微软管理控制台 (MMC) 和 Windows 管理规范 (WMI) 之类的管理工具对计算机进行远程管理。为此,Windows 防火墙打开 TCP 端口 135 和 445。服务通常使用这些端口以使用远程过程调用 (RPC) 和分布式组件对象模型 (DCOM) 通信。此策略同时允许 SVCHOST.EXE 和 LSASS.EXE 接收未经请求的传入消息并允许承载的服务打开其他动态分配的端口,这些端口通常在 1024 至 1034 的范围之内。

Windows 防火墙:允许文件和打印机共享例外。允许文件和打印机共享。为此,Windows 防火墙打开 UDP 端口 137、138 和 TCP 端口 139 和 445。如果启用此策略设置,Windows 防火墙将打开这些端口,这样计算机就可以接收打印作业和访问共享文件的请求。您必须指定允许发送这些传入消息的 IP 地址或子网。在控制面板的“Windows 防火墙组件中,文件和打印机共享复选框是选中的,管理员无法将其清除。

Windows 防火墙:允许 ICMP 例外。定义 Windows 防火墙允许的 Internet 控制消息协议 (ICMP) 消息类型的集合。实用工具可以使用 ICMP 消息确定其他计算机的状态。例如,PING 使用回显请求消息。如果您不启用“允许入站回显请求”消息类型,Windows 防火墙阻止由其他计算机上运行的 Ping 发送的回显请求消息,但不阻止由启用此设置的计算机上运行的 Ping 发送的出站回显请求消息。阻止来自其他计算机的 PING 请求可能引发管理应用程序问题,因为远程用户无法确认目标计算机是否在该网络上。

Windows 防火墙:允许远程桌面例外。允许此计算机接收远程桌面请求。为此,Windows 防火墙打开 TCP 端口 3389。您必须指定允许传入远程桌面请求的 IP 地址或子网。在控制面板的“Windows 防火墙组件中,远程桌面复选框是选中的,管理员无法将其清除。

Windows 防火墙:定义程序例外Windows 防火墙:定义端口例外。允许预先配置例外列表以用于部署到网络客户端。

Windows 防火墙:允许记录日志。允许 Windows 防火墙记录有关其接收的未经请求的传入消息的信息。

图 3.17 显示了 Windows 防火墙日志的一个示例。

Figure 3.17 Windows Firewall logfile

3.17 Windows 防火墙日志文件
查看大图

以编程方式打开端口

通过使用 INetFWAuthorizedApplication API,独立软件供应商 (ISV) 可以在安装过程中将他们的程序放到例外列表中。ISV 应该注意:

应用程序必须运行在具有管理员权限的用户上下文中才能将自己添加到 Windows 防火墙例外列表中。

对于允许的 Winsock 应用程序,不管运行应用程序的用户上下文如何,均自动打开和关闭端口。

应用程序应该在将自己添加到 AuthorizedApplications 集合中之前征得用户的同意。

Svchost.exe 不能被添加到 AuthorizedApplications 集合中。

有关 INetFwAuthorizedApplication 的更多信息,请参见微软网站,网址为:

http://msdn.microsoft.com/library/default.asp?url
=/library/en-us/ics/ics/inetfwauthorizedapplication.asp
.

如需查看本指南中关于该技术的更多信息,请单击以下链接:

Windows 防火墙简介

针对 Windows 防火墙的应用程序兼容性测试

数据执行保护

Windows XP SP2 通过 boot.ini 文件中的引导项、控制面板中的“系统”和应用程序兼容性工具包 (ACT) 提供 DEP 的配置。

全局配置

默认情况下,DEP 被配置为仅保护核心 Windows 应用程序和服务。该配置策略级别称为 OptIn。可以配置 DEP 使用表 3.10 中描述的四种不同策略级别之一。

3.10 DEP 的四种策略级别

配置 描述

OptIn

(默认配置)

默认为有限的系统二进制和“选择使用”(opt-in) 的应用程序启用 DEP。

对于此选项,DEP 默认仅涵盖 Windows 系统二进制。

OptOut

默认为所有进程启用 DEP。用户可以使用控制面板中的系统来手动创建不应用 DEP 的特定应用程序的列表。IT 专业人员和 ISV 可以使用 ACT 来免除一个或多个应用程序的 DEP 保护。针对 DEP 的系统兼容性修复程序(“垫片”)确实会生效。

AlwaysOn

这为整个系统提供完全的 DEP 覆盖率。所有进程都始终在应用 DEP 的情况下运行。用于将特定应用程序从 DEP 保护中免除的例外列表不可用。针对 DEP 的系统兼容性修复程序(“垫片”)不会生效。选择不使用 ACT 的应用程序将在应用 DEP 的情况下运行。

AlwaysOff

无论硬件 DEP 支持如何,此设置都不会为系统的任何部分提供任何 DEP 覆盖率。除非引导项中存在 /PAE 选项,否则处理器将不在 PAE 模式下运行。

硬件强制和软件强制的 DEP 以相同方式进行配置。如果系统范围的 DEP 策略设置为 OptIn,则相同的 Windows 核心应用程序和服务将同时受到硬件和软件强制的 DEP 的保护。如果系统不支持硬件强制的 DEP,则 Windows 核心应用程序和服务仅受到软件强制的 DEP 的保护。

类似地,如果系统范围的 DEP 策略设置为 OptOut,则已免除 DEP 保护的应用程序将同时从硬件和软件
强制的 DEP 免除。

四个系统范围的 DEP 配置是通过 boot.ini 开关来控制的。这些 Boot.ini 设置如下:

/noexecute=policy_level

其中 policy_level 被定义为 AlwaysOn、AlwaysOff、OptIn 或 OptOut。

Boot.ini 文件中的任何现有 /noexecute 设置不会在安装 Windows XP SP2 或者在带有或不带硬件强制的 DEP 支持的计算机之间移动 Windows 操作系统映像时被更改。

在 Windows XP SP2 安装过程中, OptIn 策略级别默认是启用的,除非在无人参与安装中指定了不同的策略级别。如果某个支持 DEP 的 Windows 版本的引导项中不存在 /noexecute=policy_level 设置,则其行为与包括 /noexecute=OptIn 选项时相同。

作为管理员登录的最终用户可以使用系统属性对话框中的数据执行保护选项卡在 OptIn OptOut 策略之间配置 DEP。下面的过程描述如何在计算机上手动配置 DEP:

1.

单击开始,单击控制面板然后双击系统

2.

单击高级选项卡。然后在性能下面,单击设置

3.

单击数据执行保护选项卡。

4.

单击关闭硬件 DEP” (启用软件 DEP以选择 OptIn 策略。

5.

单击 为除下列选定程序之外的所有程序启用的硬件和软件 DEP”以选择 OptOut 策略。

6.

单击添加并添加不希望对其使用 DEP 的应用程序。

IT 专业人员可以使用多种方法控制系统范围的 DEP 配置。Boot.ini 可使用脚本机制直接修改,或者使用作为 Windows XP SP2 的一部分包括的 Bootcfg.exe 工具。

对于无人参与的 Windows XP SP2 安装,您可以使用 Unattend.txt 文件预先填充特定的 DEP 配置。可以使用 Unattend.txt 文件的 [Data] 节中的 OSLoadOptionsVar 项来指定系统范围的 DEP 配置。

基于每个应用程序的配置

为了 DEP 设置为 OptOut 策略级别时的应用程序兼容性,可以选择性地为各个单独的 32 位应用程序禁用 DEP。

最终用户配置

对于最终用户,系统属性中的数据执行保护选项卡可用于选择性地为某个应用程序禁用 DEP。

Figure 3.18 Configuring the DEP exception list in system

3.18 配置系统中的 DEP 例外列表
查看大图

如需在 DEP 策略设置为 OptOut 时将某个应用程序添加到例外列表,请单击添加按钮并选择不希望对其使用 DEP 的程序。

当应用程序遇到 DEP 问题时,用户将接收到提示。如果用户是本地 Administrators 组的成员,则用户可以免除该应用程序的 DEP 保护。

生成提示的应用程序被放在 DEP 例外列表中,但是该应用程序未被标记为已启用。图 3.19 显示了一个 DEP 警报对话框。

Figure 3.19 Data Execution Prevention Alert

3.19 数据执行保护警报
查看大图

IT 专业人员配置

Windows XP SP2 提供了几种在企业中配置 DEP 的方法。

为应用程序启用 DEP

对于最终用户配置在其中不可行或不实用的 Windows XP SP2 部署,Windows XP SP2 提供了新的兼容性修复程序,可用于禁用给定应用程序的 DEP。使用作为 ACT 的一部分的 Compatibility Administrator(兼容性管理器),可以将 DisableNX 兼容性修复程序应用于某个应用程序。

一旦使用 Compatibility Administrator 将 DisableNX 兼容性修复程序应用于某个程序,就可以使用包括登录脚本、SMS 或组策略在内的多种方法将结果自定义兼容性数据库部署到 Windows XP SP2 系统。

有关使用 Windows 应用程序兼容性工具包的更多信息,请参见微软网站,网址为:

http://www.microsoft.com/windows/appcompatibility/toolkit.mspx

为应用程序启用 DEP

为核心 Windows 组件以外的若干应用程序启用 DEP 保护,而不必将系统范围的 DEP 配置设置为 OptOut 策略级别,这样也许是可取的。

在这种方案中,可以使用 Compatibility Administrator 工具将 AddProcessParametersFlags 兼容性修复程序应用于某个应用程序以启用 DEP 保护。必须带命令行参数值“20000”来添加 AddProcessParametersFlags 兼容性修复程序。

如需为某个兼容性修复程序指定命令行值,必须带 /x 开关启动 Compatibility Administrator 工具。

如需将 AddProcessParametersFlags 兼容性修复程序应用于某个应用程序,

1.

请从工具栏上单击修复程序以创建新的兼容性修复程序。

2.

提供必需的信息,包括应用程序可执行文件的路径,然后单击下一步

3.

为该应用程序应用任何必要的附加兼容性模式或层。(注意,为应用程序启用 DEP 不需要任何兼容性模式或层。DEP 是通过添加下面的 AddProcessParametersFlags 兼容性修复程序来为应用程序启用的。)单击下一步

4.

单击“AddProcessParametersFlags”兼容性修复程序,并单击参数按钮。

5.

命令行文本框中,输入“20000”,然后单击确定

6.

单击下一步以指定匹配信息。

7.

在指定匹配信息之后,单击完成以创建该应用程序修复程序。

一旦创建了应用程序修复程序,就可以使用包括登录脚本、SMS 或组策略在内的多种方法将结果自定义兼容性数据库部署到 Windows XP SP2 系统。

如需查看本指南中关于该技术的更多信息,请单击以下链接:

DEP 简介

针对 DEP 的应用程序兼容性测试

分布式组件对象模型\远程过程调用

Windows XP SP2 应用于 DCOM 和 RPC 的安全性阻止许多针对这些服务的基于网络的攻击。因此,在更改影响网络通信的安全设置之前需要仔细考虑。

分布式组件对象模型

Windows XP SP2 将 DCOM 安全性应用于 COM 服务器组件以阻止匿名访问。这些权限划分为两个 ACL:

启动和激活权限

访问权限

系统范围的 ACL 位于“组件服务”管理控制台中我的电脑属性下面。图 3.20 显示了该对话框,它允许配置计算机范围和默认应用程序 DCOM 安全。

Figure 3.20 DCOM security configuration interface for setting the system-wide configuration

3.20 用于设置系统范围的配置的 DCOM 安全配置界面
查看大图

每种权限类型有两个 ACL:

编辑权限。设置计算机范围的权限。

编辑默认值。定义默认应用程序权限。然后管理员可以接受每个单独 COM 应用程序的默认应用程序权限,或者分别自定义权限。可以在 COM 服务管理控制台中的特定应用程序属性中配置这些权限。

图 3.21 显示了特定应用程序的 DCOM 安全配置界面。

Figure 3.21 DCOM security interface for the IIS Admin Service

3.21 IIS Admin Service DCOM 安全界面
查看大图

计算机范围的 ACL 存储在注册表中的以下位置:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft \Ole \MachineAccessRestriction= ACL

and

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft \Ole \MachineLaunchRestriction= ACL

计算机范围的限制权限设置可通过组策略来推送。可以使用位于以下路径的 Active Directory 组策略来配置计算机范围的设置:

“Windows 设置”\“安全设置”\“本地策略”\“安全选项”

图 3.22 显示了用于“DCOM 计算机访问”权限配置的组策略设置。

Figure 3.22 Using Group Policy to set computer wide DCOM configuration

3.22 使用组策略来设置计算机范围的 DCOM 配置
查看大图

当组策略在计算机上生效时,它将得到遵循,而本地计算机的计算机范围的限制权限则被忽略。

DCOM ACL 的配置在注册表中创建新的安全描述符。

如果您实现 COM 服务器,并预期支持非管理 COM 客户端进行的远程激活或未经验证的远程调用,则应该首先考虑这是否为最佳配置。如果是,则需要更改计算机范围的限制(“编辑限制”)的默认 DCOM 配置。

如果您实现 COM 服务器并重写默认安全设置,则应该确认特定于应用程序的“启动权限”ACL 向适当的用户授予了“激活”权限。如果没有,则需要更改特定于应用程序的“启动权限”ACL 来向适当的用户授予“激活”权限,以便使用 DCOM 的应用程序和 Windows 组件不会失败。

警告: 如果不正确地使用这些计算机范围的限制权限,可能会导致使用 DCOM 的应用程序和 Windows 组件失败。

应该慎重使用拒绝访问控制项 (ACE)。您应该在应用它之前仔细评估其后果。拒绝 ACE 可能导致以外结果,并且可能阻止用户访问他们需要访问的某些功能。取决于您为其设置拒绝 ACE 的安全组,该限制可能影响本地计算机上的管理员。

通过编辑注册表中的以下项,还可以免除 DCOM 应用程序的激活安全检查:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft \Ole\AppCompat\ActivationSecurityCheckExemptionList

添加一个值,其值名称为取自“组件服务”MMC 的“DCOM 配置”部分的应用程序 ID,值数据为:

0 不从激活安全检查中免除该应用程序

1 从激活安全检察中免除该应用程序

使用位于以下路径的组策略配置该列表:

“管理模板”\“系统”\“分布式 COM”\“应用程序兼容设置”

远程过程调用

Windows XP SP2 通过以下设置为开发人员和管理员提供保护 RPC 通信的能力:

RestrictRemoteClients 注册表项。该项的路径可能还不存在,但是应该创建在

HKEY_LOCAL_MACHINE\ SOFTWARE\Policies\ Microsoft\Windows NT\RPC。

RestrictRemoteClients 注册表值接受三个值:

0 – 跳过新的接口限制。行为与 Service
Pack 1 相同。

1 –(默认)限制访问所有 RPC 接口。RPC 运行库将拒绝所有远程匿名调用。如果某个接口注册了安全回调并提供 RPC_IF_ALLOW_CALLBACKS_WITH_NO_AUTH 标志,则此限制将不适用于该接口。如果该项不存在(默认情况),则系统将假设该项具有此值。

2 – 无免除地强制新接口限制。这与值 1 相同,只不过 RPC_IF_ALLOW_CALLBACKS_WITH_NO_AUTH 标志不导致免除某个接口。如果使用该值,系统不能接收使用 RPC 的远程匿名调用。如果设置了此值,使用 DCOM 的应用程序可能无法正常工作。这个新的安全模型允许管理员限制 RPC 协议的系统攻击面。

EnableAuthEpResolution 注册表项。该项的路径可能还不存在,但是应该位于

HKEY_LOCAL_MACHINE\ SOFTWARE\Policies \Microsoft\Windows NT\RPC。

必须在客户端上设置此值,以允许与运行 Windows XP SP2 的远程计算机上的 RPC 端点映射程序 (RPC Endpoint Mapper) 通信。该配置是 Windows XP SP2 默认设置 RestrictRemoteClients 所必需的。EnableAuthEpResolution 的允许值为:

0 – 已禁用

1 – 已启用

RPC 接口注册标志。Windows XP SP2 创建了三个新的接口注册标志,使得应用程序开发人员保护 RPC 接口更加容易。

RPC_IF_ALLOW_CALLBACKS_WITH_NO_AUTH。注册该标志后,RPC 运行库将为所有调用都调出注册的安全回调,而不管调用安全设置。没有该标志时,RPC 在得到安全回调前拒绝所有未验证的调用。仅当注册了安全回调时,此标志才有效。

RPC_IF_SEC_NO_CACHE 为某个接口注册一个安全回调以限制对该接口的访问。典型的安全回调模拟客户端以确定客户端是否有足够的权限对接口进行调用。如果特定客户端标识通过安全回调一次,通常每次都通过相同的安全回调。通过记住何时单个客户端标识通过安全回调并跳过该客户端对同一接口后续调用的安全回调,RPC 运行时间给此模式带来了好处。此功能称为安全回调缓存,并且自从 Windows 2000 以来就存在了。对于 Windows XP SP2,请使用 RPC_IF_SEC_NO_CACHE 标志来为给定接口禁用安全回调缓存。如果安全检查可能会更改,也许是拒绝某个以前允许的客户端身份,则此配置很有用。

RPC_IF_LOCAL_ONLY。当使用此标志注册某个接口时,RPC 将拒绝远程 RPC 客户端发出的调用。此外,通过所有 ncadg_* 协议序列和所有 ncacn_* 协议序列(使用 ncacn_np 的命名管道除外)的本地调用也都被拒绝。如果调用是在 ncacn_np 上发出的,仅当该调用来自“服务器服务”(Server Service) 时,RPC 才允许该调用。Ncalrpc 调用始终被允许通过。

Windows XP SP2 中的默认安全配置可能导致某些兼容性问题。以下三个选项可用于解决这些问题。这些选项按优先顺序列出。

在联系服务器应用程序时要求 RPC 客户端使用 RPC 安全。这是缓解安全威胁的最佳方法。

通过在接口注册过程中设置 RPC_IF_ALLOW_CALLBACKS_WITH_NO_AUTH 标志来免除对接口的验证要求。这样将把 RPC 配置为仅允许对您的应用程序的接口进行匿名访问。

通过将 RestrictRemoteClients 注册表项设置为“0”来强制 RPC 公开与早期 Windows 版本相同的行为。这样 RPC 将接受对所有接口的匿名访问。应该尽可能避免此选项,因为它降低了计算机的总体安全性。

如需查看本指南中关于该技术的更多信息,请单击以下链接:

DCOM/RPC 简介

针对 DCOM/RPC 的应用程序兼容性测试

附件执行服务

附件执行服务 (AES) 是 Windows XP SP2 中的一个新功能,并引入了一些应用程序兼容性问题。AES 在不同应用程序之间为文件和附件下载对话框提供新的和一致的外观。这些新功能包括:

文件处理程序图标

对话框底部添加了一个新的信息区域,其中提供稍微不同的信息,具体取决于所下载的文件类型的风险高低

所有已下载的文件都要接受发行商信息检查。一旦文件下载完成,Authenticode 对话框将显示发行商信息。可以在“Internet 选项高级选项卡上或使用位于以下路径的 Active Directory 组策略来配置签名有效的文件的下载和执行:

“管理模板”\“Windows 组件”\“Internet Explorer”\“Internet 控制面板”\“高级页”

该 UI 具有比以前更严格的针对电子邮件附件下载的危险文件类型列表,并且可能导致附加警告提示。该文件类型列表不可编辑,但是可以通过单击工具菜单上的选项来为 Outlook Express 关闭该功能。通过清除不允许保存或打开可能有病毒的附件复选框,您可以阻止在安全选项卡上使用危险文件类型列表。

图 3.23 显示了 Outlook Express 中的危险文件类型列表的配置。

Figure 3.23 Configuration options for dangerous file types list in Outlook Express

3.23 Outlook Express 中的危险文件类型列表的配置选项
查看大图

AES 可能阻止用户已下载到本地文件系统的电子邮件附件执行。该文件被标记为其来源已知,即使它已在后来某个日期执行过。如果该文件被认为是危险的,则会被阻止。此功能需要用户计算机上的 NTFS 文件系统 (NTFS)。可以在文件属性的常规选项卡上为文件更改该行为。图 3.24 显示了如何取消阻止已下载的可执行附件。

Figure 3.24 Unblocking a downloaded executable attachment in Windows Explorer

3.24 Windows 资源管理器中取消阻止已下载的可执行附件
查看大图

如需查看本指南中关于该技术的更多信息,请单击以下链接:

附件执行服务简介

针对附件执行服务的应用程序兼容性测试

移除缓解修复程序

到目前为止,本章考虑了如何应用缓解修复程序来克服应用程序兼容性问题。此过程的目标是通过降低一个或多个方面的安全性来使得应用程序能够正常工作。

如果在仔细考虑之后,您决定软化默认安全性并应用缓解修复程序,则还应该实现一个过程和期限,以用于移除修复程序和重新配置、重新开发、升级或停用有问题的应用程序。

图 3.25 显示了用于部署 Windows XP SP2 以克服应用程序不兼容性的选项。

Figure 3.25 Windows XP SP2 deployment paths after application compatibility issues

3.25 确定应用程序兼容性问题以后的 Windows XP SP2 部署路线
查看大图

该过程如下:

1.

在兼容性测试之后,记录任何不兼容性。

2.

识别使应用程序与计算机配置兼容的必要条件。

3.

做出必要的更改以实现应用程序兼容性。

4.

部署 Windows XP SP2。

如果第 2 步确定缓解是必要的:

1.

更改计算机配置以克服兼容性问题。

2.

部署 Windows XP SP2。

3.

实现一个过程来移除缓解修复程序。此过程应该包括:

1.

识别需要的重新开发工作。

2.

创建缓解移除过程。

3.

创建重新配置过程。

4.

设定整个过程的完成期限。

4.

做出必要的更改以实现应用程序兼容性。

5.

移除已应用的缓解修复程序。

6.

重新保护操作系统。

结束语

本章演示了重新配置操作系统安全性以允许应用程序在应用 Windows XP SP2 之后成功运行的过程。不推荐使用此过程,但是它在短期内可能是必要的。

推荐的方法是维持安全配置,并对应用程序做出更改以使其能够在 Windows XP SP2 上运行。如果升级或修改应用程序不可行,则应该对安全配置进行谨慎的更改,但是只应更改到确保应用程序正确操作的程度。还应该创建既定的移除过程,一旦已升级或修改应用程序,则使用该过程将操作系统恢复到可能的最高安全性。

下一章将讨论 Windows XP SP2 的部署方法。

如果你的HTML文件中有这句话

<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns="http://www.w3.org/TR/REC-html40">
那直接加入下面这句话就行了

<!-- saved from url=(0022)http://blog.csdn.net/electroniXtar/ -->
没有的话.用这两句记住要放在<head>的前面

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!-- saved from url=(0022)http://blog.csdn.net/electroniXtar/ -->

5

评论Comments