sqlilab less32-38

宽字节注入

宽字节注入是利用mysql的一个特性,mysql在使用GBK编码的时候,会认为两个字符是一个汉字(前一个ASCII码要大于128,才到汉字的范围)

就比如说%df%5c%27

他会首先使%df%5c组成一个汉字(两个字符组成一个汉字),从而剩下%27----------------------(%df%5c)%27就像这样,所以当代码中存在转义符的时候,可以使用宽字节注入

less-32操作过程

1.首先还是老三套,?id=1 ,报错,注释

 当我们报错的时候,因为他有转义符%5c所以我们与要给他匹配一个字符,让他们俩凑成一对,组成一个汉字

 然后就是加注释符

 2.开始获取我们想要的数据

 less-33操作过程

同32关一样可以使用宽字节注入的方法,并且,闭合方式也相同

 

 less-34操作过程

34关也是存在宽字节注入的同时也是一个post类型的注入,注入点在username,上来还是老三样,抓包,报错,注释

使用1肯定是登陆失败的啦

 知道他存在宽字节注入,我们就使用宽字节的方法,登陆成功

 接下来可以使用报错注入

 less-35

35关是整型注入,尽量不使用单引号包裹的sql

然后我们可以获取我们想要的东西了

 less-36

36关也是宽字节注入,闭合方式为’‘

 less-37操作过程

37关属于宽字符和post相结合的注入但是处理方法不变,先抓包,使用’登陆当然失败

 我们改包,通过报错知道单引号闭合

 加入注释登陆成功

 然后union,成功

 less-38操作过程

原文地址:https://www.cnblogs.com/pangsong/p/12253398.html