赞
踩
今天遇到一个CTF题目, 题目打开是一个小游戏,堆砖块的。界面:
正常情况下,估计没人通关,flag 就在通关后才给,那只能借助Fiddler 来抓包看看了。
Fiddler 启动起来,把IP地址加入筛选器,只显示这个游戏窗口的的包。
同时 自动断点,在提交前断点,对于回合制的游戏,一般有两种方式提交结果,一个是每一个动作提交一次,一个是最后次数用完一次性提交,断点设置如下:
然后勾选 捕获请求或者按F12
然后玩几步游戏,发现没有向服务端请求包,证明是最后结算才请求,然后游戏玩到结算阶段,发现捕获了一个包,这个包就是向服务端提交成绩的包,此时我们修改包:要注意,只有成绩达到一个阈值才能返回flag, 得重复改包操作几次,确定最后是99999才能触发服务端返回flag,这里还有一个问题,sign 签名算法, 这里可以多尝试几次,看这个sign提交值的规则,发现是 “zmBase64(成绩)==” 所以需要把 Base64编码,然后提交,就得到flag
然后点击 返回结果后断点,提交就得到flag
这就是基于浏览器的数据包拦截和重放,当然你可以拦截https包,需要安装证书,然后分析包内容,剩下的事情就看你发挥了。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。