2012年刀郎香港演唱会:SQL注入问题,高手请进

来源:百度文库 编辑:高考问答 时间:2024/05/04 07:40:17
今天我在找上找了一个软件啊D注入工具,我就在我的服务上做了个实验
打开:http://www.abc.com/index.asp,然后出现"可以注入点[1]"
http://www.abc.com/Fliiww.asp?ClassID=1,
然后就点了检测,(三步走,检测表段,检测字段,检测内容)
晕啊,他把我的所有用户名和密码都测出来了,大家有谁知道怎么解决这个问题啊,重谢,你说明细一点,谢谢
过滤特殊字符就可以了,在哪里被充啊,代码是什么,写在什么地方啊,请详细,谢谢

在你接收url参数的时候 过滤特殊字符就可以了 veryeasy~~
给你一个函数
'_______________________________________________________________
'函数名:SetRequest
'作 用:防止SQL注入
'ParaName:参数名称-字符型
'ParaType:参数类型-数字型(1表示是数字,0表示为字符)
'RequestType:请求方式(0:直接请求,1:Request请求,2:post请求,3:get请求,4:Cookies请求,5:WEB请求)
'_______________________________________________________________
Public Function SetRequest(ParaName,RequestType,ParaType)
Dim ParaValue
Select Case RequestType
Case 0
ParaValue=ParaName
Case 1
ParaValue=Request(ParaName)
Case 2
ParaValue=Request.Form(ParaName)
Case 3
ParaValue=Request.QueryString(ParaName)
Case 4
ParaValue=Request.Cookies(ParaName)
Case 5
ParaValue=Request.ServerVariables(ParaName)
End Select

If ParaType=1 Then
If instr(ParaValue,",")>0 Then
If not isNumeric(Replace(Replace(ParaValue,",","")," ","")) Then
Response.Redirect("/")
End If
Else
If not isNumeric(ParaValue) Then
Response.Redirect("/")
End If
End If
Else
ParaValue=Replace(Replace(ParaValue,Chr(0),""),"'","")
End If
SetRequest=ParaValue
End function

接收参数的时候 全部用 SetRequest(参数) 就可以了

简单的做法过滤 空格,分号,单引号,from

http://lkblog.bokee.com/
这儿有一个关于SQL安全的几个问题,虽然老了点,但对你解决问题还是有帮助的。