import imp
s = ''
if imp.get_magic() != 'm\xf2\r\n':
raise RuntimeError, s
try:
import zlib
except:
raise RuntimeError, ''
import marshal
import sys
import os
for p in filter(os.path.exists, map(lambda p: os.path.join(p, 'ind.pyz'), sys.path)):
f = open(p, 'rb')
exec marshal.loads(zlib.decompress(f.read(905)))
boot('ind', f, 64608)
break
import inca
我在ind.pyc文件中有此代碼。現在我想知道:Python zlib解壓縮,元帥加載和啓動
這是什麼代碼?我可以看到用zlib首先905字節解壓縮ind.pyz? 然後啓動ind.pyz(第一個64608字節?)。我明白了,不是嗎?
「ind.pyz」這應該是什麼?一個可執行文件或編譯好的pyc,python文件? 我試圖反編譯.pyz文件,但我不能。並且是否有這些文件的反編譯軟件?
我真的被卡住了,這裏是ind.pyz文件(64kb)如何壓縮這個文件? https://mega.co.nz/#!hIkH3RSI!f3UDHGI9omXXN7jXHJKYTCpMCU0y8N3npop6a3tfmcw
是否有可能從加載了marshal.loads()'''的字符串獲取源代碼?是「是」,怎麼樣? – alexandernst
@alexandernst這是一個完全獨立的問題,我不知道簡單的答案;即使術語「源代碼」不清楚,爲了您的利益,我建議您開始一個新的線程,因爲更多的人會意識到這一點,並且問題可以得到更好的回答。 – alko
我已經開始在這裏:http://stackoverflow.com/questions/20045395/marshal-loading-and-exec-ing'''源代碼'''是一個非常簡單明瞭的概念。獲取寫入的源代碼。 – alexandernst