導航:首頁 > 源碼編譯 > app加固能反編譯嗎

app加固能反編譯嗎

發布時間:2023-04-21 17:23:23

A. 做App開發一定需要對app進行安全加固嗎

若應用不做任何安全防護,極易被病毒植入、廣告替換、支付渠道篡改、釣魚、信息劫持等,嚴重侵害開發者的利益。

App 加固後,可以對應用進行安全防護,防止應用分發後,被反編譯、調試、盜版、破解、二次打包等威脅,維護開發者的利益。點擊進入網站,免費體驗加固

簡單來說就是,如果你不希望自己參與開發的 App 是免費為別人寫的,那就加固吧。


隨著移動應用安全相關技術的發展,現在市面上的APP加固平台有很多,其中較為領先的是蠻犀安全點擊進入網站,免費體驗加固

蠻犀安全獨立研發的移動應用安全加固系統,是蠻犀安全吸收同行產品相關優勢,並結合最新市場監仔培管需求,採用諸如代碼加固技術、運行時數據保護技術,運行時風險監控技術,依據網路安全等級保護要求等等等等的相關技術規范,全面針對移動應用的代碼、數據進行安全保護,而獨立開發的移動應用加固產品。

蠻犀安全移動應用安全加固系統,能夠有效實現android應用加固,iOS應用加固,SDK應用加固,H5、小程序、公眾號等輕應用加固。

通過源代碼混淆、應用加殼、位元組灶戚森碼抽取、位元組碼虛化、位元組碼轉移、匯編指令虛擬化等多種技術,實現多維度加固。

新用戶進入蠻犀官網,進隱畝入【開發者服務平台】後,即可享受免費加固體驗!

點擊進入網站,免費體驗加固

B. 安卓app360加固怎麼反編譯

1 對比

上傳demo進行加固,解包後對比下原包和加固包,發現加固包在assets文件夾下多了libjiagu.so,libjiagu_x86,lib文件夾下多了libjiagu_art.so,同時修改了dex文件和AndroidManifest文件

打開manifest文件,看到xxx加固對Application標簽做了修改,添加了殼入口,也就是我們反編譯後看到的StubApplication.smali這個文件。

相比於之前版本的加固,自從1.x.x.x加固版本之後,多了幾次反調試,使得動態難度稍微增大了一些,不過針對脫殼機脫殼,再多了反調試也是無用。或者通過修改系統源碼,也能達到消除反調試的作用。


2 動態調試

(1)把app安裝到手機,以調試模式打開app

(2)以shell模式root許可權打開IDA的android_server監聽

(3)tcp轉發

(4)打開IDA,修改配置為在進程開始時下斷

(5)搜索到進程後jdwp轉發,pid值即為我們進程號,並在命令行下附加。

成功附加後,可以下段了,打開Debugger Option

我們選擇在線程開始和庫載入時下斷,修改成功後,jdb附加,點擊運行

程序會斷在elf頭處,按下G鍵,搜索mmap,在mmap函數的段首和斷尾下段

F9運行,來到斷尾時F8單步,

來到此處時,在 BLunk_5C999C2C下斷,F9一下,F7跟進去

跟進去今後在BLX LR處進行下斷,此處就是進行反調試的地方,原理依然是獲取TracePid的值判斷當前是不是處於調試狀態,建議第一次調試的人在fgets和fopen處下斷,再f7跟進此調用就可以看到TracePid的值了。

跟進去之後,我們直接把方法移到最下方,就可以看到kill符號了,這就是殺進程的地方,如果當前處於調試狀態,則直接結束進程。

我們在此函數的所有cmpR0,#0處下斷,F9一下後即斷在斷點處,觀察寄存器窗口的R0值,實質就是當前的TracePid的16進制的值

不確定的可以使用cat /proc/pid/status進行對比一下,我們直接把R0置0,右鍵選擇Zero Value即可清0,繼續F9

我們看到程序又來到了mmap處,繼續f9

當繼續斷在調用反調試功能的方法時,繼續F7跟進,依然在所有的cmp R0,#0處下斷,斷下後把R0清0後繼續F9運行

目前的規律是,調用BLXLR的第一次,第二次和第四次是進行反調試判斷的,第三次並不影響,可以直接f9跳過去,三次反調試搞定後,就可以愉快的F9運行並觀察堆棧窗口了

當看到出現如下所示時:

說明殼已經開始解密並釋放dex文件了,我們直接F8單步十幾步,最後F9一下就可以看到我們需要的dex頭了

