SQL Injection
原理
SQL注入的本质就是程序没有有效的区分代码和数据
SQL注入的原理就是利用 开发者未对用户输入的内容进行有效的过滤,这样攻击者就能够破坏了原有的SQL逻辑,肆意的在数据库服务器上执行恶意的SQL,例如获取用户信息,或者执行系统命令等
防范
- 首先用户最小化权限,只授权一些满足业务需求的权限即可,通过这样在一定程度上缩小了危害范围
- 数据源要严格检查,严格限制变量类型,特殊字符要转义或者过滤不予执行
- 应用发布前通过一些SQL注入工具检测一遍后再发布
- 不要打印错误信息,例如类型错误、字段不匹配等等