如何防止sql注入

来源:互联网 发布:什么叫javascript对象 编辑:程序博客网 时间:2024/05/21 09:02
[html] view plain copy
  1. 一个老生常谈的问题,但是我是只知道毛毛雨的原理,具体的防止操作,着实没有做过

  2. 原理:一些拥有高级电脑知识的人才,试图通过破解用户登陆,来获取数据库中的用户信息

  3. 专业术语:通过字符串的恒等式拼接获取全部的数据库用户信息

  4. for example:密码:AinUser666 or 1 = 1

  5. 接近官方术语:SQL Injection:就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,

  6. 最终达到欺骗服务器执行恶意的SQL命令。

  7. 1.永远不要信任用户的输入,要对用户的输入进行校验,可以通过正则表达式,或限制长度,对单引号和双"-"进行转换等。

    2.永远不要使用动态拼装SQL,可以使用参数化的SQL或者直接使用存储过程进行数据查询存取。

    3.永远不要使用管理员权限的数据库连接,为每个应用使用单独的权限有限的数据库连接。

    4.不要把机密信息明文存放,请加密或者hash掉密码和敏感的信息。

    5.应用的异常信息应该给出尽可能少的提示,最好使用自定义的错误信息对原始错误信息进行包装,把异常信息存放在独立的表中。


  8. 我想说的是:可以通过拦截器机制防止sql注入

原创粉丝点击