nctf2020

re3

首先IDA打开分析,我啪的一下就找到了fake的main函数,很快啊。然后看到一个if判断,又啪的一下把输入给逆了出来,也是很快。但是我tm看到的是this_is_the_fake_flag,出题的你不讲武德。

然后再ida中注意到有一大段未成功显示的代码,然后就找到了真正的main函数和check函数。

1.在sub_401080函数中

 

可以从几个if条件中得到第4,11,16位的输入为@,_,-。

 

2.然后根据函数的开始通常为“push ebp”,“mov ebp,esp”,得到前3位输入为cp1。

 sub_401f50函数就是把输入的前三位和sub_4013d0异或得到真正的sub_4013d0函数。

 

3.然后在sub_4013d0函数中,就把输入的第二部分(从@符号后到-符号前的部分)进行AES加密。最后就是这个AES加密没看出来,可惜,苦呀西。

 

4.最后在check函数进行第二部分和第三部分的异或,再进行对比。虽说一开始的时候是不知道进行的异或操作,但是再调试的时候试着连续进行同一操作,发现数据没有改变。

 

posted @ 2020-11-24 15:43  mio_yy  阅读(193)  评论(0)    收藏  举报