最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊

安卓逆向工具的使用(二)

2023-04-14 22:37 作者:白澤火鳳  | 我要投稿

特別提醒:本文僅供學(xué)習(xí)交流之用,如用于其他用途概不負(fù)責(zé)!!!本文涉及的所有工具見文末下載鏈接。


Android Killer逆向工具

Android Killer是一款為用戶提供圖形化界面的反編譯工具,它集成了APK反編譯APK簽名、編碼轉(zhuǎn)換、APK文件打包等多種功能.關(guān)鍵詞檢索較為精準(zhǔn)是Android Killer相較于其他反編譯工具的一個(gè)優(yōu)勢.Android Killer集成了APK反編譯功能,因此在安裝Android Killer之前需要安裝JDK的開發(fā)環(huán)境(關(guān)于JDK開發(fā)環(huán)境的配置與使用參考之前的文章安卓逆向工具的使用(一)).盡管Android Killer已經(jīng)不再更新維護(hù),很多安卓逆向研究者仍然安裝和使用它,用戶和受眾依然很廣泛.

第一步,下載Android Killer的軟件壓縮包,下載鏈接放在文末,解壓壓縮包到本地安裝路徑,雙擊AndroidKiller.exe進(jìn)行配置.

第二步,雙擊AndroidKiller.exe之后,可能需要手動(dòng)添加JDK的可執(zhí)行路徑,這里點(diǎn)擊“OK”執(zhí)行下一步操作.

依次選擇“主頁-配置-Java”選項(xiàng)卡,點(diǎn)擊安裝路徑的文件夾圖標(biāo),選擇自己安裝JDK開發(fā)環(huán)境安裝目錄,需要配置到bin路徑下.再次雙擊AndroidKiller.exe可執(zhí)行文件不會(huì)彈出之前的提示,可正常使用.

第三步,測試Android Killer是否可正常運(yùn)行.將待測試的.apk文件拖拽至“開始”下方的空白界面即可自動(dòng)完成反編譯.Android Killer默認(rèn)使用apktool工具對APK文件進(jìn)行反編譯.

如果反編譯的日志輸出結(jié)果出現(xiàn)“APK?反編譯完成!”的提示信息,證明APK文件反編譯成功.反編譯成功之后,會(huì)在工程信息界面輸出APK相關(guān)信息結(jié)果包括包名、入口文件、權(quán)限、安卓四大組件等信息.其中包名和入口程序信息是調(diào)試程序的必要的兩個(gè)參數(shù),入口程序也被稱為主程序入口(Main Activity)是運(yùn)行APP時(shí)進(jìn)入的第一個(gè)活動(dòng)界面(Activity).

當(dāng)切換至“工程管理器”選項(xiàng)卡界面時(shí),可以看到反編譯后的所有文件夾,這些結(jié)果和之前在APK的基本結(jié)構(gòu)一文中介紹的直接解壓得到的結(jié)果不一樣,這里的結(jié)果都是通過apktool工具反編譯之后的結(jié)果.

反編譯結(jié)果中存在smali文件夾.?smali文件夾存放的是smali代碼,它是使用針對apk設(shè)計(jì)反編譯語法書寫的文件代碼,是Dalvik的寄存器語言.通過修改smali代碼來修改apk源碼功能,是apk逆向的基本操作技巧.Android Killer通過dex2jar.jarjar包文件將dex文件轉(zhuǎn)換為jar包文件,完成該操作之后可以使用jadx-gui工具瀏覽apkjava源代碼.

jadx-gui工具已經(jīng)被Android Killer工具集成,無需另外安裝和配置.可在Android Killer目錄下的“/bin/jd-gui/”文件夾下找到jadx-gui的可執(zhí)行文件jd-gui.exe.反編譯過程中使用的apktool工具也放在bin文件夾下,可在“bin/apktool”文件夾下找到.可以下載最新版本的工具替換進(jìn)行更新和升級.

工程搜索選項(xiàng)卡界面是Android Killer最常用的功能界面,包括搜索字符、替換字符、搜索選項(xiàng)和搜索進(jìn)度展示等多種功能.可在搜索字符下方的文本框輸入想要搜索的字符串;替換字符下方的文本框輸入替換后的文本字符;搜索范圍支持選擇整個(gè)項(xiàng)目、單個(gè)文件或文件夾;文件類型支持指定文件后綴來搜索內(nèi)容如“.smali、.xml等;匹配大小寫選項(xiàng)可以支持輸入文本忽略大小寫的區(qū)別進(jìn)行匹配.

Android逆向助手

Android逆向助手主要用于對apk的重新打包和簽名.

第一步,下載Android逆向助手的軟件壓縮包,下載鏈接放在文末,解壓壓縮包到本地安裝路徑,雙擊對應(yīng)的.exe可執(zhí)行文件進(jìn)行使用.

