normal3

这题是个elf的文件

ida打开

找到关键加密部分

这里是把flag丢入一个递归函数,将data的奇数和偶数位分开丢入s1

写脚本也不难,按照打乱顺序的方式检索再丢回来就好了

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
data= list("bcec8d7dcda25d91ed3e0b720cbb6cf202b09fedbc3e017774273ef5d5581794")
string_flag = list("bcec8d7dcda25d91ed3e0b720cbb6cf202b09fedbc3e017774273ef5d5581794")
x=[0]
def func1(a):
if (a<=63):
string_flag[a] = data[x[0]] #将data中的乱序按照原题目递归的方式送入flag中
x[0]+=1
func1(2*a+1) #奇数
func1(2*(a+1)) #偶数递归
func1(0)
flag = ""
for i in string_flag:
flag = flag + i
print (flag)