iOS逆向動態除錯

2021-09-22 01:54:54 字數 1463 閱讀 8333

1.拷貝越獄手機/developer/usr/bin目錄下的debugserver到mac電腦,在mac端輸入

scp -p 2222 root@localhost:

/developer/usr/bin/debugserver ~

/debugserver

2.對debugserver進行**(ios11可以不用**,因為只支援64位構架的程式),在debugserver所在目錄輸入lipo -info debugserver . 在終端輸入:lipo -thin armv7 debugserver -output debug-server

3.在xcode裡新建乙個plist檔案

"1.0"

>

/key>

>

get-task-allow<

/key>

>

task_for_pid-allow<

/key>

>

run-

unsigned

-code<

/key>

>

<

/dict>

<

/plist>

然後把plist檔案拷貝到電腦的debugserver同乙個目錄下 ,在終端輸入

codesign -s - --entitlements en.plist -f debugserver

可以給我們的debugserver賦上task_for_pid許可權。

4.然後在終端裡輸入: codesign -d --entitlements - ./debugserver

檢視授權檔案描述, plist檔案寫入的東西

5.終端裡輸入: scp -p 2222 ./debugserver root@localhost:/usr/bin/debugserver

將debugserver拷貝到手機

6.ps aux 檢視手機程序

7.mac切換到手機 cd /usr/bin/ 以後, 輸入chmod +x debugserver,給許可權

11.新開乙個終端,先做埠**:iproxy 1234 1234,這樣能更快的連線,新開乙個終端:lldb 回車,做了埠**輸入: process connectconnect://localhost:1234,沒做埠**輸入

process connectconnect://ip

12.連線成功後,輸入c繼續,然後image list -o -f ,獲取基位址

13.拷貝基位址,然後在hopper裡執行你砸完殼以後的 可執行檔案,然後找你想除錯的函式名,記錄下這個函式名的偏移位址,

然後在終端輸入br s -a 』基位址+0x偏移位址』,開始斷點除錯。

iOS逆向教程之動態除錯詳解

前言 有時候想更了解別人app的呼叫流程,就需要在app執行的時候進行動態除錯。動態除錯指的是將程式執行起來,通過下斷點 列印等方式,檢視引數 返回值 函式呼叫程式設計客棧流程等。下面話不多說了,來隨著小編一起看看詳細的介紹吧 xcode的動態除錯原理 首先了解一下 xcode 編譯和偵錯程式的發展...

IOS逆向分析之Xcode動態除錯APP

1.一台蘋果越獄手機。3.在 cydia 上安裝 openssh,用來登了越獄手機。5.登入越獄手機,預設密碼 alpine 如果是從非越獄的匯出來的 ipa 檔案再安裝進越獄手機的,需要輸入賬號和密碼才能執行,而輸入賬號密碼需要原來手機的驗證碼,如果沒有驗證碼輸入框,驗證碼是在輸入完密碼後接著輸入...

iOS 動態除錯LLDB

最近在研究ios的逆向,學到了動態除錯lldb這塊,之前在開發的時候只是進行正常的打斷點和列印引數,沒有去具體的了解整個除錯流程。這次做個相關知識的學習並進行個總結。什麼是lldb?lldb是low level debugger的簡稱,在ios開發的除錯中lldb是經常使用的,lldb是xcode內...