buu easysql(真的easy吗)

本文介绍了在解决easysql挑战中遇到的堆叠注入问题,以及如何利用set sql_mode=PIPES_AS_CONCAT来改变||运算符的行为,从而获取flag。通过分析回显和阅读writeup,揭示了查询语句的结构,并提供了实验来加深对知识点的理解。
摘要由CSDN通过智能技术生成

这道题让我了解到了两个东西,堆叠注入和set sql_mode=PIPES_AS_CONCAT

一.分析回显

题目为easysql,所以这道题是sql注入题没跑了。按老规矩测试,
输入1,回显 Array ( [0] => 1 )
输入2,3, 4, 5…,回显都为 Array ( [0] => 1 )
于是,输入0试试,无回显
心里想(???,这不会是sql盲注吧,1及1以上有回显,0则无回显)
接着我就用burpsuite fuzz了一下,基本全被过滤,and or && ||都没了,还怎么盲注。

看了看别人的wp,有人试了堆叠注入的常规操作,但是也没用。

  • 堆叠注入是什么
    堆叠注入与受限于select语句的联合查询法相反,堆叠注入可用于执行任意SQL语句。简单地说就是MYSQL的多语句查询

堆叠注入的局限性:堆叠注入并不是在哦任何换环境下都可以执行的,可能受到API或者数据库引擎不支持的限制(如Oracle数据库),也有可能权限不足。web系统中,因为代码通常只返回一个查询结果,因此堆叠注入第二个语句产生错误或者结果只能被忽略,我们在前端界面是无法看到返回结果的。因此,在读取数据时,一般建议使用union注入.同时在使用堆叠注入之前,需要知道数据库的一些相关信息,比如:表名,列名等信息

堆叠注入,查询的前提是知道数据库名,表名等信息

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值