Android逆向筆記之AndroidKiller與Android Studio的使用


https://blog.csdn.net/a_1054280044/article/details/60465267
版權聲明:本文為博主原創文章,未經博主允許不得轉載。 https://blog.csdn.net/a_1054280044/article/details/60465267

前言:書本中對crackme02.apk的破解是分析關鍵詞進行破解的,而本文使用另外的Smali分析方式,對樣本進行分析。
樣本:《Android軟件安全與逆向分析》crackme02.apk
工具:AndroidKiller v1.3.1.0(AK) && Android Studio2.2.3(AS)
語言:Java,Smali
目的:Smali代碼分析之前的准備工作

一、樣本反編譯

利用AK 將樣本反編譯

二、在AS下打開反編譯出來的文件夾

這里寫圖片描述

三、安裝原始apk到AVD中

命令行:adb install (crackme02的文件路徑)
注:如出現安裝失敗可能有如下原因

  1. AVD中存在同名apk。 解決:需卸載后重安裝或命令行:adb -r install (crackme02)
  2. AVD無連接。 解決:adb kill-server , adb device
    安裝並運行原始apk

    四、設置遠程調試

    Run->Debug Configuration-> “+”->Remote Java Application
    修改HOST:localhost,Debug:8700

    五、使用adb以debug方式啟動apk

    執行命令:Adb shell am start -D -n packageName/ActivityName
    其中packageName是主活動所在文件夾,ActivityName是主活動名稱及其路徑,可在AndroidManifest.xml中的android:name查看。這里寫圖片描述
    這里我們執行:
    Adb shell am start -D -n
    com.droider.crackme0201/com.droider.crackme0201.MainActivity
    如果debug模式執行成功會有如下圖
    這里寫圖片描述

    六、准備調試程序

    1、啟動Android Device Monitor.
    這里介紹兩種方式啟動,第一種方式在舊版本的AS中可行,但在我現在的AS版本卻不行,似乎打開的文件夾不是app項目,就無法通過選項卡打開:
    (1)Tools->Android->Android Device Monitor
    (2)命令行中,進入 SDK tools/ directory 目錄,輸入下述命令:
    monitor
    參考:http://blog.csdn.net/qzw9231000/article/details/53115878
    2、選擇對應的Device,這個Device有8700端口。
    這里寫圖片描述
    3、設置斷點
    這里我們在MainActivity.smali的
    .method private checkSN(Ljava/lang/String;Ljava/lang/String;)Z
    下一行設置斷點。
    這里寫圖片描述

七、開始調試程序!

debug!
這里寫圖片描述
發現程序停在了斷點處,摁下f8一步步調試,並添加監視變量即可開始通過Smali代碼對程序進行分析。

jpg改rar 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM