工具

urlscan_v31_x64

urlscan_v31_x86

URLScan是一个IIS下的ISAPI 筛选器,它能够限制服务器将要处理的HTTP请求的类型。通过阻止特定的 HTTP 请求,URLScan 筛选器可以阻止可能有害的请求到达服务器并造成危害,urlScan 3.1支持IIS6、IIS7。

URLScan配置文件在 C:\Windows\System32\inetsrv\urlscan

下面是配置文件的说明

UseAllowVerbs=1
; 允许的请求的HTTP类型;
; 如果设置为 1,则[AllowVerbs]生效;
; 如果设置为 0,则[AllowVerbs]生效。

UseAllowExtensions=0
; 允许请求的后缀类型;
; 如果设置为 0,则[DenyExtensions]生效;
; 如果设置为 1,则[AllowExtensions]生效。

NormalizeUrlBeforeScan=1
; 扫描标准化URL之前。

VerifyNormalization=1
; 查证标准化URL。

AllowHighBitCharacters=1
; 如果设置为 1,将允许URL中存在所有字节;
; 如果设置为 0,含有非ASCII字符的URL将拒绝(如UTF8或者MBCS)。

AllowDotInPath=0
; 如果设置为0,则URLScan 拒绝所有包含多个句点 (.) 的请求。

RemoveServerHeader=0
;设置为1可隐藏服务器信息。

EnableLogging=1
; 开启日志记录

PerProcessLogging=0
; 如果设置为0,为每个进程创建日志文件。

AllowLateScanning=0
; 如果设置为 0,则 URLScan 作为高优先级筛选器运行。

PerDayLogging=1
; 如果设置为 1,则URLScan每天创建一个新的日志文件。

UseFastPathReject=0
; 如果设置为 1,则 URLScan 忽略 RejectResponseUrl 设置并立即向浏览器返回 404 错误信息。
; 如果设置为 0,则 URLScan 使用 RejectResponseUrl 设置来返回请求。

LogLongUrls=0
; 这个属性是UrlScan 3.0及以后的弃用。UrlScan禁止3.0及以后总是包括完整的日志文件的URL。

UnescapeQueryString=1
;如果设置为1,UrlScan将执行两个传递查询字符串扫描后与原始查询字符串和一次unescaping
;如果设置为0,UrlScan禁止只会看看原始客户端发送的查询字符串

RejectResponseUrl=
; 设置用于返回的Url路径

AlternateServerName=
; 如果将 RemoveServerHeader设为0,此可自定义服务器关信息。
; 如果将 RemoveServerHeader设为1,则此选项将被忽略。

[AlwaysAllowedUrls]
;
; 这里列出的url将永远是显式地允许UrlScan禁止并将绕过所有UrlScan禁止检查。列出的url必须用“/”字符。例如:
;
;   /SampleURL.htm
;

[DenyUrlSequences]
;
; 如果任何字符序列列在这里出现在任何的URL请求,该请求将被拒绝。
;

..  ; 不允许目录遍历
./  ; 不允许拖点目录名称
\   ; 不允许反斜杠的URL
:   ; 不允许交替流的访问
%   ; 不允许正常化后溢出
&   ; 不允许多个CGI进程在单个请求中运行

在参数中过滤sql注入的一些关键字

[DenyQueryStringSequences]
;
;如果任何字符序列这里列出在查询字符串中出现任何请求,该请求将被拒绝。
;

下面是一些常用的关键字就不一一列举了

<   ; 常用的脚本注入攻击
>   ;
--  ;
delete ;
select ;

注意:设置好这些以后需要重启一下iis,urlscan才能生效

最近有看到了一个防止注入的软件

地址 http://www.safedog.cn/install_desc_website.html

说明文档 http://www.safedog.cn/download/software/safedogwz_Windows_Help.pdf

参考 http://blog.csdn.net/huwei2003/article/details/6259757

