最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

android加密參數(shù)定位實(shí)現(xiàn)方法

 更新時(shí)間:2021年04月01日 08:35:55   作者:考古學(xué)家lx  
這篇文章主要介紹了android加密參數(shù)定位方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

在逆向一個(gè)Android程序時(shí),如果只是盲目的分析需要閱讀N多代碼才能找到程序的關(guān)鍵點(diǎn)或Hook點(diǎn),本文將分享一下如何快速的找到APP程序的加密參數(shù)位置,其實(shí)不論是找關(guān)鍵位置、找hook點(diǎn),找加密參數(shù)、代碼邏輯追蹤,都是類似的處理方法。

巧用搜索-靜態(tài)分析

一般靜態(tài)分析找加密參數(shù)的流程都是先查殼(脫殼)、反編譯、查找程序的入口方法、分析程序的執(zhí)行流程。
假設(shè)已經(jīng)使用Android killer反編譯了未加殼的app,直接使用工程搜索檢索需要查找的參數(shù)名,根據(jù)AK的反饋信息進(jìn)行對(duì)比,找到其對(duì)應(yīng)的參數(shù)位置。也可以根據(jù)應(yīng)用執(zhí)行流程逐行向下分析代碼,比較累。

objection定位

objection是基于Frida的動(dòng)態(tài)分析工具包,可以免root動(dòng)態(tài)調(diào)式apk,同時(shí)支持iOS和Android。安裝方法可以到github查看。Github:https://github.com/sensepost/objection
在通過搜索之后如果有幾個(gè)不確定的位置,則正好可以使用Objection,Objection就是專業(yè)的定位小能手,從定位流程上來說也只有三步。

1、注入目標(biāo)進(jìn)程

objection -g com.xxx.xxx explore 

2、跟蹤類

android hooking watch class 'com.xxx.xxx.lx.ApiSign'

3、查看入?yún)⒑头祷刂?/p>

android hooking watch class_method 'com.xxx.xxx.lx.ApiSign.a' --dump-args --dump-return

然后通過參數(shù)和返回值與請(qǐng)求接口中的協(xié)議進(jìn)行對(duì)比就可以卻確定究竟是在哪一個(gè)位置了。

frida-hook

frida、xposed這類hook工具也是動(dòng)態(tài)分析的一種。假設(shè)某App的接口有 signature 簽名,并且該參數(shù)值看上去非常像是Base64,并且長(zhǎng)度為定長(zhǎng)且少于20位。這個(gè)時(shí)候如果通過工具全局搜索沒有找到,則可以通過frida憑感覺Hook下App中所有操作Base64的位置。
Frida代碼如下:

var Base64Class = Java.use("android.util.Base64");
Base64Class.encodeToString.overload("[B", "int").implementation = function(a,b){
 var resault = this.encodeToString(a,b);
 console.log(">>> Base64 " + resault);
 if(resault.length <= 20){
  var stackAdd = threadinstance.currentThread().getStackTrace();
  console.log("resault stackAdd is:" + Where(stack));
 }
 return rc;
}

通過這種方式大概率能打印出簽名計(jì)算的位置,這也屬于巧計(jì)的一種,大家一定不要忘記這種定位方式。

log注入

代碼注入也屬于動(dòng)態(tài)分析,流程是先修改apk的smali代碼,既是在某關(guān)鍵函數(shù)前加入 android/util/Log 輸出,配合LogCat 查看程序執(zhí)行時(shí)的log數(shù)據(jù)。

關(guān)于android/util/Log的 Log extends Object 一共有5個(gè)方法:Log.v() Log.d() Log.i() Log.w() and Log.e()

一般使用Log.v() 日志輸出函數(shù)就可以了,不做案例了,詳細(xì)內(nèi)容會(huì)往書中寫。

動(dòng)態(tài)調(diào)試

其實(shí)定位的方法只有兩種靜態(tài)分析和動(dòng)態(tài)分析,動(dòng)態(tài)調(diào)試也屬于動(dòng)態(tài)分析,和上面的方法異曲同工。

動(dòng)態(tài)調(diào)試這里可以理解為堆棧調(diào)試,有時(shí)候需要利用到不同的工具和方法,

比如 JEB調(diào)試、smali調(diào)試、IDA調(diào)試等等。

不再細(xì)說了,本文簡(jiǎn)單總結(jié)一下。

