真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

android逆向,android逆向工程師

什么是android 逆向分析

首先,逆向分析是一門技術(shù),也是一門藝術(shù)。

專注于為中小企業(yè)提供網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)許昌免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了成百上千企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過(guò)網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

其次,安卓逆向同樣可細(xì)分為應(yīng)用層APK逆向、安卓設(shè)備框架、內(nèi)核驅(qū)動(dòng)等逆向、基于安卓的硬件產(chǎn)品逆向等。此處假定樓主說(shuō)的是第一種逆向。

應(yīng)用層的逆向分析根據(jù)需求的不同,又可細(xì)分成APK流程逆向與功能逆向。

流程逆向通常是指簡(jiǎn)單的對(duì)APK運(yùn)行流程進(jìn)行分析,此類分析通??梢允褂脤PK置于沙盒環(huán)境中運(yùn)行捕捉并查看運(yùn)行結(jié)果。這種逆向需求通常不是很多,典型的工種有殺軟廠商的病毒分析工程師。

功能逆向相比流程逆向則困難得多。但需求比較普遍。實(shí)際逆向分析過(guò)程中對(duì)功能實(shí)現(xiàn)的理解,在很大程度上取決于逆向人員相關(guān)的軟件開發(fā)知識(shí)。比如,分析Android程序的JAVA代碼就需要掌握基本的Android軟件開發(fā)的知識(shí)。分析so庫(kù)的代碼就需要了解C/C++相關(guān)的so庫(kù)開發(fā)的知識(shí)。除了基本開發(fā)相關(guān)的能力外,逆向分析人員還需要具備以下知識(shí):

ARM/X86/MIPS匯編語(yǔ)言-分析so庫(kù)時(shí)可能需要閱讀大量的反匯編代碼。

Android逆向之手機(jī)環(huán)境配置

該篇文章主要介紹在Android逆向開始之前的 手機(jī)環(huán)境配置 。其中包括對(duì)手機(jī)進(jìn)行 刷機(jī) (根據(jù)所需的Android手機(jī)型號(hào)、Android系統(tǒng)版本進(jìn)行刷機(jī)。這里我以nexus 5 android 6.0.1為例,其他Google系手機(jī)型號(hào)及刷其他Android版本系統(tǒng)都是類似的);第二個(gè)則是安裝Android逆向分析 hook框架 (Xposed、frida)及一些常用的基礎(chǔ)插件等。

一、刷機(jī)前準(zhǔn)備

二、開始對(duì)nexus 5刷機(jī)(Android 6.0.1)

需要使用低版本的platform-tools進(jìn)行替代,具體的操作步驟,可以參考以下文章

三、刷入第三方recovery(TWRP)到新系統(tǒng)中

四、對(duì)剛刷完的Android系統(tǒng)進(jìn)行root

五、安裝Xposed框架、frida-server 及Android逆向分析中常見的插件

綜上所述,該篇文章主要是使用Android官方的系統(tǒng)鏡像進(jìn)行刷機(jī),然后安裝配置Android逆向所需的框架及插件。在刷機(jī)的時(shí)候,我們也可以選擇自己修改編譯Android系統(tǒng)源碼,再進(jìn)行刷機(jī),定制我們自己所需的分析環(huán)境。

更多精彩內(nèi)容,請(qǐng)掃碼關(guān)注以下公眾號(hào)

Android逆向 ida動(dòng)態(tài)調(diào)試問(wèn)題

先輸入”adb shell”,然后輸入”su root”獲取root權(quán)限。

接著輸入” chmod 777 /data/local/tmp/android_server” 給android_server加上相應(yīng)的權(quán)限。

接著輸入” /data/local/tmp/android_server”啟動(dòng)android_server。

如下圖所示:

輸入”adb forward tcp:23946 tcp:23946”進(jìn)行tcp端口轉(zhuǎn)發(fā)

命令,啟動(dòng)所要調(diào)試的Activity。

app會(huì)彈出”Waitting for debugger”對(duì)話框,如下圖所示:

點(diǎn)擊”Debug options”按鈕,在”Suspend on process entry point”, ”Suspend on thread start/exit”, ”Suspend on library load/unload” 等選項(xiàng)的前面打上勾,如下圖所示:

點(diǎn)擊”ok”后會(huì)在以下對(duì)話框的hostname中填上”localhost”

在彈出的”Choose process to attach to”窗口中找到”com.example.testjniso”進(jìn)程,選中該進(jìn)程,然后點(diǎn)擊”ok”按鈕。

其中可以看到com.example.testjniso進(jìn)程的端口為8700。

如下圖所示:

在ida彈出的”Add map”窗口中,一律點(diǎn)擊”Cancle”按鈕。

點(diǎn)擊ida中的暫停調(diào)試按鈕,暫停當(dāng)前的調(diào)試,如下圖所示:

右擊libTestJniSo.so文件,在彈出的框中點(diǎn)擊”Jump to module base”,跳轉(zhuǎn)到libTestJniSo.so文件的起始地址。

按下Alt+T,彈出查找對(duì)話框中輸入” Java_com_example_testjniso_MainActivity_helloFromJni” 如下圖所示:

點(diǎn)擊”ok”按鈕后,即可跳轉(zhuǎn)到 Java_com_example_testjniso_MainActivity_helloFromJni 函數(shù)所在的起始地址。

然后在地址處下斷點(diǎn):

再按F9重新開始調(diào)試,點(diǎn)擊app中的”點(diǎn)擊加載so文件”按鈕重新加載libTestJniSo.so,即可看到程序成功地停在了斷點(diǎn)處:

到此處就可以正常地調(diào)試so文件了。

Linker是什么?

Linker就是/system/lib/linker,它是進(jìn)程啟動(dòng)時(shí)第一個(gè)加載的模塊,它負(fù)責(zé)管理elf可執(zhí)行文件以及各個(gè)so文件的加載執(zhí)行,還參與了調(diào)試的一些東西。通俗地說(shuō),它是一個(gè)elf文件的解釋器。它可以加載elf可執(zhí)行文件及so動(dòng)態(tài)庫(kù)。

在android 5.0下,不能執(zhí)行android_server是因?yàn)閍ndroid5.0自帶的linker不支持加載非pie的elf文件,但如果自己實(shí)現(xiàn)一個(gè)可以加載pie的linker,不就可以解決這個(gè)問(wèn)題了嗎?對(duì)的,就是醬紫,補(bǔ)上自己的自定義linker在附件.

Android逆向書籍推薦有哪些?

如下:

1、豐生強(qiáng)《Android軟件安全權(quán)威指南》,2019年3月出版。

2、姜維《Android應(yīng)用安全防護(hù)和逆向分析》,2018年1月出版。

3、豐生強(qiáng)《Android軟件安全與逆向分析》,2013年2月出版。

1和3作者都是豐生強(qiáng)(非蟲大神),里面有很多相同的內(nèi)容,但1比3新增了這六年間新出的技術(shù),2中作者說(shuō)有幾章是非蟲的支持。

介紹

安卓(Android)是一種基于Linux內(nèi)核(不包含GNU組件)的自由及開放源代碼的操作系統(tǒng)。主要使用于移動(dòng)設(shè)備,如智能手機(jī)和平板電腦,由美國(guó)Google公司和開放手機(jī)聯(lián)盟領(lǐng)導(dǎo)及開發(fā)。

Android操作系統(tǒng)最初由Andy Rubin開發(fā),主要支持手機(jī)。2005年8月由Google收購(gòu)注資。2007年11月,Google與84家硬件制造商、軟件開發(fā)商及電信營(yíng)運(yùn)商組建開放手機(jī)聯(lián)盟共同研發(fā)改良Android系統(tǒng)。


新聞名稱:android逆向,android逆向工程師
標(biāo)題URL:http://weahome.cn/article/hodshe.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部