没想到是需要抓包修改,以前做过一个2048的游戏题目,所以以为是JS的题目。 看了下面师傅们的wp,总结一下就是: 开始游戏,进行抓包,抓取给分的那一个数据包,放到repeater中。 参数sign后面的字符串="zM"+base64(分数)+几个等号 将分数换成一个大点,同时修改score为对应的分数,进行提交。 (有个小问题就是,需要在sign后面加上几个=才行,
1.数据包 2.加密 3.相同数据提交
考虑的是参数和数值与编码关系。还是要一点小脑筋的。
get传参 http://114.67.246.176:13881/score.php?score=1625275733458&ip=183.214.173.226&sign=zMMTYyNTI3NTczMzQ1OA====
搞不明白为何需要sign=zM保留zM,后面base64后的分数还需要加多一个=才能出flag
随便玩一下游戏,Bp抓包,score.php?score=你的分数,改成大点的数,sign=zM后边的用64encode一下换上就好了。
@wongym1992 把原始分数用base64加密,就看出来了
怎么发现zM的?
有师傅实战遇到过这种嘛,感觉蛮有意思的,但实战我是不可能想到的
游戏通关就能拿到flag,玩一局游戏看最后出分数时往服务器发送的数据包,修改参数
主要是对于base编码的破译,然后就是bp操作就行
思路:1,先开启BP抓包,2.玩游戏,3.游戏结束后,BP可以抓到发送包,里面会有而score、sign,sign步不能直接base64编码,需要把前两位、后两位去掉,解码得到分值。取一个超大的分值编码后加上头2位,末两位组成新的sign,score的值修改位对应的分值即可
...
评论
upstream逆流 3年前
举报
没想到是需要抓包修改,以前做过一个2048的游戏题目,所以以为是JS的题目。 看了下面师傅们的wp,总结一下就是: 开始游戏,进行抓包,抓取给分的那一个数据包,放到repeater中。 参数sign后面的字符串="zM"+base64(分数)+几个等号 将分数换成一个大点,同时修改score为对应的分数,进行提交。 (有个小问题就是,需要在sign后面加上几个=才行,
HippoCurl 3年前
举报
1.数据包 2.加密 3.相同数据提交
iFound 3年前
举报
考虑的是参数和数值与编码关系。还是要一点小脑筋的。
鬼才 3年前
举报
get传参 http://114.67.246.176:13881/score.php?score=1625275733458&ip=183.214.173.226&sign=zMMTYyNTI3NTczMzQ1OA====
kuaiting 3年前
举报
搞不明白为何需要sign=zM保留zM,后面base64后的分数还需要加多一个=才能出flag
TigerLeo 3年前
举报
随便玩一下游戏,Bp抓包,score.php?score=你的分数,改成大点的数,sign=zM后边的用64encode一下换上就好了。
0Monster 3年前
举报
@wongym1992 把原始分数用base64加密,就看出来了
wongym1992 3年前
举报
怎么发现zM的?
aooooooooo 3年前
举报
有师傅实战遇到过这种嘛,感觉蛮有意思的,但实战我是不可能想到的
dgdgdgnh 3年前
举报
游戏通关就能拿到flag,玩一局游戏看最后出分数时往服务器发送的数据包,修改参数
臭虫hacker 3年前
举报
主要是对于base编码的破译,然后就是bp操作就行
lffgxu 3年前
举报
思路:1,先开启BP抓包,2.玩游戏,3.游戏结束后,BP可以抓到发送包,里面会有而score、sign,sign步不能直接base64编码,需要把前两位、后两位去掉,解码得到分值。取一个超大的分值编码后加上头2位,末两位组成新的sign,score的值修改位对应的分值即可