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



相关文章
|
安全 大数据 数据挖掘
课时9:阿里云Web应用防火墙:全面保障网站的安全与可用性
阿里云Web应用防火墙(WAF)基于阿里巴巴十年攻防经验,提供全面的网站安全防护。它通过Web应用防护、CC攻击防护和业务风控,有效应对各类网络威胁,确保网站的安全与可用性。智能双引擎技术降低误报率,实时数据分析和虚拟补丁更新保障系统安全。WAF已成功护航多个重大活动,为企业提供高效、简便的安全解决方案。
397 0
WK
|
安全 Java 编译器
C++和Java哪个更适合开发web网站
在Web开发领域,C++和Java各具优势。C++以其高性能、低级控制和跨平台性著称,适用于需要高吞吐量和低延迟的场景,如实时交易系统和在线游戏服务器。Java则凭借其跨平台性、丰富的生态系统和强大的安全性,广泛应用于企业级Web开发,如企业管理系统和电子商务平台。选择时需根据项目需求和技术储备综合考虑。
WK
571 0
|
人工智能 搜索推荐 PHP
PHP在Web开发中的璀璨星辰:构建动态网站的幕后英雄###
【10月更文挑战第25天】 本文将带您穿越至PHP的宇宙,揭示其作为Web开发常青树的奥秘。通过生动实例与深入解析,展现PHP如何以简便、高效、灵活的姿态,赋能开发者打造动态交互式网站,同时不忘探讨其在新时代技术浪潮中面临的挑战与机遇,激发对技术创新与应用的无限思考。 ###
217 1
|
Web App开发 前端开发 JavaScript
Web开发者必收藏的10个实用网站,你还没收藏吗?
将这些网站收藏起来,定期访问,使它们成为您日常工作的一部分,助您在快速发展的 Web 开发领域保持领先。
483 2
Web开发者必收藏的10个实用网站,你还没收藏吗?
|
前端开发 安全 JavaScript
PHP与现代Web开发:探索PHP在构建动态网站中的角色和优势
【8月更文挑战第29天】 在数字时代的浪潮下,PHP以其独特的灵活性、易用性以及强大的社区支持,持续成为Web开发领域的重要力量。本文将深入探讨PHP如何适应现代Web开发的需求,通过具体示例揭示PHP的实际应用,并分析其在面对新兴技术挑战时的应对策略。我们将一探究竟,PHP如何在众多编程语言中脱颖而出,成为许多开发者和企业的首选。
|
安全 Shell PHP
pear文件利用 (远程文件下载、生成配置文件、写配置文件) 从一道题看——CTFshow私教 web40
pear文件利用 (远程文件下载、生成配置文件、写配置文件) 从一道题看——CTFshow私教 web40
887 0
|
存储 SQL PHP
Ctfshow web入门 PHP特性篇 web89-web151 全(三)
Ctfshow web入门 PHP特性篇 web89-web151 全(三)
878 2
|
算法 安全 Linux
Ctfshow web入门 PHP特性篇 web89-web151 全(二)
Ctfshow web入门 PHP特性篇 web89-web151 全(二)
663 0
|
存储 SQL 缓存
Ctfshow web入门 PHP特性篇 web89-web151 全(一)
Ctfshow web入门 PHP特性篇 web89-web151 全(一)
1604 0
|
JSON JavaScript 前端开发
Ctfshow web入门 nodejs篇 web334-web344
Ctfshow web入门 nodejs篇 web334-web344
525 0
下一篇
开通oss服务