簡體   English   中英

如何解碼python字符串

[英]How to decode python string

我有一些我想解碼的代碼,但在猜測代碼頁是什么方面沒有多少運氣,如果有的話。 任何幫助將非常感激。 我在 Windows 7 pc 中使用 python 命令行,如果有任何 python 大師指導我如何解密和查看代碼,我將不勝感激。

exec("import re;import base64");exec((lambda p,y:(lambda o,b,f:re.sub(o,b,f))(r"([0-9a-f]+)",lambda m:p(m,y),base64.b64decode("NTQgYgo1NCA3CjU0IDMKNTQgMWUKNTQgOQo1NCAxOAozZiAgICAgICA9IGIuMTAoKQoxNiAgID0gIjQzOi8vMTIuM2QvNGMvMWQuMjUuZi00ZC4zZSIKYSA9ICIxZC4yNS5mIgoyYSA4KDYpOgoJMzMgMy5jKCczYy4yZSglNTIpJyAlIDYpID09IDEKCjJhIDE1KDM1KToKCTUgPSAzLjQoMWUuNS4xYygnMTM6Ly8yZC8xZicsJzMwJykpCgkyMyA1CgkyMSA9IDcuMTQoKQoJMjEuMzgoIjEwIDI4IiwiMjAgMTAuLiIsJycsICczNiA0MCcpCgkxMT0xZS41LjFjKDUsICdlLjNlJykKCTM5OgoJCTFlLjFhKDExKQoJMWI6CgkJMmMKCQk5LmUoMzUsIDExLCAyMSkKCQkyID0gMy40KDFlLjUuMWMoJzEzOi8vMmQnLCcxZicpKQoJCTIzIDIKCQkyMS4zNCgwLCIiLCAiM2IgNDciKQoJCTE4LjQ4KDExLDIsMjEpCgkJCgkJMy41MygnMjIoKScpOyAKCQkzLjUzKCcyNigpJyk7CgkJMy41MygiNDUuZCgpIik7IAoJCTE5PTcuMzcoKTsgMTkuNTAoIjMyISIsIjJmIDNhIDQ5IDQxIDI5IiwiICAgWzI0IDQ2XTMxIDUxIDRhIDRlIDE3LjNkWy8yNF0iKQoJCSIiIgoJCTM5OgoJCQkxZS4xYSgxMSkKCQkxYjoKCQkJMmMKCQkJIzI3KCkKCQk0Mjo0NCgpCgkJIiIiCgoyYSAyYigpOgoJNGYgNGIgOChhKToKCQkxNSgxNikKCQoKCjJiKCk=")))(lambda a,b:b[int("0x"+a.group(1),16)],"0|1|addonfolder|xbmc|translatePath|path|script_name|xbmcgui|script_chk|downloader|scriptname|xbmcaddon|getCondVisibility|UpdateLocalAddons|download|supermax|Addon|lib|supermaxwizard|special|DialogProgress|INSTALL|website|SuperMaxWizard|extract|dialog|remove|except|join|plugin|os|addons|Installing|dp|UnloadSkin|print|COLOR|video|ReloadSkin|FORCECLOSE|Installer|Installed|def|Main|pass|home|HasAddon|SuperMax|packages|Brought|Success|return|update|url|Please|Dialog|create|try|Wizard|Nearly|System|com|zip|addon|Wait|been|else|http|quit|XBMC|gold|Done|all|has|You|not|sm|MP|By|if|ok|To|s|executebuiltin|import".split("|")))

代碼丑陋。 您可以通過在 Python shell 中exec(...)的內容來自行取消混淆。

import re
import base64
print ((lambda p,y.....split("|")))

編輯:正如 snakecharmerb 所說,執行未知代碼通常是不安全的。 我分析了代碼,發現運行exec的內部只會解密,而離開exec本身只會產生一個字符串。 這個過程(“execute stuff inside exec”)絕不是解密丑化代碼的一般安全方法,您需要實際分析它的作用。 但是,在這一點上,我要求你相信我的判斷,如果它是錯誤的,理論上可能會讓你受到攻擊。 此外,在 Python 上運行它似乎有問題; 所以這就是我從上面得到的:

import xbmcaddon
import xbmcgui
import xbmc
import os
import downloader
import extract
addon       = xbmcaddon.Addon()
website   = "http://supermaxwizard.com/sm/plugin.video.supermax-MP.zip"
scriptname = "plugin.video.supermax"
def script_chk(script_name):
        return xbmc.getCondVisibility('System.HasAddon(%s)' % script_name) == 1

def INSTALL(url):
        path = xbmc.translatePath(os.path.join('special://home/addons','packages'))
        print path
        dp = xbmcgui.DialogProgress()
        dp.create("Addon Installer","Installing Addon..",'', 'Please Wait')
        lib=os.path.join(path, 'download.zip')
        try:
                os.remove(lib)
        except:
                pass
                downloader.download(url, lib, dp)
                addonfolder = xbmc.translatePath(os.path.join('special://home','addons'))
                print addonfolder
                dp.update(0,"", "Nearly Done")
                extract.all(lib,addonfolder,dp)

                xbmc.executebuiltin('UnloadSkin()'); 
                xbmc.executebuiltin('ReloadSkin()');
                xbmc.executebuiltin("XBMC.UpdateLocalAddons()"); 
                dialog=xbmcgui.Dialog(); dialog.ok("Success!","SuperMax Wizard has been Installed","   [COLOR gold]Brought To You By SuperMaxWizard.com[/COLOR]")
                """
                try:
                        os.remove(lib)
                except:
                        pass
                        #FORCECLOSE()
                else:quit()
                """

def Main():
        if not script_chk(scriptname):
                INSTALL(website)



Main()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM