逆向工具列表

hook@2x.png

1.1 檢測工具

  • Reveal
  • tcpdump
  • libNotifyWatch
  • PonyDebugger

1.2 開發工具

  • Theos - tweak

1.3 反編譯工具

  • IDA

1.4 調試工具

  • LLDB

1.5 查看 App 文件目錄

  • iFunBox
  • iExplorer
  • iFile

2. 文件目錄

mac 目錄 解釋
/ 根目錄
/bin "binary", 存放提供用戶級基礎功能的二進制文件,如 ls, pwd, ps 等
/dev "device", 存放 BSD 設備文件. 每個文件代表系統的一個塊設備或字符設備.一半來說"塊設備"以塊為單位傳輸數據, 比如硬盤; 而"字符設備"以字節為單位傳輸數據, 如調制解調器.
/sbin "system binary", 存放提供系統級基礎功能的二進制文件, 如 netstat, reboot 等;
/etc "et cetera", 存放系統腳本及配置文件, 如 passwd, hosts 等, 在ios 中實際是一個符號鏈接, 實際指向 /private/etc
/private 存放兩個目錄, 分別是/private/etc 和 /private/var.
/tmp 臨時目錄.在ios 中實際是一個符號鏈接, 實際指向 /private/tmp
/usr 包含了大多數用戶工具和程序. /usr/bin 包含了/bin 和 /sbin中未出現的基礎功能, 比如 nm,killall 等;/usr/include包含所有的標準 C 頭文件; /usr/lib 存放庫文件.
/var "variable", 存放一些經常更改的文件, 比如日志, 用戶數據, 臨時文件等. 其中 /var/Mobile/Application 下存放了所有 App store App, 是要重點關注的目錄之一.
/boot 存放能使系統成功啟動的所有文件, 這些文件一般在內核用戶程序開始執行前得到調用. ios 此目錄為空
/lib 存放系統庫文件, 內核模塊及設備驅動等. ios 此目錄為空
/mnt "mount", 存放臨時的文件系統掛載點. ios 此目錄為空
/Application 存放所有的系統 App 和來自 Cydia 的 App, 不包活 App Store App. 越獄過程把/ Application 變成了一個符號鏈接, 實際指向 /var/stash/Applications.
ios 目錄 解釋
/Developer /Developer 相對沒有那么重要, 它的出現完全是因為我們在 Xcode 連接iOS設備選擇了 "Use for Development".
/Library 用來存放系統 App 的數據. 其中最需要關注的是 /Library/MobileSubstance 目錄, 因為這個目錄存放了所有基于 MobileSubstance 的插件(tweak).
/System 包含了大量的系統組件: ./Library/PrivateFrameworks: 存放 ios 中各種 framework; ./Library/CoreServices 里的 SpringBoard.app 就是桌面管理器, 是用戶與系統交流的最重要的中介. ./Library/PreferenceBundles 其中的各種 bundle 提供了"設置"中的絕大多數功能.
/User 用戶目錄, 實際指向 /var/mobile, 這個目錄里存放了大量的用戶數據, 比如: /var/mobile/Media/DCIM:照片目錄; /var/mobile/Library/SMS:短信目錄; /var/mobile/Library/Mail:郵件目錄; /var/wireless/Library/CallHistory: 通話記錄; /var/mobile/Applications, 存放的是從 app store 下載的 app.

3. 安裝包格式

  • deb
    deb 格式是 Debian 系統(包含 Debian 和 Ubuntu)專屬安裝包格式, 配合 APT 軟件管理系統使用, 是當前 Linux 下非常流行的一種安裝包格式, 是由 Cydia 作者 Jay Freeman(saurik)移植到 iOS 中的.
    由于 Unix 類系統對權限, 所有者, 組的要求很嚴格, 而 deb 格式安裝包又經常會涉及系統比較底層的操作, 可以獲取較高的權限, 所以從 Cydia 下載的 app 都是 deb 格式的.
  • ipa
    ipa 格式是蘋果公司在iOS平臺上推出的專屬軟件安裝包, 在2.0固件發布后才正式投入使用, 是目前 ios 中唯一的官方安裝包格式.
    ipa 文件權限很小, sandbox 限制很大, 訪問資源十分有限, 這一點早已為廣大開發人員熟知.
  • pxl
    pxl 格式起源于 Mac 系統上的 pkg 安裝包, 在1.x 固件時代被廣泛使用, 曾經是 ios 平臺上唯一的官方安裝包格式. 現在的91手機助手等少數平臺在使用.

4. Dynamic Library & Static Library

  • 動態庫 (StaticLibrary)
    在一個 app 啟動時, 系統會把 App 的代碼和它所鏈接的 StaticLibrary 一起加載到分配好的內存空間中, 不過如果如果一次性加載的內容過多, 會造成 app 啟動變慢.
  • 動態庫 (DynamicLibrary)
    動態庫相對"智能", 只有當 App 要用到這個 Library 時, 系統才把對應的動態庫加載進內存. 具體來說, 當一個 app 啟動時, ios 內核創建一個新進程, 然后把 App 的代碼加載到新進程的內存空間里; 同時內核還會啟動 Dynamic Loader(/usr/lib/dyld), 把 App 需要的動態庫加載到內存空間.

5. deamon

deamon: 進程守護者, 跟 Windows 中的 service 類似.
deamon 存在的意義就是后臺運行, 為用戶操作系統提供各種守護, 如: imagent 保障 iMessage 的正確收發, mediaserverd 處理幾乎所有音頻, 視頻, syslogd 記錄系統日志等.
iOS 系統中的 deamon 主要由一個可執行文件和一個 plist 文件構成. iOS 的根進程是 /sbin/launchd, 會在開機或接到命令時檢查 /System/Library/LaunchDeamon 和 /Library/Deamon 下所有符合格式規定的 plist 文件, 然后按需啟動對應的 daemon.這里的 plist 文件和 app 中的 Info.plist 文件功能類似, 記錄了 deamon 的基本信息. "iOS第一款電話錄音軟件 - Audio Recorder"就是通過逆向 /usr/sbin/mediaserverd 這個 deamon 實現的!!!

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 229,117評論 6 537
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,860評論 3 423
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 177,128評論 0 381
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,291評論 1 315
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,025評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,421評論 1 324
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,477評論 3 444
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,642評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,177評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,970評論 3 356
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,157評論 1 371
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,717評論 5 362
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,410評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,821評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,053評論 1 289
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,896評論 3 395
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,157評論 2 375

推薦閱讀更多精彩內容

  • WebSocket-Swift Starscream的使用 WebSocket 是 HTML5 一種新的協議。它實...
    香橙柚子閱讀 24,006評論 8 183
  • Get Started Check code at: https://github.com/wghglory/an...
    wghglory閱讀 201評論 0 0
  • 細數光陰,唯嘆生活不易,生活時常甩我一個大嘴巴,打的我暈頭轉向。我開始懷疑人生,痛恨生活,常常用命運多舛來形...
    楓先森閱讀 423評論 0 0
  • 我是日記星球361號星寶寶,我正在參加日記星球星寶寶第十四期21天蛻變之旅,這是我的第二十三篇原創日記。 每年只有...
    遇見更好的我自己閱讀 172評論 0 1
  • 我在圖書館借的書快過期了,嗯嗯,說得我好像很喜歡看書一樣。 我的朋友找我出國旅行,想到自己爛爛的英語水平,還被姐姐...
    andyou12345閱讀 231評論 0 0