URLScan工具配置方法第1/2页

如何配置 URLScan 工具
察看本文应用于的产品
文章编号 : 326444 
最后修改 : 2007年3月14日 
修订 : 5.3 
我们强烈建议所有运行 Microsoft Windows Server 2003 的用户将 Microsoft Internet 信息服务 (IIS) 升级到 6.0 版,因为 IIS 6.0 显著增强了 Web 基础结构的安全性。有关与 IIS 安全性相关的主题的更多信息,请访问下面的 Microsoft 网站:
http://www.microsoft.com/technet/security/prodtech/IIS.mspx (http://www.microsoft.com/technet/security/prodtech/IIS.mspx)
本页
概要
本文分步说明如何配置 URLScan 工具以防止 Web 服务器受到攻击和利用。

回到顶端

安装 URLScan
要安装 URLScan,请访问下面的 Microsoft Developer Network (MSDN) 网站:
http://msdn2.microsoft.com/en-us/library/aa302368.aspx (http://msdn2.microsoft.com/en-us/library/aa302368.aspx)
有关其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章: 
307608 (http://support.microsoft.com/kb/307608/) 对 IIS 使用 URLScan 
回到顶端

修改 URLScan.ini 文件
URLScan 的所有配置都是通过 URLScan.ini 文件执行的,此文件位于 %WINDIR%\System32\Inetsrv\URLscan 文件夹中。要配置 URLScan,请在文本编辑器(如记事本)中打开此文件,进行相应的更改,然后保存此文件。

注意:要使更改生效,必须重新启动 Internet 信息服务 (IIS)。一种快速的实现方法是在命令提示符处运行 IISRESET。

URLScan.ini 文件包含以下几节: ? [Options]:此节描述常规 URLScan 选项。 
? [AllowVerbs] 和 [DenyVerbs]:此节定义 URLScan 允许的谓词(又称作 HTTP 方法)。 
? [DenyHeaders]:此节列出 HTTP 请求中不允许的 HTTP 标头。如果 HTTP 请求中包含此节中列出的 HTTP 标头之一,URLScan 将拒绝该请求。 
? [AllowExtensions] 和 [DenyExtensions]:此节定义 URLScan 允许的文件扩展名。 
? [DenyURLSequences]:此节列出 HTTP 请求中不允许的字符串。URLScan 拒绝那些包含此节中出现的字符串的 HTTP 请求。 
本文将更详细地介绍每一节。

[Options] 节
在 [Options] 节中,可以配置许多 URLScan 选项。此节中的每一行都具有以下格式: 
OptionName=OptionValue
可用选项及其默认值如下所示: ? UseAllowVerbs=1

默认情况下,此选项设置为 1。如果将此选项设置为 1,则 URLScan 仅允许那些使用 [AllowVerbs] 节中列出的谓词的 HTTP 请求。URLScan 禁止任何不使用这些谓词的请求。如果将此选项设置为 0,则 URLScan 忽略 [AllowVerbs] 节,相反仅禁止那些使用 [DenyVerbs] 节中列出的谓词的请求。 
? UseAllowExtensions=0

默认情况下,此选项设置为 0。如果将此选项设置为 0,则 URLScan 禁止对 [DenyExtensions] 节中列出的文件扩展名的请求,但允许对任何其他文件扩展名的请求。如果将此选项设置为 1,则 URLScan 仅允许对带 [AllowExtensions] 节中列出的扩展名的文件的请求,而禁止对任何其他文件的请求。 
? NormalizeUrlBeforeScan=1

IIS 收到用 URL 编码的请求。这表示某些字符可能被替换为百分号 (%) 后跟特定的数字。例如,%20 对应于一个空格,因此,对 http://myserver/My%20Dir/My%20File.htm 的请求与对 http://myserver/My Dir/My File.htm 的请求是相同的。标准化就是对 URL 编码请求进行解码的过程。默认情况下,此选项设置为 1。如果将 NormalizeUrlBeforeScan 选项设置为 1,则 URLScan 分析已解码的请求。如果将此选项设置为 0,则 URLScan 分析未解码的请求。将此选项设置为 0 会影响 URLScan 禁止某种攻击的能力。 
? VerifyNormalization=1

由于百分号 (%) 本身可以是 URL 编码的,所以攻击者可以向服务器提交一个精心制作的、基本上是双重编码的请求。如果发生这种情况,IIS 可能会接受本应视作无效而拒绝的请求。默认情况下,此选项设置为 1。如果将 VerifyNormalization 选项设置为 1,则 URLScan 将对 URL 执行两次标准化。如果第一次标准化后的 URL 与第二次标准化后的 URL 不同,URLScan 将拒绝该请求。这样就可以防止那些依赖双重编码请求的攻击。 
? AllowHighBitCharacters=0

默认情况下,此选项设置为 0。如果将此选项设置为 0,则 URLScan 拒绝任何包含非 ASCII 字符的请求。这样可以防止某些类型的攻击,但同时可能也会禁止对某些合法文件的请求,如带有非英文名的文件。 
? AllowDotInPath=0

默认情况下,此选项设置为 0。如果将此选项设置为 0,则 URLScan 拒绝所有包含多个句点 (.) 的请求。这样可以防止通过将安全的文件扩展名放入 URL 的路径信息或查询字符串部分,以达到伪装请求中的危险文件扩展名的企图。例如,如果将此选项设置为 1,则 URLScan 可能允许对 http://servername/BadFile.exe/SafeFile.htm 的请求,因为它认为这是对 HTML 页的请求,但实际上这是一个对可执行 (.exe) 文件的请求,而该文件的名称在 PATH_INFO 区域中显示为 HTML 页的名称。如果将此选项设置为 0,URLScan 可能还会拒绝对包含句点的目录的请求。 
? RemoveServerHeader=0

默认情况下,Web 服务器返回一个标头,其中指出了 Web 服务器在所有响应中运行的 Web 服务器软件。这会增加服务器遭受攻击的可能性,因为攻击者可以确定服务器正在运行 IIS,于是便攻击已知的 IIS 问题,而不是试图使用为其他 Web 服务器设计的攻击手段来攻击 IIS 服务器。默认情况下,此选项设置为 0。如果将 RemoveServerHeader 选项设置为 1,可以防止您的服务器发送将其标识为 IIS 服务器的标头。如果将 RemoveServerHeader 设置为 0,则仍发送此标头。 
? AlternateServerName=(默认情况下不指定)

如果将 RemoveServerHeader 设置为 0,可以在 AlternateServerName 选项中指定一个字符串以指定将在服务器标头中传回的内容。如果将 RemoveServerHeader 设置为 1,则此选项将被忽略。 
? EnableLogging=1

默认情况下,URLScan 在 %WINDIR%\System32\Inetsrv\URLScan 中保留所有被禁止的请求的完整日志。如果不希望保留此日志,可将 EnableLogging 设置为 0。 
? PerProcessLogging=0

默认情况下,此选项设置为 0。如果将此选项设置为 1,URLScan 将为承载 URLScan.dll 的每个进程创建一个单独的日志。如果将此选项设置为 0,所有进程将记录到同一个文件中。 
? PerDayLogging=1

默认情况下,此选项设置为 1。如果将该值设置为 1,则 URLScan 每天创建一个新的日志文件。每个日志文件的名称都是 Urlscan.MMDDYY.log,其中 MMDDYY 是日志文件的日期。如果将该值设置为 0,则所有日志记录都保存在同一个文件中,与日期无关。 
? AllowLateScanning=0

当前1/2页 12下一页阅读全文

(0)

相关推荐

  • URLScan工具配置方法第1/2页

    如何配置 URLScan 工具 察看本文应用于的产品 文章编号 : 326444  最后修改 : 2007年3月14日  修订 : 5.3  我们强烈建议所有运行 Microsoft Windows Server 2003 的用户将 Microsoft Internet 信息服务 (IIS) 升级到 6.0 版,因为 IIS 6.0 显著增强了 Web 基础结构的安全性.有关与 IIS 安全性相关的主题的更多信息,请访问下面的 Microsoft 网站: http://www.microsoft

  • CMD下的网络安全配置方法第1/3页

    自带的关于网络的命令行工具很多,比如大家熟悉的ping,tracert,ipconfig,telnet,ftp,tftp,netstat,还有不太熟悉的nbtstat,pathping,nslookup,finger,route,netsh...... 这些命令又可分成三类:网络检测(如ping).网络连接(如telnet)和网络配置(如netsh).前面两种相对简单,本文只介绍两个网络配置工具. netsh 在远程shell中使用netsh首先要解决一个交互方式的问题.前面说过,很多shell

  • windows中PHP5.2.14以及apache2.2.16安装配置方法第1/2页

    首先下载好需要安装的配置文件1.apache-2.2.162.php-5.2.14-Win32 一.apache配置 apache的安装不说了,安装过程中选择自己想安装的位置,一路next,就可以了.默认80端口,安装结束后,浏览器输入http://localhost/进行验证,成功的话会输出It works! apache配置:配置文件位于安装目录下的%APACHE_HOME%\conf\httpd.conf,修改根目录DocumentRoot(一共两处).端口也在这里修改. 二.php配置

  • ISAPI_rewrite中文手册附多站点配置方法第1/4页

    配置: 在NT 2000 XP和2003平台上,在系统帐户下应该INETINFO程序应该与IIS5以共存模式过滤器运行.所以系统帐户应该给予对所有的ISAPI-REWIRITE DLLS 和所有的HTTPD.INI文件至少可读权限,我们也推荐对给予系统帐户对于所有包括HTTPD.INI文件的文件夹的可写权限,这将允许产生HTTP.PARSE.ERRORS文件,这些文件包含配置文件语法错误.对于PROXY模块也需要额外的权限,因为它将运行于连接池或HIGH-ISPLATED应用模式,IIS帐户共享

  • win2003下安装apache2.2.3+php5.2+mysql+Zend的配置方法第1/2页

    写一个现在来说最新的最详细的安装说明,因为我是重装系统后再配置的,有部分只需要修改配置文件就可以了 一.使用软件: apache_2.2.3-win32-x86-no_ssl.msi php-5.2.0-Win32.zip mysql-4.1.18-win32.zip或mysql-5.0.18-win32.zip phpMyAdmin-2.9.1.1 配置环境:Windows 2003 sp1 二.具体步骤 注意事项:安装过程,任何目录和文件名都不要使用空格, 不要使用D:\Program Fi

  • windows下jsp+mysql网站环境配置方法第1/2页

    数据库采用mysql(配置过程如有问题可以重启tomcat试一下) 一.下载软件 .J2SE http://java.sun.com/j2se/.4.2/download.html 2.Tomcat服务器 http://tomcat.apache.org/download-4.cgi 3.mysql服务器 http://dev.mysql.com/downloads/mysql/5.0.html 安装时字符集选latin(应与数据库采用字符集相同) 安装好数据库后用以下命令看数据库采用什么字符集

  • MYSQL5 masterslave数据同步配置方法第1/3页

    测试环境.基本上数据是瞬间同步,希望对大家有帮助 RedHat ES 3 update 3 MYSQL 5.0.15 MYSQL数据同步备份 A服务器: 192.168.1.2 主服务器master B服务器: 192.168.1.3 副服务器slave A服务器设置 #mysql –u root –p mysql>GRANT FILE ON *.* TO backup@192.168.1.3 IDENTIFIED BY '1234'; mysql>exit 上面是Master开放一个账号ba

  • YUM解决RPM包安装依赖关系及yum工具介绍本地源配置方法详解

    1.背景概述 在实际生产环境下,对于在linux系统上安装rpm包,主要面临两个实际的问题 1)安装rpm包过程中,不断涌现的依赖关系问题,导致需要按照提示或者查询资料,手工安装更多的包 2)由于内外网的隔离,无法连接外网的yum源 鉴于上述因此,本文将详细介绍,yum工具以及配置本地yum源的方法 2.yum工具简介 •yum工具作为rpm包的软件管理器,可以进行rpm包的安装.升级以及删除等日常管理工作,而且对于rpm包之间的依赖关系可以自动分析,大大简化了rpm包的维护成本. •yum工具

  • Windows下wamp php单元测试工具PHPUnit安装及生成日志文件配置方法

    本文实例讲述了Windows下wamp php单元测试工具PHPUnit安装及生成日志文件配置方法.分享给大家供大家参考,具体如下: phpunit下载网站 http://www.phpunit.cn/ 一.安装PHPUnit 1.选择版本 我用的是php版本是5.6.25 所以我选择的是PHPUnit 5.7 2.安装过程 ① 为 PHP 的二进制可执行文件建立一个目录,例如 C:\bin ② 将 ;C:\bin 附加到 PATH 环境变量中  [将 php的目录 ;E:\wamp64\bin

  • Docker.v19安装和配置Docker Compose编排工具的方法

    一.Compose简介 Compose是用于定义和运行多容器Docker应用程序的工具.通过Compose,可以使用YAML文件来配置应用程序的服务.然后,使用一个命令,就可以从配置中创建并启动所有服务. Docker-Compose是一个容器编排工具.通过一个.yml或.yaml文件,将所有的容器的部署方法.文件映射.容器端口映射等情况写在一个配置文件里,执行docker-compose up命令就像执行脚本一样,一个一个的安装并部署容器. YAML文件基本语法: 大小写敏感: 使用缩进表示层

随机推荐