攻防世界 reverse re4-unvm-me
re4-unvm-me alexctf-2017
pyc文件,祭出大杀器EasyPythonDecompiler.exe
得到源代码:
1 # Embedded file name: unvm_me.py 2 import md5 3 md5s = [174282896860968005525213562254350376167L, 4 137092044126081477479435678296496849608L, 5 126300127609096051658061491018211963916L, 6 314989972419727999226545215739316729360L, 7 256525866025901597224592941642385934114L, 8 115141138810151571209618282728408211053L, 9 8705973470942652577929336993839061582L, 10 256697681645515528548061291580728800189L, 11 39818552652170274340851144295913091599L, 12 65313561977812018046200997898904313350L, 13 230909080238053318105407334248228870753L, 14 196125799557195268866757688147870815374L, 15 74874145132345503095307276614727915885L] 16 print 'Can you turn me back to python ? ...' 17 flag = raw_input('well as you wish.. what is the flag: ') 18 if len(flag) > 69: 19 print 'nice try' 20 exit() 21 if len(flag) % 5 != 0: 22 print 'nice try' 23 exit() 24 for i in range(0, len(flag), 5): 25 s = flag[i:i + 5] 26 if int('0x' + md5.new(s).hexdigest(), 16) != md5s[i / 5]: 27 print 'nice try' 28 exit() 29 30 print 'Congratz now you have the flag'
没什么办法,在线解md5或者本地硬跑。
幸运的是在线都可以解出来
https://www.cmd5.com/ (有两个竟然要收费)
https://www.somd5.com/ (所以就有了他)
十六进制md5数据:
831daa3c843ba8b087c895f0ed305ce7
6722f7a07246c6af20662b855846c2c8
5f04850fec81a27ab5fc98befa4eb40c
ecf8dcac7503e63a6a3667c5fb94f610
c0fd15ae2c3931bc1e140523ae934722
569f606fd6da5d612f10cfb95c0bde6d
068cb5a1cf54c078bf0e7e89584c1a4e
c11e2cd82d1f9fbd7e4d6ee9581ff3bd
1df4c637d625313720f45706a48ff20f
3122ef3a001aaecdb8dd9d843c029e06
adb778a0f729293e7e0b19b96a4c5a61
938c747c6a051b3e163eb802a325148e
38543c5e820dd9403b57beff6020596d
解密数据:
ALEXC
TF{dv
5d4s2
vj8nk
43s8d
8l6m1
n5l67
ds9v4
1n52n
v37j4
81h3d
28n4b
6v3k}
ALEXCTF{dv5d4s2vj8nk43s8d8l6m1n5l67ds9v41n52nv37j481h3d28n4b6v3k}