MySQL注入绕过

本文探讨了如何绕过WAF进行MySQL注入,包括构造闭合、连接字符、空格绕过和关键字绕过的方法。通过举例说明如何使用特殊字符、混淆关键字和等效替代来规避拦截,提升SQL注入的效率和成功率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文主要结合本人绕过最近某rasp和一些waf的经验,分享绕过waf的思路,MySQL测试版本(8.0.31)

构造闭合

对于构造闭合,主要是判断一个sql注入能否利用的第一步,只有闭合成功,才能在添加我们自己想执行的sql函数,或者语句。mysql主要存在以下两个方式。

'#
'--+

一个就是逃逸字符,一般为单双引号(某些复杂的sql可能还需要括号等来进行闭合),或者是数字型的注入不需要逃逸字符,第二个就是注释字符,用来闭合后面的原始字符。

如同所示,选择的字符是我们的输入,对前面的的单引号进行了闭合,对后面的单引号进行了注释

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-mXu7h2ec-1679646830347)(./MySQL注入绕过.assets/image-20230223170836542.png)]

闭合构造完成之后如果存在一些拦截规则,常规的注入语句是无法获取到数据的,包括sqlmap等,这时就需要我们进行手工注入,下面我为大家介绍一下,我绕waf的一个思路。

连接字符

我把可以直接在字符后面可以紧跟执行着函数的字符称为连接字符,如下

'sleep(1)# -- 执行失败
'-sleep(1)# -- 执行成功

执行失败展示

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-okpMsKuk-1679646830349)(./MySQL注入绕过.assets/image-20230223171044795.png)]

执行成功
在这里插入图片描述

在这里减号就连接了一个函数,我就把这种字符成为连接字符,当然,and,or也算在其中,以下是我总结的一些连接字符


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值