标题: 请教关于防SQL注入的问题?谢谢 [打印本页] 作者: 夜流冰 时间: 2010-1-14 08:33 标题: 请教关于防SQL注入的问题?谢谢 我在conn.asp文件的最上边加入了下面的防sql注入代码:
<%
dim sql_injdata
SQL_injdata = "’|""|{|}|[|]|\|:|;|<|>|?|,|.|`|~|!|@|$|%|^|(|)|and|exec|insert|select|delete|update|count|*|%|chr|mid|master|truncate|char|declare|or"
SQL_inj = split(SQL_Injdata,"|")
'防止Get方法注入
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
%>
加完以后就不能sql注入了。
但是我在后台增加一信息时例如:新闻什么的。也不能添加了。
这个问题怎么解决啊?
即防了SQL注入,但还不影响自己添加内容。
请版主和各位高手们帮一忙。
谢谢。作者: …═☆幻 时间: 2010-1-14 08:33
为什么没有人回答我啊?
再请教。谢谢。作者: ωǒ祗憙歡伱 时间: 2010-1-14 08:33
你的代码屏蔽了太多的字。
在你添加新闻的时候,你肯定会用到其中的字符,如逗号,@等,同样也被认为是注入作者: 兮哩糊涂の斗 时间: 2010-1-14 08:33
这样啊。
这些里面应该大概留哪些是比较合适的呢?作者: 痴情浪子 时间: 2010-2-21 18:05
哈哈,这么多的人都回了,我敢不回吗?赶快回一个,很好的,我喜欢