game1WEB 未解决

分数: 15 金币: 3
题目作者: Aman
一  血: 犬来八荒
一血奖励: 3金币
解  决: 13455
提  示:
描  述:
game1
评论
一个姓⎝李⎠的师傅~ 1年前

解题思路:https://www.yuque.com/u21437924/ap9vtm/gqkc3dcfmfpe5p85?singleDoc#J4mc1

回复 18
qqai 1月前

好厉害!

回复 0

一个姓⎝李⎠的师傅~ 11月前

@爱坤 哈哈哈,有帮助就好!不客气!加油!

回复 1

爱坤 11月前

开悟了,谢谢佬

回复 1

18649961652 11月前

解题思路写的真好 nbnb

回复 1

一个姓⎝李⎠的师傅~ 1年前

@韭菜叶花肉来个茶蛋 不客气~

回复 1

韭菜叶花肉来个茶蛋 1年前

感谢分享

回复 1

zhenhui 1年前

sign一定要拼接前缀zM否则会提示失败QAQ

回复 1

CarsonNiu 1年前

flag{********}

回复 0

gxrtbtc 1年前

curl -v \ "http://117.72.52.127:14873/score.php?score=10000&ip=117.181.23.246&sign=zMMTAwMDA==" \ 必须要cookie,没有连接不成功,zM+base64+==重点是这个,前面有zM后面有==

回复 0

brave1987 1年前

flag{********}

回复 0

2686213396 1年前

首先通过bp抓包发现规律,每场游戏结束,都会向服务器上传游戏数据,该数据包含内容有分数,ip地址,和sign(作为数字签名进行校验,但是弱校验,可以通过逆向工程发现规律,base64逆向编码),通过构造一个超额分数进行绕过,获取flag(逆向签名规则+构造非法请求)

回复 3

yuans 1年前

不知道score.php对GET /score.php?score=99999&ip=xxxx&sign=zMOTk5OTk==== HTTP/1.1 怎么处理的,我在sign后面加多少=都可以给出flag,正常应该是zMOTk5OTk===数据,有无大佬能解释一下啊。

回复 0
awuawu 1年前

标准的base64解码器只关注有效的 Base64 字符,会自动忽略多余的 =

回复 0

jiusi 1年前

游戏结束会有得分,请求中带了sign,一般是签名使用,签名算法:var sign = Base64.encode(score.toString()); 直接控制台,console.log(Base64.encode('99999')),改后的score和sign值改好法宝就有了

回复 3

kkl0110 1年前

index断点,重写了encode方法,return返回ZM???==

回复 0

一蹉蹉 1年前

1.点击F12,打开浏览器上的抓包,然后点击网络,在重新运行一次游戏,右侧网络中抓到对应的流量,查找sign(因为按照常理来讲,通关之后就可以得到flag),将通关分数改高一点就可以成功 2.通过筛选sign ,可以得到一个 文件,score.php,右键单击找到网址,再在网址的基础上更改 score=99999,以及对应的base64值

回复 2
ndzdb 5月前

通关之后就可以得到flag),将通关分数改高一点就可 解释了我疑惑为什么都要把数值设置很高的问题

回复 0

WriteUp

image
hu1y40

3 金币

评分(33)

解题动态

黄金抠鼻屎 攻破了该题 6小时前
mjq1210 攻破了该题 8小时前
muhkter8 攻破了该题 1天前
ysjy 攻破了该题 1天前
qmstraw 攻破了该题 2天前
asasehotaru 攻破了该题 2天前
1537894 攻破了该题 2天前
恣睢 攻破了该题 2天前
写作业ing 攻破了该题 3天前
4668FTY 攻破了该题 3天前
胡桃 攻破了该题 3天前
wrcoco 攻破了该题 3天前
sanyi_666 攻破了该题 3天前
许念安 攻破了该题 3天前
ggvchen 攻破了该题 3天前
花开花落 攻破了该题 3天前
婉约派 攻破了该题 3天前
songyu0452 攻破了该题 3天前
yangjh1 攻破了该题 4天前
sekiroustc 攻破了该题 4天前
问题反馈