第二篇博客
题目信息
- 比赛:NISACTF 2022
- 题目名:sign-ezc++
- 类型:Reserve(逆向工程)
1. 查壳
首先将文件拖入exeinfpoe进行查壳,结果发现没有壳,是64位的
2. 逆向分析
将文件拖入IDA中反汇编一下
接着跟进一下Human::~Human
继续跟进off_4863D0
看到了一串代码_ZN5Human9give_flagEv继续跟进一下
再次进行一次反汇编
看到了flag,我们在跟进一次
可以知道这是一个异或,那我们就看一下它的调用
3. 解码
代码如下:
Des = [0x44, 0x59, 0x59, 0x49, 0x5E, 0x4C, 0x71, 0x7E, 0x62, 0x63,
0x79, 0x55, 0x63, 0x79, 0x55, 0x44, 0x43, 0x59, 0x4B, 0x55,
0x78, 0x6F, 0x55, 0x79, 0x63, 0x6D, 0x64, 0x77]
flag = ‘’
for i in Des:
flag += chr(i ^ ord(‘\n’))
print(flag)
这样就得到了flag
4. Flag
NSSCTF{this_is_NISA_re_sign}