首页
社区
课程
招聘
[原创]南邮ctf逆向py交易
发表于: 2019-2-18 13:54 4666

[原创]南邮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直播授课

收藏
免费 1
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回