SQL 注入其他情况
宽字节注入
目的是绕过单双引号转义
解决:
在单引号前加 %df
(81-FE 之间)
遇到 %
后被进行 url 转码转为 df
,
\
ASCII 码的 16 进制为 5c
df5c
被识别成 GBK 编码,df5c
在 GBK 编码中时一个汉字,不在具有转义效果
注释掉后面语句
利用 xmlupdate
进行报错注入
HTTP 头部注入
SQL 注入点不止出现在 GET 或 POST 参数中
cookie 注入
登录
打开 Burpsuite 拦截
刷新页面
正常 Cookie
在 Cookie 后加 '
,出现数据库报错
最后添加注释则不在报错
报错注入
base64 注入
输入账号密码进行登录
成功登录后获取 Cookie
bp 拦截
刷新页面
Repeater 重发
Cookie 经过 Base64 编码和 url 编码
RHVtYg%3D%3D
url 解码
RHVtYg==
base64 解码
Dumb
添加单引号
base64 编码,发送数据包,无回显
尝试改为双引号,数据库报错
构造报错注入
Dumb" and updatexml(1,concat(0x5e,(select database()),0x5e),1) #
base64 编码,发送,成功回显
User-Agent 注入
登录
bp 拦截,刷新网页
输入单引号测试,数据库报错,存在 SQL 注入
后面添加 #
、--+
等注释,依旧报错
尝试将后面部分的引号闭合
User-Agent:' and '
插足,报错注入
Refer 注入
登录,刷新,拦截,重放
同上