打开后发现是个游戏题,只需合成到P14即可。还不算太复杂
法一:玩通关【此方法过于浪费时间,不建议使用】
对于小白来说,代码看不懂是最大的问题,于是看着这道题通关还不算太麻烦,于是尝试通关。
此时控制台还未响应有用信息。
挑战成功后弹出窗口让我们输入team Token【随便输入了几个字符】
提示我们Your token must be 32 characters.Enjoy the Game!【此时输入的应该是32个字符】
于是重新挑战。
在控制台即可找到flag。
法二:读懂源代码【小白表示我也不会,于是请教了大佬L】
从gamen_manager.js中找到这个代码【这是javaScript代码】
if (f.value == 1024) {
t.won = !0;
var token = prompt("\x70\x6c\x65\x61\x73\x65 \x69\x6e\x70\x75\x74 \x79\x6f\x75\x72 \x74\x65\x61\x6d \x54\x6f\x6b\x65\x6e\x3a")['\x74\x72\x69\x6d']();//这串就是弹出让我们填写team token的窗口【这里使用prompt
函数提示用户输入团队令牌。字符串\x70\x6c\x65\x61\x73\x65 ...
是十六进制编码的,解码后变为“please input your team Token:”。】
$.ajax({
url: 'p14.php',
type: 'POST',
data: 'token=' + token,//访问p14.php,并用POST方法携带用户输入的token作为数据
success: function(data) {
var data = data;
console.log(data);
window["\x61\x6c\x65\x72\x74"]("\u606d\u559c\u4f60\u5f97\u5230\x66\x6c\x61\x67\u4e86\uff0c\u53bb\u5bfb\u627e\u5427\x7e\uff01");//这段的意思是你如果游戏挑战成功并且输入正确的字符数量,flag就会显示在控制台上。【消息内容经过十六进制和Unicode编码,解码后为“恭喜你得到flag了,去寻找吧~!”】
}
})
}
读懂代码后用hacker进行操作。
执行即可得到flag
【team token 好像一般是32位,不太清楚。】