?第二步,使用一個(gè)apk對工具進(jìn)行測試是否可以正常使用.如果遇到報(bào)錯(cuò),可能是因?yàn)榈谝淮伟惭b無法檢測到JDK開發(fā)環(huán)境,可重啟計(jì)算機(jī)再次嘗試.本例使用其中一個(gè)“簽名apk的功能進(jìn)行測試.點(diǎn)擊其中的“簽名apk”的選項(xiàng),選擇好待重簽名的apk文件作為源文件,選擇好重簽名后的文件路徑作為目標(biāo)文件,點(diǎn)擊下方的操作按鈕執(zhí)行操作,執(zhí)行成功后在相應(yīng)的目標(biāo)文件夾路徑會(huì)生成重簽名后的文件.?


jeb逆向工具

jeb逆向工具主要用于調(diào)試apk源碼,使用該工具可以提高逆向的代碼審計(jì)效率,它支持在控制臺(tái)打印輸出apk運(yùn)行的結(jié)果,也支持對安卓代碼的debug.

第一步,下載jeb的軟件壓縮包,下載鏈接放在文末,解壓壓縮包到本地安裝路徑即可使用.在windows操作系統(tǒng)下,可通過cmd命令行執(zhí)行.bat結(jié)尾的批處理文件來運(yùn)行jeb逆向工具,也可雙擊這個(gè)批處理文件運(yùn)行.同樣地,運(yùn)行這個(gè)軟件需要配置好JDK開發(fā)環(huán)境.

?

打開之后,在界面下方會(huì)出現(xiàn)Logger選項(xiàng)卡及Console選項(xiàng)卡分別展示日志信息和控制臺(tái)程序運(yùn)行信息.本例中提示使用64位的JDK開發(fā)環(huán)境分配了內(nèi)存200M,最大支持分配3.5G的內(nèi)存空間進(jìn)行反編譯.如果超過內(nèi)存限制,需要進(jìn)行更改.

?第二步,將測試樣例的apk文件拖拽至Project Explorer進(jìn)行反編譯操作,測試程序軟件的反編譯功能是否可正常使用.完成反編譯后在Project Explorer選項(xiàng)卡中會(huì)展示出apk的反編譯結(jié)果.這個(gè)結(jié)果與Android Killer的結(jié)果不相同,包括Manifest文件Certificate文件、Bytecode文件、Resources文件夾、Assets文件夾和Libraries文件夾.其中Manifest文件對應(yīng)反編譯后的AndroidManifest.xml的配置清單文件;Certificate文件對應(yīng)的是簽名證書文件;Bytecode文件對應(yīng)的是smali字節(jié)碼文件;Resources文件夾對應(yīng)的是編譯的資源文件;Assets文件夾對應(yīng)的是靜態(tài)資源文件.雙擊Bytecode文件在左側(cè)彈出兩個(gè)選項(xiàng)卡分別為“Bytecode(Virtual,Merged)/Hierarchy”和“Bytecode(Virtual,Merged)/Disassembly”對應(yīng)了分層展示的smali語法代碼文件和合并的smali語法代碼文件.點(diǎn)擊任意一個(gè)選項(xiàng)卡,按住快捷鍵“Ctrl+F”可實(shí)現(xiàn)搜索源代碼的功能.

第三步,因?yàn)镴EB主要用于在安卓模擬器或手機(jī)上進(jìn)行安卓代碼的運(yùn)行調(diào)試,因此還需要配置好adb(android debug bridge)工具.?adb工具主要用于電腦端和安卓端(手機(jī)端或模擬器)建立通信,控制安卓代碼運(yùn)行和調(diào)試.

jadx逆向工具

jadx主要用于將dex文件反編譯成java代碼,也用于安卓逆向的代碼審計(jì),它支持對代碼的反混淆功能.

第一步,下載jadx壓縮包下載到本地,解壓至安裝路徑下,進(jìn)入安裝目錄的bin文件夾路徑下,并將待反編譯的dex文件放入該文件夾下.

?

第二步,可通過在地址欄輸入cmd,在當(dāng)前目錄下打開cmd命令窗口,執(zhí)行命令“jadx -d out classes.dex”完成對dex文件的反編譯,反編譯結(jié)果輸出在同目錄的out文件夾下.注意,通過jadx工具只能反編譯java代碼,對于其中的安卓代碼會(huì)出錯(cuò).通常需要結(jié)合jeb和Android Killer工具使用.

本文涉及到的所有軟件包鏈接:https://pan.baidu.com/s/1RxrSYookRzH9dA6rBgV8Qw ?密碼: as6r


安卓逆向工具的使用(二)的評論 (共 條)

分享到微博請遵守國家法律
肥乡县| 福清市| 友谊县| 醴陵市| 满洲里市| 英山县| 商城县| 昌乐县| 阜南县| 佛学| 灌云县| 台山市| 平湖市| 乌兰浩特市| 宾川县| 武安市| 抚顺县| 正阳县| 张家口市| 广昌县| 璧山县| 利川市| 清镇市| 临漳县| 合水县| 彰化县| 宣化县| 当阳市| 汽车| 聂拉木县| 革吉县| 广宁县| 定远县| 阳朔县| 新龙县| 招远市| 建阳市| 商水县| 郴州市| 六盘水市| 乐安县|