[SUCTF 2019]EasySQL1

BUUCTF [SUCTF 2019]EasySQL1 writeup(详细版) 考点:堆叠注入,MySQL和mssql中||运算符的区别,运算符的意义转换(操作符重置) 打开靶机,尝试输入1查看回显: 可以看到表格回显了内容:1,用其他非0数字尝试全都回显1,那我们换个数字尝试,比如0: 什么都没有。 使用Sql堆叠注入查看信息,先用show指令查看数据库:1;show databases; 再查看一下表:1;show tables; 看到Flag表,猜测flag应该在Flag中。 但是直接select flag from Flag查询是查不... 阅读详情
AI摘要

本文介绍SUCTF2019 EasySQL1挑战的解决思路,包括常规SQL注入尝试、堆叠注入应用及两种有效解决方案:一是利用逻辑或特性绕过限制获取Flag;二是调整SQL模式实现字符串连接。

[SUCTF 2019]EasySQL1
[目标]
Sql语句的堆叠注入
[环境]
Buuctf
[工具]
浏览器
[分析]
1.试试sql注入正常套路
(1)先试试1
在这里插入图片描述

有回显
(2)再试试字母
在这里插入图片描述

没有回显
(3)试试单引号注入
在这里插入图片描述

提示不一样,因此猜测这里有注入点
(4)试试有多少列
在这里插入图片描述

还是不成功,因此一般的联合查询在这里不能使用
(5)基于时间的盲注和报错注入都需要嵌套联合查询语句来实现,因此可以跳过,直接试试布尔型盲注
在这里插入图片描述

还是不成功
2.利用堆叠注入
(1)查找所有数据库
在这里插入图片描述

(2)查询所有表名
在这里插入图片描述

(3)查询Flag表中的列
在这里插入图片描述

不成功
3.接下来是网上的两种解法,参照了网上大佬们的WP,自己做的一些总结
(1)第一种是猜出了源码select $_POST[‘query’] || flag from Flag,
sql_mode 设置了 PIPES_AS_CONCAT 时,|| 就是字符串连接符,相当于CONCAT() 函数
当 sql_mode 没有设置 PIPES_AS_CONCAT 时 (默认没有设置),|| 就是逻辑或,相当于OR函数
第一种就按默认没有配置来进行,此时||就是逻辑或
||在命令执行中见过,
回顾:
command1;command2顺序执行
command1 || command2
如果command1执行失败,则执行command2
command1 && command2
如果command1执行成功,则执行command2

因此只需要将

$_POST[‘query’]

提交的数据换成*,1(如果直接写的话会被报错,且写在后面会失效)
解释:
sql=select.post[‘query’].“||flag from Flag”;(拼接语句)
如果$post[‘query’]的数据为

*,1

sql语句就变成了select *,1||flag from Flag,
就是select *,1 from Flag,这样就直接查询出了Flag表中的所有内容。
此处的1是临时增加一列,列名为1且这一列的所有值都为1

执行payload:*,1
在这里插入图片描述

得到flag
(2)第二种是将||作为字符串连接符,因此需要在语句中更改其配置
sql_mode=PIPES_AS_CONCAT时即可
Payload:1;set sql_mode=PIPES_AS_CONCAT;select 1
拼接完之后:select 1;set sql_mode=PIPES_AS_CONCAT;select 1||flag from Flag
相当于是select 1 from Flag和select flag from Flag
在这里插入图片描述

得到flag

BUU ctf [SUCTF 2019]EasySQL 1 [SUCTF 2019]EasySQL 1 本题是 EasySQL 但是我感觉一点都不简单 。 我们打开界面发现很像上一关的随便注,但是我尝试了 联合查询 报错注入 布尔盲注 堆叠注入 发现都不能查询到 flag 。仅仅堆叠注入可以查询的 tables 一级。 查询过大佬的博客后发现本题考查的是 sql_mode sql_mode:是一组mysql支持的基本语法及校验规则 PIPES_AS_CONCAT:将“||”视为字符串的连接操作符而非或运算符,这和Oracle数据库是一样的,也和字符串的拼接函数 阅读详情

相关推荐

Buuctf-Web-[极客大挑战 2019]EasySQL 1 题解及思路总结

SQL注入。

m0_62239233的博客 2万+

[SUCTF 2019]EasySQL1 题目分析与详解

EasySQL

2302_79800344的博客 1万+

