ASP网站post,get注入
来源:
互联网
日期:2007-3-19
一般的http请求不外乎 get 和 post两种,如果过滤掉所有post或者get请求中的参数信息中的非法字符,那么也就实现了防SQL注入。
首先定义请求中不能包含如下字符:
'|and|exec|insert|select|delete|update|count|*|%|chr|mid|master|truncate|char|declare
各个字符用"|"隔开,然后再判断Request.QueryString,具体代码如下:
get请求的非法字符过滤:
dim sql_injdata SQL_injdata = "'|and|exec|insert|select|delete|update|count|*|%|chr|mid|master|truncate|char|declare" SQL_inj = split(SQL_Injdata,"|") If Request.QueryString<>"" Then For Each SQL_Get In Request.QueryString For SQL_Data=0 To Ubound(SQL_inj) if instr(Request.QueryString(SQL_Get),Sql_Inj(Sql_DATA))>0 Then Response.Write "<Script Language='javascript'>{alert('请不要在参数中包含非法字符!');history.back(-1)}</Script>" Response.end end if next Next End If
post请求的非法字符过滤:
If Request.Form<>"" Then For Each Sql_Post In Request.Form For SQL_Data=0 To Ubound(SQL_inj) if instr(Request.Form(Sql_Post),Sql_Inj(Sql_DATA))>0 Then Response.Write "<Script Language='javascript'>{alert('请不要在参数中包含非法字符!');history.back(-1)}</Script>" Response.end end if next next end if
然后在使用的时候将这两段代码放在数据库连接的文件里一起Include进来即可。
更多的ASP网站post,get注入请到论坛查看: http://BBS.TC711.COM
【 双击滚屏 】 【 评论 】 【 收藏 】 【 打印 】 【 关闭 】
来源:
互联网
日期:2007-3-19
|
|
|