ctfshow-萌新-web4( 利用逻辑运算符绕过获取网站敏感信息)

简介: ctf.show 萌新模块 web4关,这一关考察的是 intval()函数转换字符串的特性,以及SQL注入漏洞的绕过方式,源码中过滤了or,加减乘除(+-*/),左右移,括号,|,select等关键字,我们使用短路逻辑或(||)来替替代 or 即可

ctf.show 萌新模块 web4关,这一关考察的是 intval()函数转换字符串的特性,以及SQL注入漏洞的绕过方式,源码中过滤了or,加减乘除(+-*/),左右移,括号,|,select等关键字,我们使用短路逻辑或(||)来替替代 or 即可


image.png

页面中展示了部分源码,提示我们 id=1000 时,即可获取flag

image.png

首先分析一下思路,源码中过滤了参数中的 or - / * < > ! ( ) + select 等关键字,所以我们的参数中不能包含这些关键字,否则会直接 die;而后intval()函数会将参数转换成整数,我们可以利用特殊则字符( 逻辑或 ||)来绕过intval()函数的转换;最后就是控制SQL语句查询 id=1000 时的flag;构造payload如下

?id=2 || id = 1000

image.png

intval()函数在转换整数时,如果被转换的是字符串,则会从最左边第一个字符开始转换,直到遇到非整数的字符才会停止转换


image.png


我们构造的参数,被后端通过get请求获取后,拿到的是一个字符串 ‘2 || id = 1000’


image.png


这个字符串被intval() 函数转换后的结果是 2 (因为字符 | 是非整数的字符,所以会停止转换), 2 > 999 if 判断返回false, 从而进入else中执行SQL语句


image.png


我们构造的参数拼接到SQL中,会变成下面这个样子

select * from article where id = 2 || id = 1000 order by id limit 1

id=1 时的查询结果


image.png


id=2时的查询结果

image.png

id=1时正常查询结果,而 id=2 时查询结果为空,也就是说,id=2没有对应的信息


SQL会查询 id=2 或者 id=1000的信息,由于 id=2 时,没有返回的信息,所以这里只会返回 id=1000 时的信息,从而获取flag



相关文章
|
2月前
|
Web App开发 前端开发 JavaScript
Web开发者必收藏的10个实用网站,你还没收藏吗?
将这些网站收藏起来,定期访问,使它们成为您日常工作的一部分,助您在快速发展的 Web 开发领域保持领先。
115 2
Web开发者必收藏的10个实用网站,你还没收藏吗?
|
1月前
|
人工智能 搜索推荐 PHP
PHP在Web开发中的璀璨星辰:构建动态网站的幕后英雄###
【10月更文挑战第25天】 本文将带您穿越至PHP的宇宙,揭示其作为Web开发常青树的奥秘。通过生动实例与深入解析,展现PHP如何以简便、高效、灵活的姿态,赋能开发者打造动态交互式网站,同时不忘探讨其在新时代技术浪潮中面临的挑战与机遇,激发对技术创新与应用的无限思考。 ###
36 1
WK
|
1月前
|
安全 Java 编译器
C++和Java哪个更适合开发web网站
在Web开发领域,C++和Java各具优势。C++以其高性能、低级控制和跨平台性著称,适用于需要高吞吐量和低延迟的场景,如实时交易系统和在线游戏服务器。Java则凭借其跨平台性、丰富的生态系统和强大的安全性,广泛应用于企业级Web开发,如企业管理系统和电子商务平台。选择时需根据项目需求和技术储备综合考虑。
WK
83 0
|
4月前
|
存储 前端开发 搜索推荐
Web前端网站(三)- 记事本
【8月更文挑战第8天】多种颜色搭配的动态粒子背景特效(粒子会随着鼠标的移动进行吸附,好看又好玩),左右摆动的文字特效,并且使用localStorage进行数据的持久化存储,使记事本的内容可以长期的保存在浏览器中,功能包括添加留言、显示留言、删除留言。每一行代码都有详细注释~~~大家可以尽情创作
70 5
Web前端网站(三)- 记事本
|
4月前
|
前端开发 搜索推荐 JavaScript
Web前端网站(四)- 音乐播放器
【8月更文挑战第9天】页面整体色调背景采用柔和渐变的方式呈现,与主页面的“毒药水式”色彩搭配形成了强烈的对比;周边花瓣缓缓飘落到水面之上形成涟漪。整体给人一种温馨、浪漫的感觉,还可以通过中间的3个按钮来控制音乐的切换和播放效果。每一行代码都有详细注释~~~大家可以尽情创作
51 2
Web前端网站(四)- 音乐播放器
|
4月前
|
存储 SQL PHP
Ctfshow web入门 PHP特性篇 web89-web151 全(三)
Ctfshow web入门 PHP特性篇 web89-web151 全(三)
46 2
|
4月前
|
前端开发 安全 JavaScript
PHP与现代Web开发:探索PHP在构建动态网站中的角色和优势
【8月更文挑战第29天】 在数字时代的浪潮下,PHP以其独特的灵活性、易用性以及强大的社区支持,持续成为Web开发领域的重要力量。本文将深入探讨PHP如何适应现代Web开发的需求,通过具体示例揭示PHP的实际应用,并分析其在面对新兴技术挑战时的应对策略。我们将一探究竟,PHP如何在众多编程语言中脱颖而出,成为许多开发者和企业的首选。
|
4月前
|
安全 Shell PHP
pear文件利用 (远程文件下载、生成配置文件、写配置文件) 从一道题看——CTFshow私教 web40
pear文件利用 (远程文件下载、生成配置文件、写配置文件) 从一道题看——CTFshow私教 web40
208 0
|
4月前
|
算法 安全 Linux
Ctfshow web入门 PHP特性篇 web89-web151 全(二)
Ctfshow web入门 PHP特性篇 web89-web151 全(二)
99 0
|
4月前
|
存储 SQL 缓存
Ctfshow web入门 PHP特性篇 web89-web151 全(一)
Ctfshow web入门 PHP特性篇 web89-web151 全(一)
114 0
下一篇
DataWorks