BUUCTF [SUCTF 2019]EasySQL1 writeup

很简单的,但是注入条件十分有限,只有调用数据库的函数支持执行多条语句才能够使用,mysqli_multi_query()函数,大多开发人员不会用这个,往往开发用的是mysqli_query函数,只执行一条语句;然后我就想执行select * from Flag嘛,em,可是fuzz得到from关键字是被挡的;实现select *,1 from Flag执行,select **** from Flag不执行。相当于是select 1 from Flag和select flag from Flag。

2401_83237906的博客 1506

BUUCTF-[SUCTF 2019]EasySQL1

题目: 分析: 先尝试输入。 输入非0数字的时候会有一个回显 输入大小写字母的时候没有回显 判断是什么闭合:输入1#能输出,而输入 1' 和1'#没有输出,"被过滤掉,大致上可以按照数字型进行猜测。 输入特殊字符也没有报错回显,所以报错注入基本上没戏了 输入很多关于sql语句的东西(and,or,union,if,order from )都会显示Nonono,所以联合查询也没戏 再尝试时间盲注 ,sleep也被ban了,时间盲注也不行 再尝...

Monica的博客 3873

【Codesys】-扫描添加失败,手动添加第三方模块,真·DC模式的高速计数模块

欧姆龙耦合器(NX-ECC201)和高速计数模块(NX-EC0132)单独使用。扫描设备添加到Codesys中,会报错,无法自动添加。记录一下,以防忘记。高速的计数保证了位置的准确性,位置准确就能保证裁切的精度,一切的基础就在这儿了,奈何目前只有欧姆龙和倍福能做到这样的波形。

qq_35316470的博客 1390

告别理论!手把手教你用Patran/Nastran搞定机翼颤振分析(附完整模型文件)

本文提供了一份详细的机翼颤振分析实战指南,使用Patran/Nastran软件从零开始构建完整分析模型。涵盖几何建模、网格划分、模态分析到气动弹性耦合的全流程,特别适合航空航天领域工程师学习颤振分析技术。教程包含完整模型文件和实用脚本,帮助读者快速掌握这一关键飞行器设计技能。

weixin_30879169的博客 543

[SUCTF 2019]EasySQL 1

摘要 本文详细记录了[SUCTF 2019]EasySQL 1题目的解题过程。通过分析题目界面和尝试基本注入方法,发现传统SQL注入被过滤。转而使用堆叠注入技术,成功获取数据库和表名(发现Flag表)。推测后端查询逻辑为"select 输入||flag from Flag",最终通过两种方法获取flag:1)输入"*,1"构造查询语句;2)修改sql_mode将||转为字符串连接。 写于2023/11/28

ZZHow Blog 1559

交换机基本介绍(分类、性能指标、硬件构成及工作方式)

一、交换机的分类与性能指标 1.1交换机的分类 按照网络构成方式来分的话,交换机分为三类:接入层交换机、汇聚层交换机和核心层交换机。 按照OSI模型来划分的话,分为:二层交换机、三层交换机和四层交换机 还有一种按照硬件形态来划分,可以分成两类:盒式交换机和机框式交换机。 盒式交换机是一种有固定端口数,有时也会带有少量扩展槽的交换机。机架式交换机是一种插槽式的交换机,这种交换机扩展性较好,可支持不同的网络类型,可支持更大端口密度的网络。一般在数据中心的接入层都会采用盒式交换机,盒式...

monologuezjp的博客 4万+

BUUCTF - [SUCTF 2019]EasySQL1

猜测后端执行语句 测试环境:BUUCTF - [SUCTF 2019]EasySQL1 通过测试发现,输入数字的时候,页面回显 输入字母页面就没有回显 而尝试执行注入语句的时候,会显示一个nonono 也就是说,没有回显,联合查询基本没戏。 好在页面会进行相应的变化,证明注入漏洞肯定是有的。而且注入点就是这个POST参数框框,就是那个inject参数。 至少我们可以把精力全部放在这个参数上。...

白帽子续命指南 7562

eNSP安装教程

eNSP安装教程一、安装eNSP1、先安装依赖组件2、安装eNSP主程序eNSP+V100R003C00SPC100+Setup ---不要安装在中文路径下3、安装完成后注册设备 一、安装eNSP 程序包位置:https://drive.weixin.qq.com/s?k=AOgAQQfOAAsw1wAKEgAAcAbgbSAKQ 1、先安装依赖组件 依赖组件: WinPcap_4_1_3 —直接下一步,但不要安装在中文路径下 Wireshark_v3.4.6 或者wireshark-win3

