boomshakalaka-3

题目来源: 0CTF-2016

题目描述:play the game, get the highest score

 

 

发现程序是一个用Cocos2D写的打飞机游戏

首先先看java层,发现程序向flag这个SharedPerferences写了"YmF6aW5nYWFhYQ==",显然是base64,解码得到"bazingaaaa",但是这个不是flag

程序还向Cocos2dxPrefsFile这个SharedPreferences中写了"MGN0"

之后分析so文件,找到与分数相关的部分,找到了updateScore函数,发现是达到一定分数就动态向里面添加内容

因此按照分数从小到大(其实也是IDA分析出的顺序)继续补全

查看Cocos2dxPrefsFile文件,发现每次的字符串都以"dz99"结尾,猜测是在结束时写入的

因此拼接得到"MGN0ZntDMGNvUzJkX0FuRHJvMWRfRzBtRV9Zb1VfS24wdz99"

base64解码得到flag

0ctf{C0coS2d_AnDro1d_G0mE_YoU_Kn0w?}

posted @ 2021-08-24 22:46  hktk1643  阅读(111)  评论(0编辑  收藏  举报