直接腳本mp出來即可,最後把libjiagu的所有文件刪除,並修復下Application標,如果存在則修復,不存在刪除即可

C. 怎麼樣給自己的app加密加固不會被黑客反編譯破解了

要是想給App加密防止反編譯首先要知道沒有做保護有什麼危害如:DEX文件未做保護可能造成源碼泄露此外還有混淆保護檢測、資源文件檢測、主配置文件、so文件、防二次打包有家愛加密的加密平台,就有這樣的漏洞分析與加密服務。

D. 怎麼加固安卓軟體

加固安卓軟體一般要達到以下效果:

1、防逆向:通過DEX 文件加殼以及DEX 虛擬化等技術,防止代碼被反編譯和逆向分析。

2、防篡改:通過校驗 APK 開發者簽名,防止被二次打包,植入廣告或惡意代碼。

3、防調試:防止應用被 IDA、JEB 等工具調試,動態分析代碼邏輯。

VirboxProtector安卓加固的核心技術一般有:

E. 加固的apk,如何反編譯AndroidManifest.xml

工具:
鏈接: http://pan..com/s/1i4QpEAh 密碼:l6oq

首先配置好java的環境,在將apk重命名為*.zip,然後解壓zip文件,就可獲得AndroidManifest.xml文件,此時該文件無法打開,接下來就要用上面的AXMLPrinter2.jar工具。
命令為:java -jar AXMLPrinter2.jar AndroidManifest.xml > a.xml

F. android app怎麼防止反編譯

APK在PC上面就被看作一個壓縮格式文件,在手機上面它就算一個可執行格式文件。兩種格式對它的讀取要求也有區別,所以說利用這個區別來實現偽加密。對PC端來講偽加密的APK沒法被解包無法被反編譯,但是對android系統來說它完全不會影響正常的安裝運行(對4.2以前的系統)。

偽加密的原理:讀取APK的位元組,找到連續4位位元組標記為」P K 01 02」的後第5位位元組,如果是0表示不加密,如果是1就表示加密(偽加密就強行改成1 反偽加密就是把1改成0就可以了)。
2
偽加密前和偽加密後的對比圖如下:
偽加密前:

3
偽加密後:

END
使用第三方平台加密

步驟如下:
登錄/注冊→上傳APK→等待系統加密→完成後下載APK→給APK簽名→完成!

2
愛加密作為移動安全行業的第三方平台,為Android APP移動應用提供專業的加固保護方案,包括DEX文件保護、資源文件保護、XML主配文件保護、防二次打包保護、so文件保護、內存保護、高級混淆等,全方位保護Android App,防止被反編譯、破解等,維護廣大開發者朋友的切身利益!

G. 經過360加固的安卓程序該如何破解反編譯後什麼代碼都找不到

1)APKtool 2)dex2jar 3)jd-gui 4)簽名工具 相關技術的基本要求 1)具有一定的閱讀JAVA代碼的能力 2)稍微有點Android基礎,越多越好 3)會用eclipse的一些Android調試的相關工具 4)了解一下smali的語法規范和欄位的自定范圍 5)有點應變能力思想轉換能力、 6)雖然代碼的修改是修改其smali文件(用到smali語法),雖然其語言是非常復雜的,但是我們能夠變通就行了,但是要求了解一下smali的語法規范和欄位的自定范圍。 了解以上方法可以非常簡單破解Android APK,破解後,應用里的頁面布局、代碼邏輯、結構演算法等都能一目瞭然。所以為了避免被他人,尤其是競爭對手了解到這些,防破解和反編譯尤為重要。我試過代碼混淆,但是代碼混淆只是對類名進行了變換,增加了破解者的閱讀難度,並不能真正阻止反編譯工程。下面是進行過代碼混淆的APK代碼結構,能看到只是對類名做了變換,變成a、b、c等這樣的名稱。但是仍然可以進行反編譯。 後來又嘗試使用360加固保對APK進行加固保護,發現原有的代碼程序被隱藏起來了,沒法再進行反編譯工作。 所以作為移動應用開發者,適當了解一些破解和反編譯工作有利於保護自己的應用安全。如果不防患於未然,一旦出現盜版情況,那麼你的APP很可能從此被市場所拋棄。

H. 自己可以編譯安卓源碼嗎

用最新的Ubuntu 16.04,請首先確保自己已經安裝了Git.沒安裝的同學可以通過以下命令進行安裝:

