直接拼接SQL语句,被人注入拖走整个数据库,改用预处理语句再也没出过事

15年前 (2012-03-09)阅读1回复0
genmulu
genmulu
  • 管理员
  • 注册排名1
  • 经验值27950
  • 级别管理员
  • 主题5590
  • 回复0
楼主

新手写PHP,直接把用户传的参数拼到SQL语句里,被人构造参数注入,整个数据库被拖走,所有用户数据全漏。第一,别直接拼接用户参数到SQL语句,必须用预处理语句;第二,用户传的数字参数,先转成整数,非数字的直接过滤;第三,数据库用户权限别给太高,网站用的数据库用户只给增删改查,不给file权限;第四,报错信息别把数据库错误直接显示在页面,别人靠报错信息找注入点。我之前写代码,直接拼接用户传的ID参数,被人构造语句拖走了整个用户表,吓出冷汗,之后所有SQL全用预处理语句,参数绑定,再也没出现过注入问题。很多新手觉得拼接SQL方便,一行代码的事,其实一个注入就能让你网站彻底报废。

本站源码来源于网络收集修改或者交换,甚至可能并非原创,如遇未经考证信息需持审慎态度。若有疑问,可联系本站处理。

本文地址:https://www.genmulu.cn/genmulu/5552.html

0
回帖

直接拼接SQL语句,被人注入拖走整个数据库,改用预处理语句再也没出过事 期待您的回复!

取消
载入表情清单……
载入颜色清单……
插入网络图片

取消确定

图片上传中
编辑器信息
提示信息