0x00 宽字节注入简介
什么是宽字节:
GB2312、GBK、GB18030、BIG5、Shift_JIS这些编码类型都是属于宽字节,当我们输入的单个字符被转换成ACSII码,当两个ACSII码组合起来会被宽字节再次编码为特殊文字等类型,即绕过了检验。宽字节注入是mysql特有的一种诸注入类型
0x01 宽字节注入案例-SQLI-less-32
尝试判断闭合,发现输入的参数都被转换为ACSII码,
发现单引号被转换为通过查询ACSII码 单引号转换 /’ 而/‘换成 5c27
查询到该靶场编码类型为GBK,GBK转换为字符为四个字符,而当我们后面单引号被转换为ACSII编码
5c27 我们只需要增加两个编码,使得其与5c组合四个编码在一起被GBK转换后成为一个汉字,从而绕过了检验
发现收到前面的数字干扰无法被GBK识别转换
添加url符号将前两个数字符与中间四个隔开,使中间四个字符组合被GBK识别转换为汉字,这里需要注意的是GBK四个字符编码需要被转化为汉字需要注意字符范围的区间