導航:首頁 > 源碼編譯 > 任何一個軟體都能反編譯嗎

任何一個軟體都能反編譯嗎

發布時間:2022-04-02 16:41:06

❶ 淘寶這么成功為什麼不會被反編譯,不是說理論上只要是軟體都可以被反編譯嗎

我們缺少的不是淘寶軟體,照著做都能做一個,有什麼用?我們缺少的是一個龐大的運營體系及生存鏈。更何況編譯軟體還會觸犯相關法律,吃力不討好的事做了有什麼用?

❷ C++程序可以被反編譯嗎

c/c++程序是不能被反編譯的,除非是debug版本(包含各種標識符及調試信息),release版本沒有任何有關源碼的信息,是不能被反編譯的

❸ 能不能破解一個軟體從而獲得其所有源代碼

你是在說反編譯嗎?沒有軟體可以反編譯。只能靠人來反編譯,但十分麻煩。

❹ 有什麼軟體可以直接反編譯軟體,而且還要可以回編譯。

工具/原料

電腦必須裝JAVA

JAVA電腦環境教程

apktool


方法/步驟

1. 配置好JAVA環境變數,下載:apktool 解壓的文件放在C盤根目錄的apktool文件夾里(apktool文件夾自己創立)

打開命令提示符,(開始-運行-輸入cmd)


2. 輸入:cd apktool 系統指令到了apktool文件夾(這里就是為什麼要把解壓的apktool解壓的文件放到apktool文件夾的原因,當然你也可以自命名文件夾的名稱,那麼比如arc,那麼指令就變成了:cd arc 前提是你必須把apktool解壓的文件放到這個文件夾裡面)


3. 使用RE管理器把系統裡面的framework-res.apk 與 SystemUI.apk 提取出來放在apktool文件夾裡面


4. 如果只是想反編譯framework-res.apk

輸入apktool if framework-res.apk(框架的建立)


5. 開始最重要的反編譯,輸入指令,apktool d framework-res.apk

(反編輯的APK一定要用沒換過圖片的,否則回編輯失敗)


6. 最後反編譯完成


7. 修改代碼完成後,輸入代碼:apktool d framework-res 即可完成回編譯


8. 如果反編譯的是系統文件,比如,SystemUI.apk 那麼必須進行掛載框架,反編譯時,必須敲入一下命令:(然後再重復4-7步驟)

apktool if framework-res.apk

apktool if SystemUI.apk


9. 對於三星手機(比如9100、9108/9100G),如果反編譯SystemUI.apk要敲入一下命令進行框架掛載apktool if framework-res.apk

apktool if twframework-res.apk

apktool if SystemUI.apk


10. 回編譯的命令是 apktool b XXX (沒有後面的apk後綴)反編譯的命令是 apktool d xxx (有後面的apk)

❺ 不是說程序都是反編譯的嗎那病毒等程序的源代碼別人是如何知道的

反編譯只是讓其他人不容易獲得源代碼而已,理論上只要能執行的程序都可以通過機器碼變為匯編代碼,大家可以研究其代碼。
由於病毒程序一般較小,代碼被反編譯後更容易閱讀。
如果把windowsXP反編譯,閱讀的工作量將是一個天文數字!

❻ 任何軟體都能反編譯嗎

理論上是可以的,但實際上是很難的。這與破解密碼有相似,破解軟體有難有易。

❼ 是不是所有手機應用可以反編譯嗎

固件編譯時間當然是比你買到手的時間早
一般看到的編譯版本,是定板之前最終的一個版本
編譯完之後還要開始測試,量產,發貨,銷售,這其中需要不少時間
提前幾個月是正常的
ps:這個編譯版本是統一的,是編譯固件的版本,而不是燒錄的時間,或者手機出廠時間,不用糾結

❽ 請問程序能反編譯嗎

C/C++和C#、JAVA不一樣。像C#、JAVA這種解釋型語言是運行在虛擬機上的,建立在虛擬機規范之上,反編譯過程較容易實現。而C/C++更接近底層系統實現和依賴於編譯器,不同編譯器生成的二進制代碼會相對不同平台有所區別,甚至同一操作系統不同系列的編譯器都會有一點差異,比如在linux下編譯C/C++得到的二進制代碼就很難或無法運行在windows平台上,反之亦然,所以反編譯很困難,現在大多數反編譯軟體都只能反編譯成匯編。有一些號稱可以反編譯成C或者C++的工具,但反編譯出來的結果大多看不明白,還不如用匯編。

❾ 是不是所有的程序都可以反編譯得到原代碼

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。

❿ 任何軟體都可以用反向工程破譯么

不完全,有的軟體為了防止反編譯會進行相關的防止反編譯的操作

閱讀全文

與任何一個軟體都能反編譯嗎相關的資料

熱點內容
改變自己pdf 瀏覽:958
php自動安裝程序 瀏覽:416
linux命令行開機 瀏覽:420
程序員圖鑒刷屏 瀏覽:641
vector源碼java 瀏覽:73
中文編程網頁 瀏覽:780
文件加密如何進行比對 瀏覽:553
阿里雲伺服器計算型通用型區別 瀏覽:939
夜嗨app怎麼不能更新 瀏覽:535
qd65y壓縮機參數配置 瀏覽:936
中級會計教材pdf 瀏覽:475
弱簽名演算法md5 瀏覽:358
進行系統硬體設置的文件夾是 瀏覽:752
dwrg什麼文件夾 瀏覽:677
小米電視如何加密wifi 瀏覽:343
java私鑰解密 瀏覽:959
犯過罪還能當程序員嗎 瀏覽:984
參數名稱java 瀏覽:16
android序列化文件 瀏覽:251
java泛型for 瀏覽:30