用反編譯程序可以找到原代碼嗎
Ⅰ 是不是所有的程序都可以反編譯得到原代碼
Android APK中的java代碼可以被反編譯到什麼程度主要看APK的加密程度。
第一種情況:無混淆無加密無加殼。
直接利用Dex2jar和JD-GUI可把源碼從APK里摳出來,代碼邏輯清晰,基本上做到可復用,只是資源文件的引用需要計算一下。
第二種情況:混淆。
通常是利用Proguard做的防護。因為是對jar做的不可逆混淆(除非有mapping),因此不能還原成原來的代碼。但是代碼結構,代碼邏輯一致,只要花長時間對代碼進行梳理一樣可找准核心代碼,解密方法跟第一種一致。
第三種情況:加密。
這里以DexGuard為例。對於這種代碼加密的方法,在程序運行中必定會進行解密,只要抽出它解密的邏輯便可。PS:我自己做過DexGuard的解密,如果用Dex2jar反編譯看的話邏輯是不對的,一定要從Smali代碼看。後來發現網上已經有人做了。
解密的腳本:A look inside Dexguard
第四種情況:加殼。
這種情況跟第三種類似。無論你怎麼加殼,運行的時候必定是Dalvik可識別的Odex代碼,建議直接在內存里mp出來。這里推薦Xpose的ZjDroid。
Ⅱ 知道一個網站的網址能通過反編譯獲取源代碼嗎
網站整個源碼肯定是獲取不到的。當然,我說的是包括界面和後台程序功能代碼。
只能獲取界面html代碼,以及css樣式js和一些圖片。
主要的後台功能代碼是獲取不到的。
Ⅲ 什麼是逆向工程什麼是反編譯可以根據已經封裝好的程序軟體進行破解分析出源代碼嗎
逆向工程就是根據已有的程序來反推出源代碼以及原來的工程設置,反編譯就是具體的將已經編譯好的程序進行反向工程,從而獲取部分源代碼。一般來說,逆向工程或者反編譯是無法百分之百獲得源代碼的,只能從一定程度上來自源代碼進行猜測,因此根據已經封裝好的程序軟體來進行破解分析出源代碼的可能性並不大,逆向工程的意義並不在於破解源代碼,而是在於了解軟體本身的設計,對於復雜的程序軟體而言破解源代碼的可能性幾乎為零。
Ⅳ 反編譯exe 源碼可能嗎
1、如果exe文件較小,是由匯編語言的源程序編譯得到的,沒有反跟蹤調試、沒有加密,可以反匯編得到可用的源代碼。
2、如果是由解釋語言經過偽編譯得到的exe,比如原來foxpro編譯得到的exe,可通過專門的反編譯工具得到源代碼。
3、如果是由真編譯的高級語言(如c、c++、pascal)編譯得到的exe,很難反編譯得到源代碼。
Ⅳ Delphi軟體反編譯能找出來命令源代碼嗎
不能。要實現這樣的要求極其困難,以致到目前也沒有個人或機構做出這樣的工具。這是其一,其二:軟體是有知識產權的,如果有人或機構將別人辛辛苦苦的勞動成果破解還原了,那對軟體行業將是巨大的打擊。
你可以去按你自已的方式去模仿別人,但不能直接佔有別人的勞動成果。
Ⅵ 給一個可執行程序,能不能查看該程序的源代碼
對於可執行文件來說,只能通過反匯編來看他的匯編代碼。但是對於解釋性的語言,是可以通過反編譯來得到它的源代碼的。比如java
Ⅶ 用python2.7.1寫的小程序可以反編譯得到它的源代碼嗎
python是不能反編譯的,因為得到了一個python的程序,就是得到了它的源代碼。
python是解釋性語言,沒有編譯這一步驟,和c語言和java語言是不一樣的
Ⅷ android 軟體反編譯 可以獲得源代碼嗎
android培訓中有很重要的一個知識點就是反編譯獲得java源代碼,但是這個知識點又恰恰是很多同學的軟肋,很難掌握,今天就來幫你解決你的難題。
環境:win7
步驟:
1,下載工具包
dex2jar-0.0.9.13--反編譯工具--name=dex2jar-0.0.9.13.zip&can=2&q=
jd-gui-0.3.5.windows.zip--反編譯後的文件查看器
分別解壓。
2,將源apk的後綴名修改.jar並解壓,得到其中的classes.dex文件,將classes.dex復制到dex2jar.bat所在目錄dex2jar-0.0.9.13文件夾
在命令行下定位到dex2jar.bat所在目錄 (開始>運行>cmd>cd c:\dex2jar-0.0.9.13)
運行 :dex2jar.bat classes.dex
將生成 classes_dex2jar.jar
接下來就可以通過jdgui下的jd-gui.exe程序打開生成的jar包看到java代碼了。
多看多做多練習是學習語言必須經歷的過程,學習不是一朝一夕的事情,只有恆之以衡的堅持才能帶來成功。希望以上的Android教程能給大家帶來幫助。
Ⅸ 反編譯為什麼不能得到源代碼
因為編譯器在編譯時源代碼的一些信息丟失了(或者說換一種方式保存),
比如說自定義的函數名,變數名,在反匯編的代碼中就不會出現。
說到反編譯,現在做的最好的就是IDA
的Hex-Rays
Decompiler
插件,十分強
大,但有時反編譯的代碼可讀性不好,常常指針套指針,不過配合著匯編代碼
來看還是很有參考性的
Ⅹ 用Python2.7.1寫的小程序可以反編譯得到它的源代碼嗎
可以啊,要看他的發布形式,如果是以腳本形式發布的,那就可以直接得到源碼。
如果是以exe形式發布的,需要進行反編譯。