该文件可以包含在任何需要调用数据库的ASP文件头部,直接过虑掉非法注入

数据|数据库

<%'该文件可以包含在任何需要调用数据库的ASP文件头部,直接过虑掉非法注入
'调用方法为:<!-- #include file="safe.asp" -->
Function Safe(str)'该函数用来判断传递过来的变量是否包含特殊字符,没有返回TRUE
Dim s_BadStr, n, i
s_BadStr = "'  &<>?%,;:()`~!@#$^*{}[]|\/+-="&Chr(34)&Chr(9)&Chr(32)
n = Len(s_BadStr)
Safe = True
For i = 1 To n
If Instr(str, Mid(s_BadStr, i, 1)) > 0 Then
Safe = False
Exit Function
End If
Next
End Function
'以下代码直接判断发生请求的URL是否包含非法字符
On Error Resume Next
Dim strTemp

If LCase(Request.ServerVariables("HTTPS")) = "off" Then
strTemp = "http://"
Else
strTemp = "https://"
End If
strTemp = strTemp & Request.ServerVariables("SERVER_NAME")
If Request.ServerVariables("SERVER_PORT") <> 80 Then strTemp = strTemp & ":" & Request.ServerVariables("SERVER_PORT")
strTemp = strTemp & Request.ServerVariables("URL")
If Trim(Request.QueryString) <> "" Then strTemp = strTemp & "?" & Trim(Request.QueryString)
strTemp = LCase(strTemp)
If Instr(strTemp,"select%20") or Instr(strTemp,"insert%20") or Instr(strTemp,"delete%20from") or Instr(strTemp,"count(") or Instr(strTemp,"drop%20table") or Instr(strTemp,"update%20") or Instr(strTemp,"truncate%20") or Instr(strTemp,"asc(") or Instr(strTemp,"mid(") or Instr(strTemp,"char(") or Instr(strTemp,"xp_cmdshell") or Instr(strTemp,"exec%20master") or Instr(strTemp,"net%20localgroup%20administrators") or Instr(strTemp,"db_name(") or Instr(strTemp,"net%20user") or Instr(strTemp,"'") or Instr(strTemp,"%20or") or Instr(strTemp,"backup%20") then
Response.Write "<script language='javascript'>"
Response.Write "alert('非法地址!!');"
Response.Write "location.href='http://www.myzone.cn';"
Response.Write "</script>"
End If

For Each name In Request.Form
Dim s_BadStr, s_Sz, i
s_BadStr = "'|and|select|update|chr|delete|from|;|insert|mid|master.|truncate|db_name|xp_cmdshell|exec%20master|net%20localgroup%20administrators|drop|table|db_name(|exec"
s_Sz = split(s_BadStr,"|")
For i = 0 To ubound(s_Sz)
If Instr(Request.Form(name), s_Sz(i)) > 0 Then
Response.Write "<script language='javascript'>"
Response.Write "alert('非法地址!!');"
Response.Write "location.href='http://www.myzone.cn';"
Response.Write "</script>"
End If
Next
next
%>

时间: 2024-07-28 22:28:30

该文件可以包含在任何需要调用数据库的ASP文件头部,直接过虑掉非法注入的相关文章

c语言问题-C语言的头文件有包含顺序吗?

问题描述 C语言的头文件有包含顺序吗? C语言的头文件有包含顺序吗?有的话,是什么呀,---------- 解决方案 有包含顺序,即使添加了#ifndef也不一定有用 一个合理的建议:所有的.h中不包含.h,放在CPP中包含.但是每个模块有一个特殊的共通头文件,只用于包含该模块使用的外部的头文件,并且所有的cpp文件必须是最先包含该头文件. 解决方案二: 标注库基本没有包含顺序(差不多都处理掉了), 可以任意使用 但是自己定义的就有了 解决方案三: c语言之头文件包含顺序问题 1.头文件的包含是

在SHTML中通过SSI指令实现文件动态包含

