-
-
[原创]南邮ctf逆向py交易
-
发表于: 2019-2-18 13:54 4666
-
这个题是python字节码文件,需要将字节码文件转换为对应的源代码
使用这个网站对pyc文件进行逆向操作:1e8K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6@1L8$3!0D9i4K6u0W2L8s2g2Q4x3V1k6H3P5h3y4Q4x3V1j5`.
逆向后的python代码如下:
#!/usr/bin/env python # encoding: utf-8 # 如果觉得不错,可以推荐给你的朋友!17dK9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8Y4c8G2L8$3I4Q4x3X3g2D9N6g2)9J5c8Y4m8&6j5H3`.`. import base64 def encode(message): s = '' for i in message: x = ord(i) ^ 32 x = x + 16 s += chr(x) return base64.b64encode(s) correct = 'XlNkVmtUI1MgXWBZXCFeKY+AaXNt' flag = '' print 'Input flag:' flag = raw_input() if encode(flag) == correct: print 'correct' else: print 'wrong'
思路还是比较简单,就是将输入的flag经过encode()函数之后要等于correct,这里主要对encode()函数进行逆向操作。
b='XlNkVmtUI1MgXWBZXCFeKY+AaXNt' a=base64.b64decode(b) for i in a: j=i-16 j=j^32 print(chr(j),end='')
答案:nctf{d3c0mpil1n9_PyC}
#!/usr/bin/env python # encoding: utf-8 # 如果觉得不错,可以推荐给你的朋友!17dK9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8Y4c8G2L8$3I4Q4x3X3g2D9N6g2)9J5c8Y4m8&6j5H3`.`. import base64 def encode(message): s = '' for i in message: x = ord(i) ^ 32 x = x + 16 s += chr(x) return base64.b64encode(s) correct = 'XlNkVmtUI1MgXWBZXCFeKY+AaXNt' flag = '' print 'Input flag:' flag = raw_input() if encode(flag) == correct: print 'correct' else: print 'wrong'
思路还是比较简单,就是将输入的flag经过encode()函数之后要等于correct,这里主要对encode()函数进行逆向操作。
b='XlNkVmtUI1MgXWBZXCFeKY+AaXNt' a=base64.b64decode(b) for i in a: j=i-16 j=j^32 print(chr(j),end='')
答案:nctf{d3c0mpil1n9_PyC}
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课
赞赏
他的文章
- [原创]angr/pyvex模块学习 9205
- [原创] Valgrind VEX IR 9730
- [原创]内存映射文件-进程间共享数据 11991
- [求助]C#反编译字符串出现乱码如何解决 4368
- [原创]windows dll注入/Api钩取技术简单总结 57674
赞赏
雪币:
留言: