攻防世界逆向:game wp
攻防世界逆向新手区的一道题目。
是一道windows的creak,动态调试打开是这样的:
题目说明是让屏幕上所有的图像都亮之后,会出现flag,看来应该是可以玩出来的。
IDA打开后,发现是静态链接。我首先shift 12看了一下,然后去rodata段看看能不能找出flag对应的字符串,无果。
然后找到主调函数,发现程序结束后,与flag对应的函数如下:
这样看来,把对应的变量存储在一个文件里,简单做一个算法逆向就可以了。脚本如下:
ls1=[] ls2=[] i=0 with open("C://Users//wolf//Desktop//xctf//re/game_numbers.txt","rb+") as f: for a in f.readlines(): a=int(str(a).replace("b'","").strip("\\r\\n'"),16) #print(a) i+=1 if i<=57: ls1.append(a) else: ls2.append(a) ind=0 flag="" for ind in range(0,56): ls1[ind]^=ls2[ind] ls1[ind]^=0x13 flag+=chr(ls1[ind]) print(flag)