Web安全day2
#### sql注入就是web应用程序对用户输入数据的合法性没有判断,前端传入后端的参数是用户可控的,并且参数可以带入数据库查询
SQL注入满足2个条件
1.参数可控 2.参数带入数据库查询
判断存在sql注入 单引号 and 1=1 and 1=2
#### union注入,有回显
order by猜测列数
union select
#### 无回显 布尔盲注 时间盲注 报错注入
' 如果是字符型 需要#注释
substr(一个一个判断)从1开始 limlit从0开始
#### 报错注入
利用错误回显,可以通过updatexml、floor等函数将要查询的内容输出到页面上
#### 时间注入
利用sleep函数让mysql执行时间变长
#### 堆叠查询注入
不支持sql语句 用PDO
#### 二次注入
防止:在注册的时候用单引号将之转义
#### 宽字节注入
如果数据库编码是GBK就可以使用宽字节注入
两字节看成一个字符 可以想办法把\搞掉 %5c就是\编码 DF是一个字节最大值 GBK首字节在81-FE 尾字节在40-FE