MySQL注入绕过

本文主要结合本人绕过最近某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也算在其中,以下是我

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在针对SQL注入绕过技巧方面,有几种常见的方法可以使用。其中一种方法是使用UNION语句。通过在注入点处使用UNION语句,可以将恶意的查询与合法的查询结果合并在一起,从而绕过过滤机制,获取额外的信息。例如,在MySQL中,可以使用以下语句绕过过滤器: ```sql select * from users where id=-1 union select 1,2,3,concat(user,0x3a,authentication_string) from mysql.user; ``` 这样的语句将返回一个合并了用户表和MySQL系统表的结果集。通过使用concat函数,可以将用户名和密码进行拼接,并且使用特殊字符来分隔它们。这样,攻击者可以获取到MySQL用户和其对应的认证字符串。 另一种常见的绕过方法是使用引号绕过。当WAF拦截并过滤单引号时,可以使用双引号或其他类型的引号来代替。在MySQL中,双引号也可以用作字符串的标识符。例如: ```sql select * from users where id='1'; select * from users where id="1"; ``` 这两个语句将返回id为1的用户数据。通过使用不同类型的引号,可以绕过对单引号的过滤。 需要注意的是,SQL注入是一种严重的安全风险,应该尽量避免。为了防止SQL注入攻击,建议采用参数化查询或使用ORM框架来处理数据库查询,以确保输入数据被正确地转义和过滤。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [SQL 注入绕过(一)](https://blog.csdn.net/weixin_51730169/article/details/125417024)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值