一、简介
锁子哥最近又更新了,之前乔帮主的bypass方法都不好使了,所以才有了本文。
绕过云锁主要是通过破坏正则的方式,主要是通过REGEXP和LIKE参数
REGEXP "[*%0a%23]"LIKE "[*%0a%23]"云锁遇到%23,即#时,会自动舍弃#后的部分不进行正则匹配,这样就绕过了检测%0a的作用主要是用来破坏正则
二、具体Bypass过程
这里以sqli-labs为例,可以发现常规的注入语句被拦截了,这里明显检测的是order by等关键字。
一开始想通过内联注入的方法进行绕过
?id=1' /*!50000order by*/ 4--+

锁子哥成熟了,没那么好绕过了,既然一个注释不行,那就再给他加一个
?id=1' /*!50000order /*!@#$%^*/ by*/ 4--+

又GG了,看来这个思路是有问题的。乔帮主说可以用正则破坏正则,以毒攻毒,而且云锁的正则如果匹配到#会自动舍弃#后的内容不进行检测,可以用LIKE或者REGEXP
?id=1' REGEXP "[%0a%23]" order by 5--+?id=1' LIKE "[%0a%23]" order by 5--+


果然绕过去了,锁子哥还是不行啊
union select也是一样绕过思路
后面就不赘述了
总结:
在关键字前加上LIKE或者REGEXP参数,即可绕过云锁。加入的REGEXP “[%0a%23]”或者LIKE “[%0a%23]”并没有实际意义,也没有进行正则匹配。单纯是为了云锁检测到%23时放过后面的内容,不检测%23后的内容
三、SQLmap的tamper脚本

只要把所有关键字前加上REGEXP或者LIKE参数就行了
