ISA Server 中的 HTTP 筛选.docx
- 文档编号:4958016
- 上传时间:2022-12-12
- 格式:DOCX
- 页数:32
- 大小:417.86KB
ISA Server 中的 HTTP 筛选.docx
《ISA Server 中的 HTTP 筛选.docx》由会员分享,可在线阅读,更多相关《ISA Server 中的 HTTP 筛选.docx(32页珍藏版)》请在冰豆网上搜索。
ISAServer中的HTTP筛选
注:
复制文中的代码导入会失败,顾手动添加后,再导出一份来httpfilter.xml
http配置,
在ISAServer光盘上浏览文件夹\sdk\samples\admin目录,如果导入失败后,再右击http配置出错,恢复方法是:
把\sdk\samples\admin目录下的
HttpFilterSampleConfig.xml再导进去,就可以了。
简介
MicrosoftInternetSecurityandAcceleration(ISA)Server2004提供对超文本传输协议(HTTP)通信的细化控制。
该控制以HTTP筛选器的形式给出,即检查用于设置HTTP策略的HTTP命令和数据的应用程序层筛选器。
HTTP筛选器筛选所有通过ISAServer计算机的HTTP流量,只允许符合条件的请求通过。
这有助于确保服务器只响应有效请求,因而显著提高了Web服务器的安全性。
还可以使用户能够控制ISAServer客户端Internet访问的具体细节。
HTTP筛选可用于两个常规方案:
•
源网络上的客户端通过ISAServer计算机访问在另一个网络上的HTTP对象(可以使用HTTP协议传送的HTML页面和图形或其他数据)。
该访问由ISAServer访问规则控制,使用HTTP筛选器可将HTTP策略应用于这些规则。
•
Internet上的客户端访问通过ISAServer计算机发布的Web服务器上的HTTP对象。
该访问由ISAServerWeb发布的规则控制,使用HTTP筛选器可将HTTP策略应用于这些规则。
ISAServer中的HTTP筛选是针对规则的,因此可以根据防火墙策略的具体要求应用不同级别和类型的筛选。
例如,可以使用HTTP筛选以禁止一组用户使用特定的点对点文件共享服务,而允许另一组用户使用。
本文档使用常用术语描述了HTTP筛选以及配置HTTP筛选器的方法。
它给出了Web发布和OutlookWebAccess发布的HTTP策略示例。
还描述了使用HttpFilterConfig.vbs脚本以导入示例策略的方法。
注意
比较HTTP筛选器和URLScan
ISAServer2000FeaturePack1包括URLScan工具,可以提供与HTTP筛选器相似的功能。
URLScan和HTTP筛选器之间的主要区别在于URLScan应用于全部HTTP流量,而HTTP筛选器可以基于每条规则进行配置。
这使您可以对HTTP策略进行更强大的控制。
另一个区别是HTTP筛选器不包括URLScan工具中的该功能:
•
EnableLogging
•
PerProcessLogging
•
AllowLateScanning
•
PerDayLogging
•
RejectResponseUrL
•
UseFastPathReject
•
DenyUrlSequences
在ISAServer日志中,日志被合并为一个独立的字段(FilterAction)。
RejectResponseURL是一种URLScan为了将请求客户端重定向到不同页面而使用的机制。
ISAServer包括错误响应页面。
UseFastPathReject是撤销请求时用的选项,而不是使用RejectResponseURL
通过HTTP筛选器属性的“签名”选项卡来替换DenyUrlSequences。
访问规则
访问规则确定源网络中的客户端访问目标网络中资源的方式。
可以配置访问规则应用于所有IP流量、应用于协议定义的特定集或应用于除选中协议之外的所有IP流量。
ISAServer包括预配置的、已知协议定义的列表,包括广泛使用的Internet协议。
还可以添加或修改附加协议。
当客户端请求对象时,ISAServer会检查访问规则。
只有当访问规则专门允许客户端使用特定协议进行通信并且还允许访问请求的对象时,才会处理请求。
Internet访问控制主要取决于访问规则的设计和顺序。
创建访问规则后,通过双击“防火墙策略”详细信息窗格中的规则可以查看和编辑其所有属性。
其中一个属性是HTTP策略,通过该策略可以为与具体允许访问规则相匹配的请求配置HTTP设置。
还可以通过右键单击某个规则并选择“配置HTTP”来访问HTTP策略设置。
ISA服务器是应用程序层防火墙,可以将应用程序筛选器应用于HTTP流量。
因为ISAServer可检查HTTP请求,所以可根据HTTP应用程序筛选器的配置情况阻止通过HTTP隧道的应用程序。
HTTP应用程序筛选器提供对防火墙策略所允许HTTP请求的细化控制。
注意:
HTTP筛选可用于允许规则,对允许施加限制。
不能用于拒绝规则。
Web发布规则
ISAServer使用Web发布规则在不危及网络安全前提下减轻对发布Web相关内容的关注。
Web发布规则决定ISAServer将如何截获Web服务器上HTTP对象的传入请求,以及ISAServer如何代表Web服务器作出响应。
请求转发给了Web服务器,该服务器位于ISAServer计算机之后。
如果可能,由ISAServer缓存为请求服务。
Web发布规则实质上将传入请求映射到相应的Web服务器。
Web发布规则还允许配置高级筛选功能,因此可在公布基于Web的信息的同时保护Web免遭恶意访问。
HTTP策略设置
HTTP策略包括下列设置:
•
请求头的最大长度
•
请求负载的长度
•
URL保护
•
阻止可执行文件
•
已拒绝的方法
•
为特定文件扩展名指定的操作
•
拒绝特定的头
•
修改服务器和Via头
•
阻止高位字符
选择“阻止高位字符”时,将阻止包含双字节字符集(DBCS)或Latin1字符的URL。
这些典型字符来自于要求超过8位以代表该语言字符的语言,因此需要使用16位。
这会对方案(如OutlookWebAccess发布、SharePointPortalServer发布和GET请求从DBCS传递含有字符参数的任何方案)产生影响。
•
拒绝特定签名
阻止特定签名时,将阻止通过HTTP传输流量的应用程序,还可以使用请求头、响应头和正文(例如,WindowsMessenger)中的特定模式标注这些应用程序。
HTTP签名阻止不会禁止使用不同类型的内容编码或范围请求的应用程序。
“通用应用程序签名”中提供了签名的示例,请参见(
关于范围请求
范围请求是为响应指定请求数据范围的请求。
它们提供对如下方面的控制,如继续执行已中断下载、用户页面通过时按顺序下载资料,或根据需要下载部分资料。
假设所有的HTTP请求和响应都是用“统一转换格式8”(UTF-8,一种Unicode字符编码的转换)编码的。
如果使用不同的编码方案,则无法执行签名阻止。
关于HTTP请求和响应头
HTTP请求和响应使用头发送关于HTTP消息的信息。
头是一系列行,每行包含跟有冒号和空格的名称,然后是值。
HTTP策略可用于客户端Internet访问和Web发布:
•
在客户端Internet访问中,您可能希望限制客户端对Internet上可用特定服务的访问。
例如,您可能希望阻止点对点文件共享服务。
•
在Web发布中,您希望使用HTTP筛选阻止可能含有恶意代码的请求。
攻击通常会带有特定的签名和扩展名。
例如,“红色代码(CodeRed)”病毒使用扩展名.ida。
如果阻止了那些签名和扩展名,攻击将不会到达Web服务器。
返回页首
解决方案
可以配置HTTP策略以说明各种客户端访问和Web发布方案。
本节提供关于如何配置HTTP策略的演练,然后给出几个方案的策略示例。
具体说来,本节包括下列主题:
•
HTTP策略——演练
•
阻止示例
•
Web和OutlookWebAccess发布规则的典型HTTP策略
•
HTTP策略和SSL连接
HTTP策略——演练
该演练指导用户完成配置HTTP策略所必需的步骤。
HTTP策略演练过程1:
访问HTTP策略属性
1.
HTTP策略的应用基于每个规则。
通过每个希望对其应用HTTP策略的规则来访问策略。
重要
在“为规则配置HTTP策略”对话框的“常规”选项卡中,“头的最大长度”设置可在全局范围内应用于所有规则。
该设置在请求被阻止前配置请求头中所允许的字节数。
“常规”选项卡和其他选项卡上的其余设置以每个规则为基础进行应用。
若要访问对话框,为访问规则或Web发布规则配置HTTP策略,请按照该过程操作。
2.
打开“MicrosoftISAServer管理”,展开“ISAServer”计算机节点,然后单击“防火墙策略”。
3.
在详细信息窗格中,右键单击规则,然后选择“配置HTTP”。
HTTP策略演练过程2:
配置HTTP策略
1.
通过属性对话框上的五个选项卡可以访问HTTP策略属性。
该主题中提供有关配置策略的常规信息。
如果不打算开发Web发布和OutlookWebAccess发布的特定HTTP策略,建议至少应该按照“Web和OutlookWebAccess发布规则的典型HTTP策略”所描述的内容配置HTTP策略。
2.
对HTTP策略作出更改后,必须单击ISAServer详细信息窗格中的“应用”以应用更改。
注意:
ISAServer预防措施网站()将定期提供可用于阻止特定攻击的签名。
“常规”选项卡
该图显示“HTTP策略属性”的“常规”选项卡上的默认设置。
若要配置HTTP策略,请按照该过程操作。
1.
依次在“请求头”、“头的最大长度(字节)”上,指定请求被阻止前其头(URL和头)中可包含的最大字节数。
此设置会应用到所有规则中,因此如果在一个规则中更改了设置,则在所有规则中进行了更改。
提示:
减小允许的头大小可降低遭受需要复杂和长头的攻击(比如:
缓冲区溢出攻击和某些拒绝服务攻击)的风险。
如果最大头的长度设的过低,则可能影响使用长头的合法应用程序。
建议从10,000字节的限制开始,只有当发现所需的应用程序被阻止时再增加长度。
2.
在“请求负载”中,如果想阻止超过指定最大负载长度的请求时,清除“允许任意负载长度(字节)”复选框。
然后,在“最大负载长度(字节)”中,指定最大的字节数。
提示:
通过限制请求负载,可限制用户在Web发布方案中POST到网站中的数据量。
若要决定设置的限制,请基于网站的使用情况估计组成合法POST的文件大小的最大值,然后将其用作允许的负载长度。
这样任何大于所定义长度的POST文件都被认为是潜在的攻击。
3.
在“URL保护”的“最大URL长度(字节)”中,键入所允许的最大URL长度。
所带有的URL超过该值的请求会被阻止。
4.
在“最大查询长度(字节)”中,键入在一个请求中所允许的最大查询长度。
所带有的查询超过该值的请求会被阻止。
注意:
查询是URL的一部分,跟随在问号(?
)之后。
如果得知了一个基于长查询字符串的攻击,用户可能想要限制查询的长度。
在默认情况下,最大查询长度设置为10240。
长查询和URL是一个已知的Internet蠕虫病毒的攻击对象。
这些蠕虫病毒发送一个长GET请求并使用URL以嵌入它们的负载。
5.
如果用户想阻止那些带有URL(在规范化后包含转义字符)的请求,请选择“验证规范化”。
注意:
Web服务器收到已经进行了URL编码的请求。
这意味着某些字符可能已经被一个跟着特定数字的百分号(%)代替。
例如,%20对应于一个空格,所以对http:
//myserver/My%20Dir/My%20File.htm的请求和对http:
//myserver/MyDir/MyFile.htm的请求相同。
规范化就是将已经过URL编码的请求进行解码处理。
因为百分号%可以进行URL编码处理,所以攻击者可以向服务器提交一个经过仔细处理的请求(基本上是双重编码的)。
如果发生这种情况,Internet信息服务(IIS)可能会接收一个在其他情况下被认为是因无效而被拒绝的请求。
当选择“验证规范化”时,HTTP筛选器将URL规范化两次。
如果第一次规范化过后的URL与第二次规范化过后的URL不同,筛选器就会拒绝该请求。
这样就阻止了依赖于经双重编码请求的攻击。
请注意在建议使用“验证规范化”功能时,该函数也可能阻止包含百分号%的合法请求。
6.
选择“阻止高位字符”,指定阻止带有高位字符的URL。
这样虽然可以帮助阻止一些对运行Internet信息服务(IIS)的Web服务器的攻击,但是可能也会阻止那些包含来自于某些要求高位字符语言的字符的请求和响应。
7.
在可执行文件中,选择“阻止包含Windows可执行文件内容的响应”以指定包含Windows可执行文件内容的响应(以“MZ”开头的响应)会被阻止。
“方法”选项卡
该图显示HTTP策略属性的“方法”选项卡,以及单击“添加”以添加新方法时出现的“方法”对话框。
HTTP方法(也称为HTTP动作)就是在已发送的请求消息中的一个指令,该请求消息通知HTTP服务器在指定资源上执行操作。
例如,GET指定从服务器检索一个资源。
在该选项卡上,可以指定规则是否根据请求方法(比如:
POST、GET或HEAD)阻止HTTP请求。
若要配置HTTP方法,请按照该步骤操作。
1.
在“为HTTP方法指定所要采取的操作”中,从下列操作中选择:
•
允许所有方法。
不应用按方法的阻止。
•
允许选中的方法。
阻止除了那些带有指定方法的请求外的所有请求。
建议只允许选中的方法,因为这是最安全的配置。
有关该方法的示例,请参见“Web和OutlookWebAccess发布规则的典型HTTP策略”。
•
阻止指定方法(允许所有其他方法)。
允许所有请求,除了那些带有列表中指定方法的请求。
2.
单击“添加”为列表添加方法,单击“编辑”以编辑选中的方法,或者单击“删除”以删除选中的方法。
单击“添加”时,就会出现“方法”对话框,如下所示。
请提供方法(区分大小写)及其描述,然后单击“确定”。
按方法阻止的示例就是阻止POST,这样内部客户端就无法将数据传递到外部网页。
在想要防止敏感信息被传递到网站的安全网络方案中,这种方法十分有效。
在Web发布中这种方法也行之有效,它会阻止黑客将恶意内容传递到网站。
有关按方法阻止的其他示例,请参见“Web和OutlookWebAccess发布规则的典型HTTP策略”。
“扩展名”选项卡
该图显示HTTP策略属性的“扩展名”选项卡,以及单击“添加”以添加方法时出现的“扩展名”对话框。
在该选项卡上,可以指定规则是否按照请求的文件扩展名(比如:
.exe或.asp)阻止HTTP请求。
若要指定文件扩展名,请按照该步骤操作。
1.
在“为文件扩展名指定所采取的操作”中,在下列操作中选择一个:
•
允许所有扩展名。
不会应用按请求的文件扩展名阻止。
•
允许选中的扩展名。
除了带有指定请求的文件扩展名外的所有请求都会被阻止。
建议只允许选中的扩展名,因为这是最安全的配置。
例如,如果要发布一个网站,网站设计者或Web服务器的管理员能够定义站点功能所需要的扩展名列表。
•
阻止指定扩展名(允许其他所有扩展名)。
会允许所有的请求,除了那些带有已经在列表中指定了的请求文件扩展名的请求。
2.
单击“添加”向列表添加扩展名,单击“编辑”以编辑选中的扩展名,或者单击“删除”以删除选中的扩展名。
单击“添加”时,就会出现“扩展名”对话框,如下所示。
请提供扩展名(区分大小写)及其描述,然后单击“确定”。
扩展名阻止的典型使用就是阻止可执行文件(.exe)。
有关其他扩展名阻止的示例,请参见“Web和OutlookWebAccess发布规则的典型HTTP策略”。
“头”选项卡
该图显示HTTP策略属性的“头”选项卡。
在该选项卡上可以指定是否按照特定头的出现来阻止请求或响应。
若要指定头,请按照该步骤操作。
1.
在“头”中,列出所有会被阻止的头。
2.
单击“添加”为列表添加头,再单击“编辑”以编辑选中的头,或者单击“删除”以删除选中的头。
单击“添加”时,就会打开“头”对话框。
请指定是否选取响应或请求的头,提供头,然后单击“确定”。
3.
在“服务器头”中,指定如何在响应文件中返回服务器头。
服务器头是包含信息(如服务器应用程序的名称和软件版本信息,例如,HTTP:
Server=Microsoft-IIS/6.0)的响应头。
可能的设置如下:
•
发送原始头。
原始头会在响应中返回。
•
从响应中剥离头。
在响应中无头返回。
•
修改。
已修改的头会在响应中返回。
如果选择该选项,在“更改为”中,键入出现在响应中的值。
建议修改服务器头。
出现在响应中的值可以是任何值,因为客户端很少使用服务器头。
4.
在“Via头”中,指定如何在请求中转发Via头或者如何在响应中返回该头。
Via头为位于请求路径上的代理服务器提供了一种方法以确保这些服务器也包括在响应的路径中。
在请求路径上的每个服务器都可以添加各自的Via头。
在响应路径上的每个发件人都将各自的Via头删除并将响应转发到堆栈上下一个Via头中指定的服务器。
例如,可以使用该功能避免在响应中泄漏ISAServer的计算机名称。
可能的设置如下:
•
发送默认头。
使用默认头。
•
修改请求和响应中的头。
-将使用已修改的头替换该Via头。
如果选择该选项,在“更改为”框中,键入将会出现的头而不是Via头。
“签名”选项卡
下图显示HTTP策略属性的“签名”选项卡。
在该选项卡上,可以指定是否按照在头或体中出现的特定签名阻止请求和响应。
签名可以是头或体中的任何字符串。
建议选择那些足够具体的字符串以仅仅阻止那些想要阻止的请求和响应。
例如,如果将字母“a”添加为签名,就会阻止所有包含“a”的请求和响应,这样会包括大量的请求和响应。
与此类似,将“Mozilla”包括进签名中就会阻止大部分Web浏览器。
更典型的示例签名是“User-Agent:
adatum-software-abc”。
“通用应用程序签名”提供了签名示例,可以访问(
签名列表列出了会被阻止的签名。
若要配置签名,请按照该步骤执行。
•
单击“添加”为列表添加签名,单击“编辑”以编辑选中的签名,或者单击“删除”以删除选中的签名。
向列表添加签名时,可以使用签名名称旁边的复选框来启用或禁用特定签名。
如果选择了列表下面的“仅显示已启用的搜索字符串”复选框,在列表中仅显示已启用的签名。
在“HTTP策略演练过程3”中提供了有关如何确定签名的信息:
确定签名。
HTTP策略演练过程3:
确定签名
若要根据签名阻止特定流量,必须知道该流量的签名,这样可以将其添加到HTTP策略。
ISAServer预防措施网站()会周期性地提供可以用于阻止特定攻击的签名。
还可以通过监视网络流量确定签名。
可以使用任何网络流量监视软件以确定签名。
该示例使用Microsoft网络监视器。
重要
因为一些网络流量监视工具可能引起安全风险,建议仅在实验室环境中使用这些工具,而且永远不要在生产环境中使用。
按照这些步骤确定签名。
该步骤主要发生在ISAServer计算机上,而且还需要通过ISAServer计算机访问Internet的客户端。
安装网络监视器工具
若要安装网络监视器工具,请按照该步骤操作。
1.
在ISAServer计算机上,单击“开始”,指向“控制面板”,并选择“添加或删除程序”。
2.
单击“添加/删除Windows组件”以启动“Windows组件向导”。
3.
双击“管理和监视工具”。
选择“网络监视工具”,单击“确定”,然后单击“下一步”。
4.
完成“Windows组件向导”时,单击“结束”。
搜索签名
若要搜索签名,请按照该步骤操作。
1.
在ISAServer计算机上,打开“网络监视器”。
单击“开始”,指向“管理工具”,并选择“网络监视器”。
2.
“网络监视器”消息会提示客户选择网络。
单击“确定”以关闭消息。
3.
在“选择网络”对话框中,扩展“本地计算机”。
选择“内部”以跟踪客户端使用的签名。
这样就允许客户使用这些签名阻止客户端对特定Internet服务的访问。
4.
“网络监视器”会捕获来自于内部网络的所有数据包。
捕获数据包后,可以对结果进行筛选,或者在启动捕获前创建筛选器,这就是在此使用的方法。
从菜单单击“捕获”,并选择“筛选器”(或按F8)。
在“捕获筛选器”对话框中,选择项目“INCLUDE*ANY<->*ANY”,然后单击“编辑”。
5.
单击“编辑地址”,然后单击“添加”下面的“地址”。
在“地址表达式”对话框中,单击“编辑地址”。
6.
在“地址数据库”对话框中,单击“添加”打开“地址信息”对话框。
7.
在“地址信息”对话框中,请提供客户端计算机的名称。
请在“地址”中提供客户端计算机的IP地址,从“键入”下拉列表选择“IP”,然后单击“确定”。
8.
在“地址数据库”对话框中,单击“关闭”。
9.
在“地址表达式”中,验证已选中“包含”选项。
在“机器2”列中,选择刚刚创建的客户端。
让“方向”保持默认值(双向),在“机器1”列中将目标选为ISAServer计算机,然后单击“确定”。
10.
单击“确定”以关闭“捕获筛选器”对话框。
11.
如果在那两台计算机之间有大量的流量,可能需要增加捕获缓冲区。
从菜单单击“捕获”并选择“缓冲区设置”。
在“捕获缓冲区设置”对话框中,增加“缓冲区大小”。
单击“确定”。
12.
在客户端上,关闭所有应用程序(除了用户感兴趣的捕获签名以用于HTTP策略的应用程序)。
13.
从“网络监视器”菜单,单击“捕获”并选择“开始”(或按F10)。
14.
在客户端计算机上,启动应用程序。
例如,登录“MSN即时消息”或“AOL即时消息”。
15.
从“网络监视器”菜单单击“捕获”并选择“停止并查看”(或按SHIFT+F11)。
检查捕获到的数据包。
通常,第四个数
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ISA Server 中的 HTTP 筛选