sql注入绕过技巧之打狗棒法

阅读: 评论:0

sql注入绕过技巧之打狗棒法

sql注入绕过技巧之打狗棒法

0x0001

首先针对 preg_replace 很多狗都是通过替换关键词来进行过滤:
preg_replace(‘A’ , ‘B’ , C) :执行一个正则表达式的搜索和替换,这个的意思是搜索C中符合A的部分,然后用B来代替。

1.大小写绕过

有些替换的过程中没有考虑到数据库执行过程大小写转换的问题,只处理了小写或大写的关键字,例如:select和SELECT会被过滤,但seLeCt并不会被防御机制检测到。于是我们可以使用
ip/index.php?login_id=-15 uNIoN sELecT 1,2,3,4…,去执行union查询。
大小写绕过用于只针对小写或大写的关键字匹配技术,正则表达式/express/i 大小写不敏感即无法绕过,这是最简单的绕过技术

2.双写绕过

有些会把关键字替换成空,比如会把“select、and”等关键字替换为空,这时候我们可以这么输入

ip/index.php?login_id=-15 UNIunionON SELselectECT 1,2,3,4….

只过滤一次,结果会被替换成:

ip/index.php?login_id=-15 UNION SELECT 1,2,3,4….

这样就可以达到绕过防御去执行SQL语句了。并且,有些开发不知道怎么想的,明明可以循环过滤,却只过滤几次,我们可以多构造几个关键字,防止全部替换为空。

3.针对空格的绕过

①.内部注释:
这个方法在于利用SQL语句的注释符来绕过,这种绕过方式只适用于如下防御机制:输入“unionselect”不会被检测到攻击;输入“union select”会被检测到,检测机制会以空格为界定符,把“union”和“select”分开成两个字符串去检测是不是攻击的特征码。我们可以构造如下payload去绕过检测:

ip/index.php?login_id=-15/**/un/**/ion/**/sel/**/ect 1,2,3,4…

②两个空格代替一个空格,用T

本文发布于:2024-02-04 15:12:33,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170710280456615.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:技巧   打狗棒   sql
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23