判断页面数据列数量
使用group by判断?id=1’ group by 5 --+发现报错
使用二分法逐一实验,发现当group by 3时没有报错
使用order by有相同效果
输入?id=1’ union select 1,2,3–+,后面1,2,3为了让数据库占用足够三位,与列数保持一致,发现页面无变化,因为页面最多显示第一条信息,我们使第一行不存在,输入?id=-1’ union select 1,2,3–+此时id可以为任意负数(因为服务器id一般不为负数,如果负数失败,还可以尝试0或其他数字)
输出结果为我们输入的数字2和3
我们将2或三改为database()输入如下?id=-1’ union select 1,2,database()–+,可以看到我们原本3的位置变为数据库名称。我们还可以改为version()来查看数据库版本。为什么不能替换数字1,因为数字1我们看不到输出结果,无法做出判断