qimowei的博客 8668

CentOS8安装NVIDIA显卡驱动、CUDA和Anaconda

CentOS8安装NVIDIA显卡驱动和CUDA 参考:CentOS nvidia+cuda+cudnn 安装 安装英伟达显卡驱动 1、检查是否安装了NVIDIA的GPU(硬件层面): lspci | grep -i nvidia 2、安装GCC、kernal组件、dkms等 sudo yum install gcc sudo yum install gcc-c++ sudo yum -y install kernel-devel sudo yum -y install kernel-headers s

智慧的旋风的博客 1万+

buuctf-[SUCTF 2019]EasySQL 1(小宇特详解)

buuctf-[SUCTF 2019]EasySQL 1(小宇特详解) 解法1 这里先用的是万能密码,发现不能使用,然后使用堆叠注入发现能够进行 堆叠注入查询数据库 1; show databases; 查询表名 1; show tables; 这里尝试直接访问Flag 1;show columns from Flag;# 发现不行 这里是最迷的一个地方,这里大佬能够猜出查询语句 select $_GET['query'] || flag from flag 这里的||在mysql中表示或,如果

小宇的web博客 1万+

稚晖君Dummy机械臂CAN总线控制详解:从代码到实战(附常见问题排查)

本文深入解析了稚晖君Dummy机械臂的CAN总线控制技术,从协议设计到代码实现,详细介绍了CAN总线在机械臂控制中的核心价值、通信协议栈设计、运动控制指令实现及常见问题排查方法。通过实战案例和代码示例,帮助开发者快速掌握机械臂CAN总线控制的关键技术。

uuu88的博客 295

[SUCTF 2019]EasySQL1 write up

[SUCTF 2019]EasySQL1 write up 本题所需知识点:堆叠注入 点开题目,题目只有一个输入框,发现是POST参数提交。 输入任意数字, 输入任意字符串,无反应或如下图 接下来尝试构造闭合,均无反应 ' 1' 1' or 1=1# 尝试堆叠注入,成功 1;show databases; 1;show tables; 在进一步的测试中,无效果。 1;select * from Flag; 同时尝试大小写,char字符拼接等方法绕过,无效果。 无耐,看大神的题解。https:

Teemos的博客 296

ENS160传感器原理图设计,已量产(空气质量传感器)

ENS160 是一款集成式数字空气质量传感器,核心优势源于 “MEMS 传感元件 + 内置微处理器” 的架构。

不脱发的程序猿 572

如何在 UniApp 中接入讯飞语音听写功能 文末附vue3+vue2完整代码

在开发过程中,我遇到了讯飞接口返回空数据的问题。通过仔细检查传送的每一帧数据,我发现问题出在第一帧的配置信息以及 Base64 数据的切片。确保每一帧的数据正确且符合接口要求,问题就能够得到解决。希望这个过程能帮助你在项目中顺利对接讯飞语音识别。

代码简单说 Vue、JAVA、PHP、Node.js 熟练运用,接口、架构、性能全搞定。 997

【BUUCTF系列】[SUCTF 2019]EasySQL1

本文分析了SQL注入的关键特征与绕过技术。通过1' or 1=1 #测试发现存在关键字过滤,堆叠注入可行但受限制。提出两种绕过方案:1)修改SQL模式使||转为字符串连接符;2)利用SELECT *返回所有字段。文章解析了短路逻辑、运算符重载等原理,并给出防御建议:禁用堆叠注入、参数化查询、输入验证等。强调技术研究需遵守法律授权与道德规范,附有详细的免责声明,提醒读者仅用于合法安全测试。全文150字,涵盖漏洞分析、技术方案与安全准则。

一只枷锁的博客 5742

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

[初级]sql注入之堆叠注入、运算符干扰[SUCTF 2019]EasySQL1

一道buuctf的题目 [SUCTF 2019]EasySQL1 并不难,主要靠猜。

BlingZeng的博客 834

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

上一篇: 关于phpStudy的Apache和MySQL启动失败解决方案
下一篇: [极客大挑战 2019]LoveSQL 1
qieziwa(boy)
博客等级 码龄7年 5712粉丝 160原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值