实战中一处有趣的MySQL正则盲注
最近的攻防项目中挖掘到了一处SQL注入,但由于存在waf过滤了select和like等关键字,导致无法通过常规手段进行注入。经测试发现waf并没有拦截regexp正则函数关键字,于是有本文的正则盲注分析。
因为项目敏感,就不放burp的截图,用MySQL执行演示正则注入流程。
正则判断字段长度
语法:
.{字段长度}
![](https://zgao.top/wp-content/uploads/2023/05/image-831x1024.png)
正则判断字段中包含哪些字符
语法:
[a-zA-Z0-9]+ [a-z]+ [A-Z]+ [0-9]+ [^\w\s]+
这一步是可以省略的,但是判断字符串中包含哪些字符?可以节省后面二分判断的次数。
![](https://zgao.top/wp-content/uploads/2023/05/image-1-1018x1024.png)
![](https://zgao.top/wp-content/uploads/2023/05/image-2-1024x679.png)
正则判断每一位字符的值
![](https://zgao.top/wp-content/uploads/2023/05/image-3-737x1024.png)
后面就是同样的步骤判断依次判断每一位的值。
![](https://zgao.top/wp-content/uploads/2023/05/image-4-707x1024.png)
总结
实战遇到waf过滤了select感觉没什么好的思路,但是利用正则盲注出数据库的系统变量是可行,反正刷src是够用的。
赞赏微信赞赏
支付宝赞赏
发表评论