UTCTF2020-babymips

整个程序是用C++编写的,但不难看出代码的意思,且逻辑简单,整个分析都在图中。

对应解题代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <stdio.h>

int main(){

//len = 78
unsigned char a1[] ={
0x62, 0x6C, 0x7F, 0x76, 0x7A, 0x7B, 0x66, 0x73, 0x76, 0x50,
0x52, 0x7D, 0x40, 0x54, 0x55, 0x79, 0x40, 0x49, 0x47, 0x4D,
0x74, 0x19, 0x7B, 0x6A, 0x42, 0x0A, 0x4F, 0x52, 0x7D, 0x69,
0x4F, 0x53, 0x0C, 0x64, 0x10, 0x0F, 0x1E, 0x4A, 0x67, 0x03,
0x7C, 0x67, 0x02, 0x6A, 0x31, 0x67, 0x61, 0x37, 0x7A, 0x62,
0x2C, 0x2C, 0x0F, 0x6E, 0x17, 0x00, 0x16, 0x0F, 0x16, 0x0A,
0x6D, 0x62, 0x73, 0x25, 0x39, 0x76, 0x2E, 0x1C, 0x63, 0x78,
0x2B, 0x74, 0x32, 0x16, 0x20, 0x22, 0x44, 0x19
};
unsigned char a2[78] = {0};

for(int i=0;i<78;i++){
a2[i] = a1[i] ^ (i+23);
printf("%c",a2[i]);
}

}
#utflag{mips_cpp_gang_5VDm:~`N]ze;\)5%vZ=C'C(r#$q=*efD"ZNY_GX>6&sn.wF8$v*mvA@'}
#没错!这个乱七八糟的就是flag

UTCTF2020-babymips
http://example.com/2023/09/04/CTF/UTCTF2020babymips/
作者
gla2xy
发布于
2023年9月4日
许可协议