| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 479 人关注过本帖
标题:SQL防注问题
只看楼主 加入收藏
linjirongll
Rank: 1
等 级:新手上路
帖 子:32
专家分:0
注 册:2008-3-26
结帖率:0
收藏
已结贴  问题点数:20 回复次数:2 
SQL防注问题
引用了“孤独冷雨”版主的防SQL注入的代码,后台的文本编辑器是eWebSoft,从WORD或者是从别的网上复制出来的文章粘贴入去,只要不清除格式,,就会被这段防SQL代码给阻隔提交,知道是因为这样的复制会有好多特殊字符出现,,但习惯性客户的操作都是喜欢直接这样粘贴的,,,能有什么好的办法可以防得了注入又可以不限制自己的输入。。
程序代码:
<% 
Function CheckSql() '防止SQL注入 
    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('请不要在参数中包含非法字符!');}</Script>"  
Response.Write "本站有服务不到位的地方,请多提建议!如果你糊来小心我掐死你↓<br><br>"  
Response.Write "操作IP:"&Request.ServerVariables("REMOTE_ADDR")&"<br><br>"  
Response.Write "操作时间:"&Now&"<br><br>"  
Response.Write "操作页面:"&Request.ServerVariables("URL")&"<br><br>"  
Response.Write "提交方式:Get<br><br>"  
Response.Write "提交参数:"&SQL_Get&"<br><br>"  
Response.Write "提交数据:"&Request.QueryString(SQL_Get)  
response.Write "<meta http-equiv='refresh' content='3;url=/'>" 
                    Response.end  
                end if  
            next  
        Next  
    End If 
     
    '************************************************** 
     
    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('请不要在参数中包含非法字符!');</Script>"  
Response.Write "本站有服务不到位的地方,请多提建议!如果你糊来小心我掐死你↓<br><br>"  
Response.Write "操作IP:"&Request.ServerVariables("REMOTE_ADDR")&"<br><br>"  
Response.Write "操作时间:"&Now&"<br><br>"  
Response.Write "操作页面:"&Request.ServerVariables("URL")&"<br><br>"  
Response.Write "提交方式:Post<br><br>"  
Response.Write "提交参数:"&SQL_Get&"<br><br>"  
Response.Write "提交数据:"&Request.Form(SQL_post)  
                    Response.end  
                end if  
            next  
        next  
    end if 
End Function 



'以上为SQL防注入
%>
搜索更多相关主题的帖子: SQL防注问题 
2009-08-25 13:45
孤独冷雨
Rank: 10Rank: 10Rank: 10
来 自:安徽滁州
等 级:贵宾
威 望:23
帖 子:1247
专家分:1909
注 册:2007-6-4
收藏
得分:10 
按你的问题,可以建两个数据库链接页面,后台的数据库链接不就要加了,
你把这段代码加在前台页面的数据库链接上就可以了!
一般的黑客软件也一样注入不进去!不过你要把你后台,带有上传功能的页面做好防范。

这里有男女系列成人用品,有时间兄弟们来看一看.
51za.
2009-08-25 15:36
yuhuiyuan
Rank: 2
等 级:禁止访问
帖 子:56
专家分:45
注 册:2007-4-20
收藏
得分:10 
后台也可以做防范撒,你又不会通过页面值这些关键字

asp入门基础:http://www.  
2009-08-26 16:14
快速回复:SQL防注问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016582 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved