當前位置:首頁 » 編程軟體 » 安卓加密反編譯

安卓加密反編譯

發布時間: 2022-07-23 10:57:28

❶ android app加密該怎麼做就是防止android app被反編譯、二次打包那種

一般的加密防護,偽加密,混淆保護現在都不是太靠譜,保護面很單一啊,你可以試試第三方的保護平台。現在圈內很多人都用的愛加密,可以先檢測一下你的apk包漏洞,然後進行加固保護。愛加密在行業內還是很有權威性的,你試試看。

❷ 怎麼給app加密,防止app被反編譯特別是DEX文件。

當然可以通過加密apk防止反編譯的方法可以起到凈化國內app市場的作用!你可以嘗試使用一下愛加密,他是一個針對APP加密的平台,它可以防止應用在運營推廣過程中被反編譯,惡意篡改、注入扣費代碼、盜取數據等,保護應用的安全性、穩定性,同時對開發者的應有收入提供有力保障。

❸ android 程序怎麼加密,不讓別人反編譯

代碼混淆(code obfuscation)是指將計算機程序的代碼,轉換成一種功能上等價,所謂功能上的等價是指其在變換前後功能相同或相近。其解釋如下:程序P經過混淆變換為P『,若P沒有結束或錯誤結束,那麼P』也不能結束或錯誤結束;而且P『程序的結果應與程序P具有相同的輸出。否則P』不是P的有效的混淆。


目前對於混淆的分類,普遍是以Collberg 的理論為基礎,分為布局混淆(layout obfuscation)、數據混淆(data obfuscation)、控制混淆(control obfuscation)和預防混淆(preventive obfuscation)這四種類型。

1. 布局混淆

布局混淆是指刪除或者混淆軟體源代碼或者中間代碼中與執行無關的輔助文本信息,增加攻擊者閱讀和理解代碼的難度。軟體源代碼中的注釋文本、調試信息可以直接刪除,用不到的方法和類等代碼或數據結構也可以刪除,這樣即可以使攻擊者難以理解代碼的語義,也可以減小軟體體積,提高軟體裝載和執行的效率。軟體代碼中的常量名、變數名、類名和方法名等標識符的命名規則和字面意義有利於攻擊者對代碼的理解,布局混淆通過混淆這些標識符增加攻擊者對軟體代碼理解的難度。標識符混淆的方法有多種,例如哈希函數命名、標識符交換和重載歸納等。哈希函數命名是簡單地將原來標識符的字元串替換成該字元串的哈希值,這樣標識符的字元串就與軟體代碼不相關了;標識符交換是指先收集軟體代碼中所有的標識符字元串,然後再隨機地分配給不同的標識符,該方法不易被攻擊者察覺;重載歸納是指利用高級編程語言命名規則中的一些特點,例如在不同的命名空間中變數名可以相同,使軟體中不同的標識符盡量使用相同的字元串,增加攻擊者對軟體源代碼的理解難度。布局混淆是最簡單的混淆方法,它不改變軟體的代碼和執行過程。

2. 數據混淆

數據混淆是修改程序中的數據域,而對代碼段不作處理。常用的數據混淆方式有合並變數、分割變數、數組重組、字元串加密等。

合並變數是將幾個變數合並為一個數據,原來的每個變數占據其中一個區域,類似於一個大的數據結構。分割變數則是將一個變數分割為兩個變數,對分割前後提供一種映射關系,將對一個變數的操作轉化為對分割後兩個變數的操作。

數組重組有數組的分割、合並、折疊和平滑等幾種方式。分割是將一個數組分成2個或多個相同維度的數組;合並則相反;折疊是增加數組的維數;平滑則是相反。

在ELF文件中,全局變數和常量字元串存放在數據段中,反匯編工具可以輕易查找到字元串與代碼之間的引用關系。在軟體破解中,通過一些字元串提示可以很方便的找到代碼關鍵語句,從而破解軟體。字元串加密則可以對這些明顯的字元串進行加密存儲,在需要時再進行解密。

3. 控制混淆