到此這篇關(guān)于android加密參數(shù)定位方法的文章就介紹到這了,更多相關(guān)android加密參數(shù)定位方法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Android基于Intent實(shí)現(xiàn)Activity之間數(shù)據(jù)傳遞的方法

    Android基于Intent實(shí)現(xiàn)Activity之間數(shù)據(jù)傳遞的方法

    這篇文章主要介紹了Android基于Intent實(shí)現(xiàn)Activity之間數(shù)據(jù)傳遞的方法,結(jié)合實(shí)例形式分析了Activity之間數(shù)據(jù)傳遞操作的相關(guān)技巧,代碼備有較為詳盡的注釋,需要的朋友可以參考下
    2016-11-11
  • Android動(dòng)畫教程之屬性動(dòng)畫詳解

    Android動(dòng)畫教程之屬性動(dòng)畫詳解

    這篇文章主要給大家介紹了關(guān)于Android動(dòng)畫教程之屬性動(dòng)畫的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)各位Android開發(fā)者們具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • Android應(yīng)用?;顚?shí)踐詳解

    Android應(yīng)用?;顚?shí)踐詳解

    這篇文章主要介紹了Android應(yīng)用?;顚?shí)踐詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • Android activity實(shí)現(xiàn)延時(shí)跳轉(zhuǎn)功能

    Android activity實(shí)現(xiàn)延時(shí)跳轉(zhuǎn)功能

    Activity是一個(gè)Android的應(yīng)用組件,它提供屏幕進(jìn)行交互。今天通過本文給大家介紹Android activity實(shí)現(xiàn)延時(shí)跳轉(zhuǎn)功能,感興趣的朋友一起看看吧
    2021-06-06
  • android實(shí)現(xiàn)按鈕獲取焦點(diǎn)延遲加載

    android實(shí)現(xiàn)按鈕獲取焦點(diǎn)延遲加載

    這篇文章主要為大家詳細(xì)介紹了android實(shí)現(xiàn)按鈕獲取焦點(diǎn)延遲加載,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-09-09
  • Android 文件選擇的實(shí)現(xiàn)代碼

    Android 文件選擇的實(shí)現(xiàn)代碼

    這篇文章介紹了Android 文件選擇的實(shí)現(xiàn)代碼,有需要的朋友可以參考一下
    2013-08-08
  • Android多線程+單線程+斷點(diǎn)續(xù)傳+進(jìn)度條顯示下載功能

    Android多線程+單線程+斷點(diǎn)續(xù)傳+進(jìn)度條顯示下載功能

    這篇文章主要介紹了Android多線程+單線程+斷點(diǎn)續(xù)傳+進(jìn)度條顯示下載功能,需要的朋友可以參考下
    2017-06-06
  • 支持多項(xiàng)選擇的ExpandableListView

    支持多項(xiàng)選擇的ExpandableListView

    這篇文章主要為大家詳細(xì)介紹了支持多項(xiàng)選擇的ExpandableListView,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-06-06
  • Android組件WebView編寫有道詞典小案例分享

    Android組件WebView編寫有道詞典小案例分享

    這篇文章主要為大家分享了Android組件WebView編寫有道詞典小案例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-05-05
  • Android開發(fā)中Activity屬性設(shè)置小結(jié)

    Android開發(fā)中Activity屬性設(shè)置小結(jié)

    Android應(yīng)用開發(fā)中會(huì)經(jīng)常遇到Activity組件的使用,下面就來講解下Activity組件。Activity的生命周期、通信方式和IntentFilter等內(nèi)容,并提供了一些日常開發(fā)中經(jīng)常用到的關(guān)于Activity的技巧和方法。通過本文,你可以進(jìn)一步了接Android中Activity的運(yùn)作方式。
    2015-05-05

最新評(píng)論

红桥区| 余姚市| 辉南县| 碌曲县| 光泽县| 阳新县| 巴中市| 思南县| 蒙自县| 长武县| 青铜峡市| 闸北区| 禄劝| 饶阳县| 区。| 寿阳县| 阜平县| 无极县| 筠连县| 无棣县| 页游| 托克逊县| 太和县| 邢台市| 甘德县| 大埔县| 开原市| 申扎县| 夏津县| 尖扎县| 阜南县| 江北区| 方正县| 县级市| 德惠市| 巴中市| 迁西县| 安溪县| 丹棱县| 祁连县| 融水|