请问各位坛友,如何有效防止sql injection注入,网上讲的那些普通的过滤字符防注入我已经处理了,现在就想知道如何有效防止sql injection注入,听说转换字符类型可以,希望能得到详解。

解决方案 »

  1.   

    数值的话要经过cint转换,asp而言,其他类似
    比如cint(select...) 结果肯定是错误的
      

  2.   

    1.尽量不要在代码中拼接sql语句
      

  3.   

    1)地址栏参数过滤,每一个都要过滤。同时post的内容也要进行处理。
    2)数据库用户权限一定要按需分配,且不可试用sa权限用户用于web连接。
    3)没有特殊操作的话用户权限开放r/w即可,不要dbowner。因为注入后一般是通过cmdshell来执行dos命令提升权限,防止建表和跨库。
    4)SQL Server端没有太多要注意的,前端处理好吧。
    5)关闭xp_cmdshell.dll 2005在外配配置里面。2000直接修改文件名。
    6)用IIS的一些工具或插件来过滤参数,URLScan等。