控制混淆也稱流程混淆,它是改變程序的執行流程,從而打斷逆向分析人員的跟蹤思路,達到保護軟體的目的。一般採用的技術有插入指令、偽裝條件語句、斷點等。偽裝條件語句是當程序順序執行從A到B,混淆後在A和B之間加入條件判斷,使A執行完後輸出TRUE或FALSE,但不論怎麼輸出,B一定會執行。

控制混淆採用比較多的還有模糊謂詞、內嵌外聯、打破順序等方法。

模糊謂詞是利用消息不對稱的原理,在加入模糊謂詞時其值對混淆者是已知的,而對反混淆者卻很難推知。所以加入後將干擾反匯編者對值的分析。模糊謂詞的使用一般是插入一些死的或不相關的代碼(bogus code),或者是插入在循環或分支語句中,打斷程序執行流程。

內嵌(in-line)是將一小段程序嵌入到被調用的每一個程序點,外聯(out-line)是將沒有任何邏輯聯系的一段代碼抽象成一段可被多次調用的程序。

打破順序是指打破程序的局部相關性。由於程序員往往傾向於把相關代碼放在一起,通過打破順序改變程序空間結構,將加大破解者的思維跳躍。

4. 預防混淆

預防混淆一般是針對專用的反編譯器設計的,目的就是預防被這類反編譯器反編譯。他是利用特定的反編譯器或反混淆器的弱點進行專門設計。預防混淆對於特定的反編譯器非常有效,所以在使用時要綜合利用各種反編譯器的特點進行設計。

❹ Android APP的破解技術有哪些如何防止反編譯

由於Android系統的開放性,導致Android
APK很容易被他人破解或是反編譯,下面給大家介紹常用的APP破解工具和技術要求。同時根據自己以往的防破解經驗,跟大家分析下如何防止反編譯。
Android
APK運行環境依賴的文件/文件夾
res、DEX、主配文件Lib
只是簡單的加密甚至沒有任何保護措施。APKtool(一種反編譯工具)可輕易將其輕松破解,再配合其他各種工具基本可以做到:源碼暴露(代碼混淆也幾乎起不到任何安全作用)、資源文件裸奔、主配文件可任意修改、核心SO庫暴露、暴力破解惡意利用等。部分大公司會對其應用APK包進行防二次打包和防APKtool破解,但其代碼都是寫在java層,另外APKtool的可升級導致其安全保護級別也是非常低的。

❺ 如何做好APP加密,防止被反編譯,二次打包

App加密屬於App安全的重要步驟之一,主要通過本地數據文件保護,頁面防釣魚保護,鍵盤監聽保護,截屏保護和協議加密。源碼安全包括:動態指令載入,DEX加花加殼保護,SO文件保護和內存防mp,資源文件保護保護等等。單一的加密方式可能比較簡單,比較容易被破解,但是組合起來效果就會很好。不過專業加密首先還是得找一個專業權威的安卓APP加固平台,對APP進行加固保護。個人推薦深圳海雲安,他們最新推出的第六代無殼加固技術是行業內領先的安全加固技術,是目前安全度數最高的。

❻ APK反編譯不了,resources.arsc被加密了怎麼破

resources是APK中的資源文件,例如圖片布局等等,android 反編譯的方法,需要用到幾個工具,網路一下都能找到下載地址
dex2jar JD-GUI apktool

反編譯步驟:
1.反編譯Apk得到Java源代碼
首先要下載兩個工具:dex2jar和JD-GUI
前者是將apk中的classes.dex轉化成Jar文件,而JD-GUI是一個反編譯工具,可以直接查看Jar包的源代碼。

具體步驟:
1.首先將apk文件,將後綴改為zip,解壓,得到其中的classes.dex,它就是java文件編譯再通過dx工具打包而成的;
2.解壓下載的dex2jar,將classes.dex復制到dex2jar.bat所在目錄。在命令行下定位到dex2jar.bat所在目錄
運行 dex2jar.bat classes.dex
生成 classes.dex.dex2jar.jar

2.反編譯apk生成程序的源代碼和圖片、XML配置、語言資源等文件
還是下載工具,這次用到的是apktool

