如何在IIS的非托管层对访问进行限制?
在之前的文章中, 我们介绍过如何在global.asax中执行跳转, 其中所举的例子是拒绝某种类型的请求, 并重定向到另外的页面上去.
这里, 向大家介绍一个在更低层次的可以执行相同功能, 还有更多其他功能的一个工具, 叫做Microsoft Urlscan Filter, 由微软提供, 下载使用免费.
因为它是一个ISAPI Filter, 处于非托管的层次, 所以效率比global.asax中执行动作要高很多. 目前还不知道如何在其中执行跳转, 如果被block的文件类型得到的结果将是一个白白的404。
该工具是对付SQL注入攻击的好选择.
更多信息http://learn.iis.net/page.aspx/476/common-urlscan-scenarios/
=================
UrlScan是一个安全工具, 使用它可以限制Microsoft Internet Information Services (IIS)所接受的HTTP请求的类型. 通过block掉具体的HTTP请求, UrlScan工具可以帮助我们阻止具有潜在威胁的请求到达IIS服务器.
UrlScan是按照ISAPI Filter的方式实现的, 它会作为一个屏障, 分析IIS接受到的HTTP请求. 在恰当的配置下, UrlSCan可以高效地减轻来自Internet的攻击成功的概率.
管理员可以通过UrlScan来拒绝符合经过定制的以下标准的Http请求:
- HTTP请求的method或者verb
- 所请求的资源或文件的后缀(file name extension)
- 可疑的URL encoding
- 具有非ASCII字符的URL
- 具有某些字符组合的URL
- 具有某种Header的Request
当UrlScan拒绝一个请求的时候, 它会记录下拒绝的原因, 还有额外的信息(典型地, 请求的完整URL, 请求的IP地址). 当拒绝发生的时候, IIS会发送一个"404 Object not found”响应给客户端. 这个响应可以减小对攻击者意外透露关于服务器信息的可能.
下载链接:
Microsoft Urlscan Filter v3.1 (x64)
Microsoft Urlscan Filter v3.1 (x86)
使用方法:
Using UrlScan