用ida打开,发现有很多地方为nop,动调发现跳到了nop里,地址为12d0
这题采用了一些手段无法用ida调试,改用ollydbg调试
运行一下看看,在未调试情况下
调试情况下
所以得知程序有反调,找到真正的逻辑在
控制程序走到这里,进行调试,逻辑很简单,将输入作为密钥,异或解密一段密文,其中一部分是@flare-on.com
密文在
c=[0x73,0x2E,0x09,0x00,0x16,0x00,0x49,0x22,0x01,0x40,0x08,0x0A,0x14]
f="@flare-on.com"
for i in range(len(c)):
print(chr(c[i]^ord(f[i])),end="")
将密钥输入获得flag
这里值得一提的是程序除了反调还有反虚拟机,需要关闭Hyper-V