如何理解sql注入
*sql 注入是一种将sql代码添加到输入参数中
*传递到sql服务器解析并执行的一种攻击手法
如在url参数?id=1 可以改成 id=-1 OR 1=1则会永为真 -1查不到,将会查到所有内容
sql注入的产生
*开发人员无法保证所有的输入已过虑
n
*攻击者利用发送给sql服务器的输入数据构造可执行sql代码
*数据库未做相应的安全配置
如何寻找sql注入漏洞
-
识别web应用中所有输入点
get方式:构造特殊字符
post方式:构造特殊字符 -
了解哪些类型的请求会触发异常
*检测服务器响应中的异常
如何进行sql注入攻击
*数字 id=-1 OR 1=1
*字符串注入 登录用户名 xxx'# mysql注释特性绕过password验证 xxx'--
如何防止sql注入
*输入变量检查 严格检查输入的格式类型
*过滤和转义特殊字符 addslashes()
*利用mysql预编译机制