xor
步骤:
附件很小,直接用ida打开,根据检索得到的字符串,找到程序关键函数
程序很简单,一开始让我们输入一个长度为33的字符串给v6,然后v6从第二个字符开始与前一个字符做异或运算,得到的字符串与global比较,如果相同,我们输入的字符串就是flag
看一下global的值
global = [‘f’, 0x0A, ‘k’, 0x0C, ‘w’, ‘&’, ‘O’, ‘.’, ‘@’, 0x11, ‘x’, 0x0D, ‘Z’, ‘;’, ‘U’, 0x11, ‘p’, 0x19, ‘F’, 0x1F, ‘v’,’"’, ‘M’, ‘#’, ‘D’, 0x0E, ‘g’, 6, ‘h’, 0x0F, ‘G’, ‘2’, ‘O’]
异或运算,两次异或会还原,所以我们将global字符串根据上面的规则异或一下就能得到flag
推荐字符串在ida里复制,手敲容易出错
int型的数字要转换成字符型,也可以一开始写的时候就写出字符型