iOS 應用安全權威指南( 簡體 字) | |
作者:(美)David Thiel(戴維·希爾) | 類別:1. -> 程式設計 -> 手機程式 -> iPhone |
出版社:電子工業出版社 | 3dWoo書號: 45903 詢問書籍請說出此書號! 有庫存 NT售價: 345 元 |
出版日:1/1/2017 | |
頁數:292 | |
光碟數:0 | |
站長推薦: | |
印刷:黑白印刷 | 語系: ( 簡體 字 ) |
ISBN:9787121306068 | 加入購物車 │加到我的最愛 (請先登入會員) |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證, 繁體書的下載亦請直接連絡出版社) | |
推薦序 ............... V
譯者序 ............... VII 作者簡介 ............. IX 前言 .............. XI 致謝 ............... XXI 第一部分 iOS 基礎 第1 章 iOS 安全模型 ............ 2 安全啟動 ............... 3 沙箱機制 ............... 3 資料保護和全盤加密 ............ 4 加密金鑰的層級............ 5 鑰匙串API .............. 7 資料保護API ............ 7 防禦代碼漏洞:ASLR、XN 和其他機制 ......... 8 越獄檢測 ............... 9 蘋果商店的審查是否有用 ............ 10 WebKit 橋接 ............ 11 XXIV iOS應用安全權威指南 動態修復 ............. 11 故意植入不安全的代碼 .......... 12 內嵌解譯器 ............. 12 小結 ................ 12 第2 章 Objective-C 簡明教程.......... 13 關鍵的iOS 程式設計技術 ............. 14 消息傳遞 ............... 14 剖析Objective-C 程式 ............ 15 聲明一個介面 ............. 15 具體實現 ............. 16 使用block 指定回檔 ............. 18 Objective-C 如何管理記憶體 ........... 19 自動引用計數 .............. 19 委託和協議.............. 20 should 消息 .............. 20 will 消息 .............. 21 did 消息 ............. 21 聲明並遵守協議............ 21 category 的潛在問題 ............. 23 方法swizzling ............. 24 小結 ................ 26 第3 章 iOS 應用剖析 ............ 27 對plist 檔進行處理 ............. 29 設備目錄 ............... 32 Bundle 目錄 ............. 34 Data 目錄 ............... 35 Documents 和Inbox 目錄 ........... 35 Library 目錄 ............ 36 tmp 目錄 .............. 38 Shared 目錄 ............. 38 小結 ................ 39 第二部分 安全性測試 第4 章 構建測試平臺 ............ 42 拆掉輔助輪.............. 42 推薦幾個測試設備 ............ 43 使用設備測試與使用模擬器測試 .......... 44 網路和代理設置 .............. 45 繞過TLS 驗證 ............ 45 用stunnel 繞過SSL ............ 47 設備上的證書管理 ............ 49 在設備上設置代理 ............ 50 Xcode 和構建設置 ............ 53 為生活增加點挑戰 ............ 53 啟用完整的ASLR ............ 55 Clang 和靜態分析 ........... 56 Address Sanitizer 和動態分析 .......... 57 使用Instruments 監控程序 ........... 58 啟動工具 ............. 59 用Watchdog 監視系統活動 ........... 61 小結 ................ 62 第5 章 使用lldb 和其他工具進行調試 ......... 63 lldb 中有用的特性 ............ 64 操作中斷點 ............. 64 查看幀和變數 ............. 66 XXVI iOS應用安全權威指南 視覺化查看對象............ 70 操作變數和屬性............ 71 中斷點行為 ............. 73 使用lldb 進行安全分析 ........... 75 錯誤注入 ............. 75 追蹤數據 ............. 77 查看核心框架 ............. 77 小結 ................ 78 第6 章 黑盒測試 ............. 79 安裝協力廠商應用程式 ............ 80 使用.app 目錄安裝 ............ 80 使用.ipa 套裝程式安裝 ........... 82 解密二進位檔案 .............. 82 啟動設備上的debugserver ........... 83 定位加密欄位 ............. 86 轉儲應用程式記憶體 ............ 90 逆向解密後的二進位檔案 ............ 93 使用otool 檢查二進位檔案 ........... 93 使用class-dump 獲得類資訊 ......... 95 使用Cycript 從運行程式中提取資料 ........ 96 使用Hopper 反彙編 ............ 97 繞過證書鎖定 .............. 99 使用Cydia Substrate 工具 ............ 100 使用Introspy 自動攔截 ............ 104 小結 ............... 107 目錄 XXVII 第三部分 Cocoa API 的安全怪癖 第7 章 iOS 網路通信 ............ 110 使用iOS 自帶的URL 載入系統 ......... 110 正確使用傳輸層安全協定 .......... 111 NSURLConnection 的基本驗證策略 ....... 113 在NSURLConnection 中實現TLS 認證 ....... 115 修改重定向行為............ 117 TLS 證書鎖定 ............. 117 使用NSURLSession ............. 120 NSURLSession 配置 ........... 120 執行NSURLSession 任務 .......... 121 如何繞過NSURLSession 的TLS 驗證 ....... 122 NSURLSession 中的基本驗證 ......... 123 管理已存儲的URL 憑證 .......... 125 使用協力廠商網路API 的風險 ........... 126 如何正確使用AFNetworking .......... 126 ASIHTTPRequest 的錯誤使用方式 ........ 128 多點連接 ............... 129 使用NSStream 操作底層網路 ........... 131 使用CFStream 操作更加底層的網路 .......... 133 小結 ............... 134 第8 章 進程間通信 ........... 135 URL scheme 和openURL 方法 .......... 135 定義URL scheme ............ 136 發送和接收URL/IPC 請求 .......... 137 驗證URL 和發送者 ............ 138 劫持URL scheme ............ 140 XXVIII iOS應用安全權威指南 通用連結 ............... 141 使用UIActivity 共用資料 ............ 143 應用程式擴展 .............. 145 檢查應用程式是否實現了擴展 .......... 146 限制和驗證可共用的資料 .......... 147 禁止應用和擴展交互 ............ 148 失敗的IPC 技巧:剪貼板 ........... 149 小結 ............... 150 第9 章 適用於iOS 的Web 應用 ......... 151 使用(並濫用)UIWebView .......... 151 UIWebView 的使用方式 ........... 152 在UIWebView 中執行JavaScript 代碼 ....... 153 橋接JavaScript-Cocoa 的收益和風險 .......... 154 應用與JavaScriptCore 交互 ......... 155 使用Cordova 執行JavaScript 代碼 ......... 159 使用WKWebView ............ 163 WKWebView 的使用方式 .......... 163 WKWebViews 的安全性優勢 ......... 164 小結 ............... 166 第10 章 數據洩漏 ........... 167 揭秘NSLog 和蘋果系統日誌 .......... 167 在發佈版本中禁用NSLog ........... 169 使用中斷點行為來記錄日誌 .......... 170 敏感性資料如何通過剪貼板洩漏 .......... 171 不受限制的系統剪貼板 .......... 171 命名剪貼板的風險 ............ 172 剪貼板資料保護策略 ............ 174 查找並修復HTTP 緩存洩漏 .......... 176 緩存管理 ............. 177 如何刪除緩存資料 ............ 179 HTTP 本機存放區和資料庫中的資料洩漏 ....... 182 按鍵記錄及自動糾錯資料庫 .......... 183 使用者偏好設置的錯誤用法 ............ 185 處理截屏中的敏感性資料 ............ 186 螢幕遮擋策略 ............. 187 遮擋原理解析 ............. 190 隱藏視圖的常見問題 ............ 191 阻止應用掛起,從而避免截屏 .......... 191 狀態保存導致的洩漏 ............ 192 安全的狀態保存 ............ 194 遠離iCloud .............. 196 小結 ............... 197 第11 章 C 語言的遺留問題 ........... 198 格式化字串 .............. 199 預防傳統的C 格式化字串攻擊 ......... 200 預防Objective-C 格式化字串攻擊 ........ 201 緩衝區溢位及棧空間 ............ 202 strcpy 緩衝區溢位 ........... 203 預防緩衝區溢位............ 204 整數溢出和堆 .............. 206 malloc 引發的整數溢出 .......... 206 預防整數溢出 ............. 208 小結 ............... 208 |