
下载下来 看看,查一下

和题目的名字一致,是一个python打包的文件,就简单了,
接下来就是使用pyinstxtractor.py把exe解包成pyc的文件,然后用pycdc或者在线网站把pyc转换成py文件,可以参考我的另一个帖子
BUUCTF-[NewStarCTF 2023 公开赛道]PZthon
这里就直接上代码吧
flag = ''
encode = 'REla{PSF!!fg}!Y_SN_1_0U'
table = [
7,
8,
1,
2,
4,
5,
13,
16,
20,
21,
0,
3,
22,
19,
6,
12,
11,
18,
9,
10,
15,
14,
17]
def enc(input):
tmp = ''
for i in range(len(input)):
tmp += input[table[i]]
return tmp
if __name__ == '__main__':
print('Please input your flag:')
flag = input()
if len(flag) != 23:
print('Length Wrong!!')
else:
final = enc(flag)
if final == encode:
print('Wow,you get the right flag!!')
else:
print('Sorry,Your input is Wrong')
简单清晰,逻辑就是个替换
flag = [0]*23
encode = 'REla{PSF!!fg}!Y_SN_1_0U'
table = [
7,
8,
1,
2,
4,
5,
13,
16,
20,
21,
0,
3,
22,
19,
6,
12,
11,
18,
9,
10,
15,
14,
17]
for k in range(23):
flag[table[k]]=encode[k]
print(''.join(flag))
#flag{PYRE_1S_S0_FUN!!!}
稍作修改,直接获得flag,只要工具到位,几分钟就搞定了,甚至没有写WP时间长
1170

被折叠的 条评论
为什么被折叠?



