如何防止sql注入
来源:互联网 发布:什么叫javascript对象 编辑:程序博客网 时间:2024/05/21 09:02
一个老生常谈的问题,但是我是只知道毛毛雨的原理,具体的防止操作,着实没有做过
原理:一些拥有高级电脑知识的人才,试图通过破解用户登陆,来获取数据库中的用户信息
专业术语:通过字符串的恒等式拼接获取全部的数据库用户信息
for example:密码:AinUser666 or 1 = 1
接近官方术语:SQL Injection:就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,
最终达到欺骗服务器执行恶意的SQL命令。
1.永远不要信任用户的输入,要对用户的输入进行校验,可以通过正则表达式,或限制长度,对单引号和双"-"进行转换等。
2.永远不要使用动态拼装SQL,可以使用参数化的SQL或者直接使用存储过程进行数据查询存取。
3.永远不要使用管理员权限的数据库连接,为每个应用使用单独的权限有限的数据库连接。
4.不要把机密信息明文存放,请加密或者hash掉密码和敏感的信息。
5.应用的异常信息应该给出尽可能少的提示,最好使用自定义的错误信息对原始错误信息进行包装,把异常信息存放在独立的表中。
我想说的是:可以通过拦截器机制防止sql注入
阅读全文
0 0
- 如何防止SQL注入
- 如何防止SQL注入
- 如何防止SQL注入
- 如何防止sql注入
- 如何防止sql注入
- 如何防止sql注入
- 如何防止SQL注入
- 如何防止sql注入
- 如何防止sql注入
- 如何防止sql注入
- 如何防止SQL注入
- 如何防止sql注入
- 如何防止 SQL 注入?
- 如何防止sql注入
- 如何防止sql注入
- 如何防止SQL注入
- 如何防止sql注入
- 如何防止sql注入
- 日期容器中常用函数(总结)
- stringstream的初认识
- wifi从连接到更新界面到保存到继续去连接,一气呵成!!!
- Windows下的dos命令技巧
- 测试连接数据库
- 如何防止sql注入
- java中实用的File工具类
- springMVC整合jedis+redis注解
- hibernate实体类报错:Could not find a setter for property * in class * 解决方法
- 金蝶EAS,BOTP单据转换规则,公式参数中使用SQL语句
- 工作中的一些心得
- h5文件分块上传
- 如何将cout输出显示到mfc界面
- Spring 的事务管理