sudo apt-get install git git config –global user.email 「[email protected]」 git config –global user.name 「test」

其中[email protected]為你自己的郵箱.

簡要說明

android源碼編譯的四個流程:1.源碼下載;2.構建編譯環境;3.編譯源碼;4運行.下文也將按照該流程講述.

源碼下載

由於某牆的原因,這里我們採用國內的鏡像源進行下載.
目前,可用的鏡像源一般是科大和清華的,具體使用差不多,這里我選擇清華大學鏡像進行說明.(參考:科大源,清華源)

repo工具下載及安裝

通過執行以下命令實現repo工具的下載和安裝

mkdir ~/binPATH=~/bin:$PATHcurl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repochmod a+x ~/bin/repo

補充說明
這里,我來簡單的介紹下repo工具,我們知道AOSP項目由不同的子項目組成,為了方便進行管理,Google採用Git對AOSP項目進行多倉庫管理.在聊repo工具之前,我先帶你來聊聊多倉庫項目:

我們有個非常龐大的項目Pre,該項目由很多個子項目R1,R2,...Rn等組成,為了方便管理和協同開發,我們為每個子項目創立自己的倉庫,整個項目的結構如下:


這里寫圖片描述

執行完該命令後,再使用make命令繼續編譯.某些情況下,當你執行jack-admin kill-server時可能提示你命令不存在,此時去你去out/host/linux-x86/bin/目錄下會發現不存在jack-admin文件.如果我是你,我就會重新repo sync下,然後從頭來過.

錯誤三:使用emulator時,虛擬機停在黑屏界面,點擊無任何響應.此時,可能是kerner內核問題,解決方法如下:
執行如下命令:

  • ./out/host/linux-x86/bin/emulator -partition-size 1024 -kernel ./prebuilts/qemu-kernel/arm/kernel-qemu-armv7

  • 通過使用kernel-qemu-armv7內核 解決模擬器等待黑屏問題.而-partition-size 1024 則是解決警告: system partion siez adjusted to match image file (163 MB >66 MB)

    如果你一開始編譯的版本是aosp_arm-eng,使用上述命令仍然不能解決等待黑屏問題時,不妨編譯aosp_arm64-eng試試.

    結束吧

    到現在為止,你已經了解了整個android編譯的流程.除此之外,我也簡單的說明android源碼的多倉庫管理機制.下面,不妨自己動手嘗試一下.

    I. 怎麼給加固的軟體換包名

    給加固的軟體換包名方法:
    1、選擇任意一個APP反編譯軟體。
    2、廳歷打開AndroidManifest.xml,APP的包名就記錄在該文件中。在AndroidManifest.xml中,搜索"package=",該參祥慎數記錄APP報名。APP的報名均以com.開頭。
    3、將包名替扮宴搜換成自己想要改的名字,com.頭不能修改,修改最後一個欄位。
    4、將修改好的AndroidManifest.xml保存,編譯成APP即可。

    J. apk加固,apk加固怎麼可以防止反編譯,保護apk源代碼安全

    apk源代碼可以加固的的,源代碼是加殼之後把重要的那部分代碼隱藏起來不被看到,在一定基礎上可以達到保護源代碼的目的。

    閱讀全文

    與app加固能反編譯嗎相關的資料

    熱點內容
    如何保證伺服器優質 瀏覽:92
    小微信aPP怎麼一下找不到了 瀏覽:299
    演算法纂要學術價值 瀏覽:973
    程序員你好是什麼意思 瀏覽:799
    倩女幽魂老伺服器如何玩 瀏覽:559
    電子鍾單片機課程設計實驗報告 瀏覽:997
    看加密頻道 瀏覽:379
    程序員算不算流水線工人 瀏覽:632
    三星電視我的app怎麼卸載 瀏覽:44
    簡述vi編譯器的基本操作 瀏覽:507
    讓程序員選小號 瀏覽:91
    加強數字貨幣國際信息編譯能力 瀏覽:584
    購買的app會員怎麼退安卓手機 瀏覽:891
    程序員的種類及名稱 瀏覽:293
    美國程序員薪資 瀏覽:13
    黑石通匯證券伺服器什麼時候到期 瀏覽:393
    東方財富app里我的關注怎麼看 瀏覽:749
    bm3d單反級降噪演算法 瀏覽:457
    華為安卓機激活時間怎麼查詢 瀏覽:850
    如何用優盤重裝伺服器系統 瀏覽:317