如何理解SQL注入

  • A+
所属分类:数据库
如何理解SQL注入
SQL注入是一种将SQL代码添加到输入参数中,传递到SQL服务器解析并执行的一种攻击方法
SQL注入式怎么产生的?
1.WEB开发人员无法保证所有的输入都已经过滤
2.攻击者利用发送给SQL服务器的输入数据构造可执行的SQL代码
3.数据库未做相应的安全配置
如何寻找SQL注入漏洞?
1.借助逻辑推理
识别web应用中所有的输入点(get,post,http头)
2.了解哪些类型的请求会触发异常
特殊字符(单引号、双引号会引发异常)
3.检测服务器响应中的异常
可能会出现500错误
直接进行302跳转
如何进行SQL注入攻击?
1.数字注入
id = -1 OR 1=1
2.字符串注入
注释作用
(#后的所有代码不起作用)
(-- 后的所有代码不起作用)
如何预防SQL注入?
1.严格检查输入变量的类型和格式
2.过滤和转义特殊字符串
3.利用mysql的预编译机制
id验证是否是数字
字符串加上正则
特殊字符进行转义(可通过myssqli_real_escape_string函数进行转义)
意琳

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: