re-ncov

一道迷宫题目

exe文件

idb分析文件

这题思路比较清晰,flag由四个‘-’分割成5个部分

第一部分为纯数字,这决定了接下来使用哪一个迷宫

剩下的四个部分为走迷宫的方案

因为有控制剩下四个部分的方案长度 且长度各不相同 所以4个迷宫一定也对应着这四个长度不相同的方案

把迷宫dump出来如下

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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
'''
|||||||||||||||
|||||||||||||||
|||||||||||||||
||s.........|||
|||||||||||.|||
||d||||||||.|||
||.||||||||.|||
||.||||||||.|||
||..........|||
|||||||||||||||
dddddddddsssssaaaaaaaaawww

|||||||||||||||||||
||s|||||||||||||d||
||..|||||||||||..||
|||..|||||||||..|||
||||..|||||||..||||
|||||..|||||..|||||
||||||..|||..||||||
|||||||..|..|||||||
||||||||...||||||||
|||||||||||||||||||
sdsdsdsdsdsdsddwdwdwdwdwdwdw

|||||||||||||||
||.........s|||
||.||||||||||||
||.||||||||||||
||.||||||||||||
||.||||||||||||
||.||||||||||||
||.||||||||||||
||.........d|||
|||||||||||||||
|||||||||||||||
aaaaaaaaasssssssddddddddd

|||||||||||||||
|||||||||||||||
|||..........||
|||.||||||||.||
|||.||||||||.||
|||.||||||||.||
|||.||||||||.||
|||s||||||||d||
|||||||||||||||
wwwwwdddddddddsssss

'''

果然每个迷宫对应的方案不同,然后按照相应的顺序 加上‘-’符号 构成flag

1
2
3
4
5
6
7
8
9
10
s1 = 'dddddddddsssssaaaaaaaaawww'
s2 = 'sdsdsdsdsdsdsddwdwdwdwdwdwdw'
s3 = 'aaaaaaaaasssssssddddddddd'
s4 = 'wwwwwdddddddddsssss'
print(hex(len(s1)))
print(hex(len(s2)))
print(hex(len(s3)))
print(hex(len(s4)))
print('4312' + '-' + s4 + '-' + s3 + '-' + s1 + '-' + s2)