具體步驟:
將下載的兩個包解壓到同一個文件夾下,應該會有三個文件:aapt.exe,apktool.bat,apktool.jar
1.解壓縮下載的兩個文件包,apktool-install-windows-r04-brut1.tar解壓縮後得到的包里有aapt.exe 和apktool.bat.(注意要把apktool1.4.1.tar解壓後的一個.jar 文件到解壓後的\apktool-install-windows-r04-brut1文件夾里)
2.特別注意:你要反編譯的文件一定要放在C盤的根目錄里

❼ 對安卓應用加密防apk反編譯現在有不少討論,哪些有效呢

現在的Android
APK防止破解和反編譯的辦法,都是用混淆代碼和防二次打包的加密技術。不過這兩樣加密技術都已無用了!!!
對Android
APK的加密保護只有對DEX、RES、SO庫等主要文件進行了保護,才能有效的防止破解和反編譯。現在有很多的Android開發者都在使用愛加密APK源代碼安全保護,聽說效果不錯!!!

❽ 已經加密的apk還可以反編譯嗎

現在的Android APK防止破解和反編譯的辦法,都是用混淆代碼和防二次打包的加密技術。不過這兩樣加密技術都已無用了!!! 對Android APK的加密保護只有對DEX、RES、SO庫等主要文件進行了保護,才能有效的防止破解和反編譯。現在有很多的Android...

❾ 求助,apk被加密了,反編譯不了,可有方法解決

下載dex2jar JD-GUI apktool

反編譯步驟:
1.反編譯Apk得到Java源代碼
首先要下載兩個工具:dex2jar和JD-GUI
前者是將apk中的classes.dex轉化成Jar文件,而JD-GUI是一個反編譯工具,可以直接查看Jar包的源代碼。

具體步驟:
1.首先將apk文件,將後綴改為zip,解壓,得到其中的classes.dex,它就是java文件編譯再通過dx工具打包而成的;
2.解壓下載的dex2jar,將classes.dex復制到dex2jar.bat所在目錄。在命令行下定位到dex2jar.bat所在目錄
運行 dex2jar.bat classes.dex
生成 classes.dex.dex2jar.jar

2.反編譯apk生成程序的源代碼和圖片、XML配置、語言資源等文件
還是下載工具,這次用到的是apktool

具體步驟:
將下載的兩個包解壓到同一個文件夾下,應該會有三個文件:aapt.exe,apktool.bat,apktool.jar
1.解壓縮下載的兩個文件包,apktool-install-windows-r04-brut1.tar解壓縮後得到的包里有aapt.exe 和apktool.bat.(注意要把apktool1.4.1.tar解壓後的一個.jar 文件到解壓後的\apktool-install-windows-r04-brut1文件夾里)
2.特別注意:你要反編譯的文件一定要放在C盤的根目錄里

❿ Android apk通過反編譯有什麼是得不到的

加密不是說就完全能避免被反編譯,而是加大了被反編譯的難度,讓反編譯成本變大,達到一個相對安全的目的。現在流行的加殼技術已經讓APK加密達到一個相對比較安全的程度了,傳統的aapt+apktool工具反編譯方式已經無法破解加殼了。說一個無法反編譯得到的東西,現階段,apk簽名密鑰文件(keystore文件)是無法通過反編譯得到的。

熱點內容
bi可視化php 發布:2025-02-06 13:50:15 瀏覽:929
shell寫腳本文件 發布:2025-02-06 13:47:32 瀏覽:228
健身器材腳本 發布:2025-02-06 13:46:36 瀏覽:853
怎麼從手機里卸載存儲卡 發布:2025-02-06 13:35:04 瀏覽:641
誅仙青雲志2ftp 發布:2025-02-06 13:34:48 瀏覽:31
mill91編程 發布:2025-02-06 13:10:27 瀏覽:291
華為平板怎麼儲存伺服器文件 發布:2025-02-06 12:49:21 瀏覽:481
php查詢結果數組 發布:2025-02-06 12:31:05 瀏覽:716
怎樣把照片壓縮打包 發布:2025-02-06 12:15:19 瀏覽:498
如何編譯java文件 發布:2025-02-06 12:05:58 瀏覽:237