原理
在程序开发时,开发人员没有对可以进行数据库交互的地方进行严格过滤。导致用户在提交数据时,可以将构造的恶意sql语句提交到数据库进行执行。
个人总结:sql注入就是恶意sql语句在数据库被执行
攻击方式(分类、步骤、工具)
分类: 基于位置点
get
post
http头部字段(user-agent、cookie、referer、IP)
基于方法
布尔
union
数值
时间
报错
宽字节
堆叠
二次注入
攻击步骤:
1.注入点判断(是否存在注入)
2.判断数据库
3.决定注入方法(用什么注入,看实际情况)
4.爆库、表、段
工具 sqlmap 技巧 在数据库已经判断出来后,准备爆库之前,可以直接先看是否可以直接写一句话马到数据库
常见绕过方式
1.绕过空格(注释符/* */,