urlScan 配置阻止sql注入的更多相关文章

  1. egg 阻止 sql 注入,相关文章

    egg 阻止 sql 注入,相关文章 网址 注意!!我们极其不建议开发者拼接 sql 语句,这样很容易引起 sql 注入!!如果必须要自己拼接 sql 语句,请使用 mysql.escape 方法. ...

  2. 如何阻止sql注入(pdo篇)

    Use prepared statements and parameterized queries. These are SQL statements that are sent to and par ...

  3. 结合jquery的前后端加密解密 适用于WebApi的SQL注入过滤器 Web.config中customErrors异常信息配置 ife2018 零基础学院 day 4 ife2018 零基础学院 day 3 ife 零基础学院 day 2 ife 零基础学院 day 1 - 我为什么想学前端

    在一个正常的项目中,登录注册的密码是密文传输到后台服务端的,也就是说,首先前端js对密码做处理,随后再传递到服务端,服务端解密再加密传出到数据库里面.Dotnet已经提供了RSA算法的加解密类库,我们 ...

  4. 实例讲解 SQL 注入攻击

    这是一篇讲解SQL注入的实例文章,一步一步跟着作者脚步探索如何注入成功,展现了一次完整的渗透流程,值得一读.翻译水平有限,见谅! 一位客户让我们针对只有他们企业员工和顾客能使用的企业内网进行渗透测试. ...

  5. 【转载】SQL注入

             "SQL注入"是一种利用未过滤/未审核用户输入的攻击方法("缓存溢出"和这个不同),意思就是让应用运行本不应该运行的SQL代码.如果应用毫无防 ...

  6. SQL注入之代码层防御

    [目录] 0x0 前言 0x1 领域驱动的安全 1.1 领域驱动的设计 1.2 领域驱动的安全示例 0x2 使用参数化查询 2.1 参数化查询 2.2 Java中的参数化语句 2.3 .NET(C#) ...

  7. sql注入攻防 以php+mysql为例

    随着Web应用的高速发展和技术的不断成熟,对Web开发相关职位的需求量也越来越大,越来越多的人加入了Web开发的行列.但是由于程序员的水平参差不齐或是安全意识太低,很多程序员在编写代码时仅考虑了功能上 ...

  8. Java防止SQL注入2(通过filter过滤器功能进行拦截)

    首先说明一点,这个过滤器拦截其实是不靠谱的,比如说我的一篇文章是介绍sql注入的,或者评论的内容是有关sql的,那会过滤掉:且如果每个页面都经过这个过滤器,那么效率也是非常低的. 如果是要SQL注入拦 ...

  9. 【荐】PDO防 SQL注入攻击 原理分析 以及 使用PDO的注意事项

    我们都知道,只要合理正确使用PDO,可以基本上防止SQL注入的产生,本文主要回答以下几个问题: 为什么要使用PDO而不是mysql_connect? 为何PDO能防注入? 使用PDO防注入的时候应该特 ...

随机推荐

  1. rman命令详解(三)

    1. Report 命令用户判断数据库的当前可恢复状态和提供数据库备份的特定信息1.1 指定最近没有备份的数据文件查询3天内没有备份过的表空间,可以用如下命令:RMAN> report need ...

  2. 洛谷【P1177】【模板】基数排序

    题目传送门:https://www.luogu.org/problemnew/show/P1177 我对计数排序的理解:https://www.cnblogs.com/AKMer/p/9649032. ...

  3. C++STL库中vector容器常用应用

    #include<iostream> #include<vector> #include<algorithm> using namespace std; int m ...

  4. 第 五 课 golang语言变量

    1 变量三种声明: (第一种的var和类型都是多余: 第二种最简洁,但是第二种只能用在函数中,不能是全局变量的声明)        第一种: var v_name v_type(注意顺序) v_nam ...

  5. java web基础知识

    1)TCP三次握手 第一次握手:客户端A将标志位SYN置为1,随机产生一个值为seq=J(J的取值范围为=1234567)的数据包到服务器,客户端A进入SYN_SENT状态,等待服务端B确认: 第二次 ...

  6. 外置式与增量式PID模板程序(51单片机c语言)

    外置式PID模板 #define MuBiaoCS 0 //目标常数 #define CHang_aCS 0 //比例常数 #define CHang_bCS 0 //积分常数 #define CHa ...

  7. mount总结

    挂载分区 mount基本语法 mount [参数] /dev/sdb1(需要挂载的分区) /sdb1(挂载目录) 参数是可选的,也可以不带参数,参数的使用方法(-o ro,sync,atime). 参 ...

  8. CoreData的使用(IOS学习)

    ——杂言:最近开始学习IOS7的开发,下文是在已经建好的项目里加入CoreData的结构,并实现一个基于coredata的简单save,query. 1. 引入Core Data Framework. ...

  9. css+div制作圆角矩形的四种方法

    圆角矩形一向是设计师最倾心的一种设计,因为他们可以让整个网页生动起来,不那么死板,所以,作为一个优秀的网页设计师,学会一种或多种编辑圆角矩形的方法是必不可少的,而且圆角矩形应用范围极广,一个网页内的所 ...

  10. [hdu3549]Flow Problem(最大流模板题)

    解题关键:使用的挑战程序设计竞赛上的模板,第一道网络流题目,效率比较低,且用不习惯的vector来建图. 看到网上其他人说此题有重边,需要注意下,此问题只在邻接矩阵建图时会出问题,邻接表不会存在的,也 ...