【慕伏白】CTFHub 技能树学习笔记 -- Web 前置技能之HTTP协议
文章目录
- 1 请求方式
- 2 302 跳转
- 3 Cookie
- 4 基础认证
- 5 响应包源代码
1 请求方式
- 打开链接,如下图所示,翻译过来的意思是,HTTP的方法是
GET
,将其修改为CTFHUB
,即可获得flag;
- 打开BurpSuite,刷新页面,截取报文,如下图所示
- 将
GET
修改为CTFHUB
,点击发送,即可获取flag,如下图所示
2 302 跳转
- 打开链接,如下图所示,提示
No Flag Here
,点击Give me Flag
重新跳转回该页面;
- 考虑到题目名称为 302 ,表示临时重定向,用 Burp 截一下,检查一下他的 Response 响应包,发现 flag 藏在了这里;
3 Cookie
- 打开链接,如下图所示,提示
hello guest. only admin can get flag
,翻译过来就是权限不够,目前的身份是guest
,只有admin
才能访问;
- 用 Burp 截一下,检查请求头的
Cookie
字段,发现Cookie: admin=0
,如下图所示;
- 将
admin
复制为1
,发送请求包,即可得到 flag;
4 基础认证
参考资料 HTTP基本认证
密码随机,需要自己跑一遍
- 题目给了一个链接和一个附件,打开链接,如下图所示,提示
Here is your flag: click
;
- 点击后要求输入用户名密码,如下图所示;
- 根据上一道题的经验,盲猜用户名为
admin
,随便输入一串密码,并开启 Burp 截取,如下图所示,截取到一段密文;
- 对其进行
BASE64
解码后发现,正是我刚才输入的用户名密码,如下图所示;
- 下载附件,解压后发现,文件内是密码字典,如下图所示,考虑使用密码爆破;
- 由于解码后的密码格式为
[用户名]:[密码]
,因此需要将密码字典修改至相应的格式,写了一个批量 python 脚本,如下图所示;
- 执行 python 文件,可以得到转换格式后的密码字典,如下图所示;
- 下图为批量进行 base64 编码,并删除结尾的
=
的python
脚本;
- 执行后获得我们需要的密码字典,如下图所示;
- 将截取到的报文发送至
Intruder
,添加payload
后开始攻击,如下图所示;
- 找到状态码为
200
的payload
,即为正确密码,如下图所示,将其发送至Repeater
;
- 发送后获得 flag ,如下图所示;
5 响应包源代码
- 打开链接,如下图所示,是一个贪吃蛇游戏,可以通过 wasd 控制,还挺好玩的 : D ;
- 按
F12
打开代码审查,查看元素
,找到了 flag ,如下图所示;