从0开始学CTF[Web篇]
BugKu-game1[WEB]
大家好,作为一个CTF方面的小白,以后我也希望每做一次题目就和大家分享分享自己的解题过程
咱这次和大家分析分析这道题目:
实不相瞒,这道题目花费了我一些时间
先启动环境打开网页发现是一个游戏
养成习惯先F12看看源文件
作为一个游戏我的第一想法就是达到一定的分数会给我一些提示或者更改,所以直接尝试将我们的分数改成一个超大的值,我选择的是999999
那么接下来如何修改这个值就是一个问题了,为此我们先尝试找到与score有关的代码(这里出现了一个问题,就是我直接搜索score无法找到一些有用的代码,于是我尝试了score=,毕竟通过网页可以看出我们的分数是需要在游玩的同时显示出来的,就肯定要边玩边赋值)
于是乎,我们搜索到了:
这里我就发现了一个新的值:sign,后面还有一个base64肯定是要用到解密或者加密的,然后我们可以开始玩玩游戏在此时发现当我们失败的时候在控制台会显示这样的:
就对应了上文open()中的格式,但是我们在此处无法修改我们的分数,于是我们可以抓包
在游戏结束后我们也可以得到相应的数值
然后,我们可以在此处修改socre=999999
在多次运行是可以发现sign=zM是一个必要的格式这里是不可以修改的只能修改后面的字符,由上文可知sign是由base64编码的score,所以这里我们可以借用工具
然后将其赋值在sing=zM后面得到:
这一串我们就可以通过添加在url后面来更新网页,然后我们再次刷新网页最后可以得到flag
输入到BugKu中即可
感谢收看,希望大家有意见可以提出