文章地址: http://blog.csdn.net/5iasp/article/details/12992769 作者: javaboy2012 Email:yanek@163.com qq:    1046011462   在SHTML中通过SSI指令实现文件动态包含 代码如下: 测试代码: 假设文件为index.shtml 内容如下: <!--#if expr="$QUERY_STRING='id=1'" --> <!--#include virtual=&qu

access数据库连接出错,请检查Conn.asp文件中的数据库参数

  今天我们讲一个实际工作中遇到使用IIS建立网站出现:access数据库连接出错,请检查Conn.asp文件中的数据库参数设置的解决办法 1.路径设计错误,用记事本打开CONN.ASP, 如果是ACCESS数据库,请认真修改好下面的数据库的文件名 db = "databasePowerEasy2006.mdb", ACCESS数据库的文件名,请使用相对于网站根目录的的绝对路径,如果是安装在网站根目录,直接修改文件名即可.如果是安装在网站某一目录下,则在前面加上此目录,例如,系统安装在

单位网中如何设置 webdav上传.asp文件

问题描述 单位网中如何设置 webdav上传.asp文件 单位网中如何设置 webdav上传.asp文件.通过dreamweaver能上传htlm.pdf文件.不能上传.asp文件和.dmb(数据库access).问:服务器如何设置?

asp文件如何打开

运行asp文件 首先我们需要搭配运行环境,运行ASP文件需要的服务器是IIS服务器,所以我们要来安装和配置IIS服务器,其实相比于其他的服务器,IIS简单很多,因为是windows自带的服务器,只要安装必要的组件就行了. 了解过后我们就来安装IIS吧,首先打开控制面板(小编使用的操作系统是windows2003,很多网站都使用它作为默认的服务器,因此小编以此为例),找到添加或删除程序选项(如下图红线标注处所示),然后点击进入. 接着我们就看到添加或删除程序界面,点击添加删除windows组件,然

asp 文件 批量上传

 关键字:asp 批量上传   asp 图片批量上传     批量上传文件    asp 上传文件      asp文件上传代码   php 文档批量上传 , 好了,我们今天看来看文件批量上传代码与方法吧,首先我们用到三个文件,upload_5xsoft.inc ,upload.asp,up.asp这三个文件,下面我们一一讲解这个三个文件,并贴出相应代码: 先来看看upload_5xsoft.inc吧,这里文件扩展名为什么为inc我就不讲了,不懂得可以到本站去搜索. <SCRIPT  RUNAT

html调用问题,调用js,css文件

问题描述 html调用问题,调用js,css文件 1,html调用js和css需要注意什么 2,三者文件存储有什么规定?写了几个代码都不能调用js 解决方案 1,注意路径,js,css使用相对路径注意是相对当前html页面的路径,路径不对无法加载js,css就会报错,布局显示错误 2,html meta指定为utf-8时,html存储编码也要为utf-8,gb2312则对应ansi(国内ansi一般是gb2312).js和css存储编码要和html存储编码一致,如果js不一致可以给script标

[Linux shell]查找某目录下文件是否包含某个字符串

查找目录下的所有文件中是否含有某个字符串  find .|xargs grep -ri "IBM"  查找目录下的所有文件中是否含有某个字符串,并且只打印出文件名  find .|xargs grep -ri "IBM" -l 1.正则表达式    (1)正则表达式一般用来描述文本模式的特殊用法,由普通字符(例如字符a-z)以及特殊字符(称为元字符,如/.*.?等)组成.   (2)基本元字符集及其含义       ^ :只匹配行首.   如^a 匹配以a开头的行a

C++头文件的包含顺序研究

一.<Google C++ 编程风格指南>里的观点        公司在推行编码规范,领导提议基本上使用<Google C++ 编程风格指南>.其中<Google C++ 编程风格指南>对于头文件的包含顺序是这样的:   Names and Order of Includes link ▽Use standard order for readability and to avoid hidden dependencies:C library, C++ library,