第1章 Android的基本概念 1
1.1 Android的架構 1
1.1.1 Linux內核 2
1.1.2 庫 2
1.1.3 Android運行時 2
1.1.4 應用程序與框架 4
1.1.5 設備文件目錄結構 5
1.2 Android 重要組件 10
1.2.1 Activity 10
1.2.2 Service 11
1.2.3 Content Provider 11
1.3 Android應用程序的基本結構 11
1.4 小結 18
第2章 Android應用程序診斷環境 19
2.1 構建Android環境 19
2.1.1 安裝Android SDK 19
2.1.2 安裝ADK 23
2.1.3 測試Android開發環境 34
2.1.4 Linux 係統Android開發環境構建 38
2.2 構建數據包分析及檢測環境 40
2.2.1 使用無綫路由器收集信息 40
2.2.2 利用支持USB類型的AP(支持網關)收集信息 46
2.2.3 設置點對點網絡以收集信息 48
2.2.4 使用tcpdump二進製文件收集信息 52
2.3 切換設備平颱 55
2.3.1 通過攻擊代碼瞭解Rooting 55
2.3.2 使用Tegrak內核 66
2.3.3 使用CF-Auto-Root 69
2.4 Android診斷工具介紹 73
2.4.1 ADB基本命令 73
2.4.2 導齣/導入設備中的apk文件 78
2.4.3 使用LogCat進行分析 80
2.4.4 使用pm命令獲取設備信息 86
2.4.5 使用Busybox擴展Android係統命令 89
2.5 使用編輯器分析文件格式 91
2.6 小結 101
第3章 Android App分析方法 102
3.1 通過反編譯進行靜態分析 102
3.2 通過動態調試進行分析 107
3.3 通過代碼修補繞過apk文件 115
3.4 使用AndroGuard進行分析 117
3.4.1 使用Androapkinfo查看信息 119
3.4.2 使用Androxml查看二進製XML 文件 120
3.4.3 使用Androlyze進行分析 121
3.4.4 使用Androdd查看apk文件結構 130
3.4.5 使用Androdiff和Androsim比較文件 133
3.5 使用DroidBox進行自動分析 135
3.5.1 path中添加adb命令 135
3.5.2 使用Android SDK Manager升級Packages 135
3.6 使用Sublime插件進行分析 144
3.7 使用APKInspector進行分析 147
3.8 使用dexplorer和dexdump進行分析 151
3.9 使用Santoku分析移動App 152
3.9.1 診斷工具Santoku 152
3.9.2 Santoku 安裝與運行方法 153
3.9.3 使用Santoku對移動App進行逆嚮分析 158
3.10 小結 159
第4章 惡意代碼分析 160
4.1 使用在綫分析服務 160
4.1.1 使用Anubis分析惡意App 161
4.1.2 使用VirusTotal分析惡意App 162
4.1.3 使用VirusTotal App進行診斷 174
4.1.4 使用andrototal診斷 176
4.1.5 使用apkscan App進行診斷 179
4.1.6 使用Dexter進行診斷 184
4.1.7 使用APK Analyzer進行診斷 186
4.2 手動分析惡意代碼App 187
4.2.1 分析smartbiling.apk惡意代碼(獲取設備信息).188
4.2.2 分析alyac.apk惡意代碼(僞造殺毒App) 199
4.2.3 分析miracle.apk惡意代碼(發送設備信息) 219
4.2.4 分析phone.apk惡意代碼(修改金融App) 224
4.2.5 apk-locker使用案例 231
4.3 用戶應對惡意代碼威脅的方法 235
4.3.1 禁止點擊和下載可疑URL 236
4.3.2 安裝手機殺毒軟件並定期更新 238
4.3.3 關閉不使用的無綫接口 239
4.3.4 禁止隨意修改平颱結構 240
4.3.5 使用三星KNOX(基於SEAndroid)保障安全 241
4.4 小結 242
第5章 Android 移動服務診斷 243
5.1 構建虛擬漏洞診斷測試環境 243
5.2 OWASP TOP 10移動安全威脅 248
5.3 保存不安全的數據 250
5.3.1 虛擬程序實操 252
5.3.2 查看/data/data/目錄 253
5.3.3 應對方案 254
5.4 易受攻擊的服務器端控製 255
5.5 使用易受攻擊的密碼 263
5.6 傳輸層保護不足(非加密通信) 264
5.7 源代碼信息泄漏 270
5.8 泄漏重要信息 272
5.8.1 泄漏內存中的重要信息 273
5.8.2 虛擬程序實操 276
5.9 泄漏日誌信息 280
5.10 Web服務漏洞項目診斷 281
5.11 App應對方案:加密源代碼 283
5.11.1 ProGuard 283
5.11.2 用ProGaurd生成密鑰 284
5.11.3 設置ProGuard 286
5.11.4 ProGuard生成文件簡介 289
5.11.5 ProGuard的結果文件 291
5.12 小結 293
第6章 使用Android診斷工具 294
6.1 PacketShark:網絡數據包截獲工具 294
6.2 Drozer:移動診斷框架 298
6.3 ASEF:移動設備漏洞工具 307
6.3.1 通過安裝apk文件進行檢測 308
6.3.2 檢測設備apk文件 312
6.4 DroidSheep:Web會話截取工具 319
6.5 dSploit:網絡診斷工具 325
6.5.1 端口掃描 328
6.5.2 獲取信息 329
6.5.3 破解賬號 329
6.5.4 中間人攻擊 330
6.6 AFLogical:移動設備取證工具 332
6.7 小結 333
第7章 Android黑客大賽App試題 334
7.1 Android App試題 1 334
7.1.1 試題描述與齣題目的 334
7.1.2 解題 334
7.2 Android App試題2 341
7.2.1 試題描述與齣題目的 341
7.2.2 解題 341
7.3 Android App試題3 344
7.3.1 試題描述與齣題目的 344
7.3.2 解題 345
7.4 Android App試題4 352
7.5 小結 361
參考網站 362
後記 363
· · · · · · (
收起)