关于SQL注入问题-,于解决办法

      相信有很多朋友,会了解sql注入,也知道如何的防范。网上这方面的资料很多,我就不怎么说了,下边说说我自己在项目中是如何解决这一问题的.

    

      现在对网站的攻击手段很多,很复杂,大体可以分为服务器端和客户端。攻击的角度很多。就连杀毒软件厂商瑞星都能被攻击,可想而知,不法分子的手段有多高明。暂不谈这方面。
我只说明我的理解防止SQL注入方法。网上很多方法,大多都是什么一些过滤函数,HttpModule与HttpHandler里写函数,过滤表单等方法。这样是可以防止一些注入但是我个人认为这样不好。我可以罗列出这几点:1:程序代码冗余,偶尔会忘记过滤 2:程序的执行效率,多一些代码总是需要一些时间去执行的。3:如何合法,正常与用户就是需要输入Update 、delete等一些字符,岂不是被过滤了吗?4:用函数过滤Sql关键字,不能彻底的过滤 5:别人可以利用二进制等一些手法,绕过过滤函数。不知道朋友们是否同意我这关点,请拍砖。

      

     下边谈谈我的解决方法:1: SQL语句参数化查询,强烈推存用 存储过程,哪怕是select * from 表 也用存储过程,这样代码没有冗余,又防SQL注入,代码易读,何乐而不为呢?
2:用.net 3.5的linq to sql ,据说这也可以防止注入,因为本人项目中为使用此技术。项目毕竟是用成熟的东西嘛。3:对参数做类型判断过滤,比如一个a.aspx?id=123这样的
代码,我们可以对id进行类型,判断,即id必须是整数,否则不通过验证。4:过滤任何关键字,不如过滤一个单引号来的重要。做到以上几点程序防SQL注入我想已经够了。
下边这些我做的项目都是采用以上过滤,根本不需什么过滤关键字那些函数。大家可以看下,www.5173.com ,www.658.com 等有代表性的。

 

     例如:
 
      随便大家拍砖!~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值