Android安全攻防實戰/安全技術大系 Android安全攻防实战

基思·麥凱恩 (Keith Makan), 斯科特·亞歷山大·鮑恩 (Scott Alexander-Bown)

  • 出版商: 電子工業
  • 出版日期: 2015-07-01
  • 定價: $474
  • 售價: 8.5$403
  • 語言: 簡體中文
  • 頁數: 301
  • 裝訂: 平裝
  • ISBN: 7121261073
  • ISBN-13: 9787121261077
  • 相關分類: Android

已絕版

買這商品的人也買了...

商品描述

 

<內容簡介>

Android是目前最為主流的移動設備操作系統,占據了全球近84%的市場份額。因此,Android系統中的安全問題也就變得十分重要。
本書通過大量極富針對性的實驗,通過對常見的安全場景中解決方案的講解,幫助讀者全面掌握各種攻-防實用技能。因而,本書的實用性也很強,即使是一時不能完全理解其中的技術原理的新手,根據作者給出的方法,也能解決實踐中遇到的大部分問題;而高手也能從中借鑒到一些好的做法。
全書共分九章,涵蓋了基本的Android開發環境和工具;app組件之間及它們與系統的交互方式;Android安全評估框架“drozer”;app及Android原生代碼的逆向技巧;各類漏洞的利用及防護方式;使用SSL在網絡通信中進行更有效的驗證;利用第三方代碼庫或Android中新增的特性,通過加密和在開發時使用設備管理策略,加固app等內容。

 

<章節目錄>

第1章 Android開發工具1
1.1 簡介1
1.2 安裝Android開發工具(ADT)2
1.3 安裝Java開發包(JDK)5
1.4 更新API資源9
1.5 另一種安裝ADT的方法11
1.6 安裝原生開發包(Native Development Kit,NDK)15
1.7 虛擬Android設備16
1.8 使用命令行創建Android虛擬設備(AVD)19
1.9 使用Android調試橋(ADB)與AVD交互21
1.10 從AVD上覆制出/覆制入文件22
1.11 通過ADB在AVD中安裝app23
第2章實踐app安全24
2.1 簡介24
2.2 檢查app的證書和簽名24
2.3 對Android app簽名33
2.4 驗證app的簽名37
2.5 探索AndroidManifest.xml文件37
2.6 通過ADB與activity管理器交互47
2.7 通過ADB提取app裏的資源50
第3章 Android安全評估工具56
3.1 簡介56
3.2 製作Santoku啟動盤和安裝Santoku58
3.3 安裝drozer62
3.4 運行一個drozer會話71
3.5 枚舉已安裝的包(package)72
3.6 枚舉activity78
3.7 枚舉content provider80
3.8 枚舉service83
3.9 枚舉broadcast receiver85
3.10 確定app的受攻擊面(attack surface)87
3.11 運行activity89
3.12 編寫drozer模塊——一個驅動枚舉模塊91
3.13 編寫一個app證書枚舉器94
第4章利用app中的漏洞98
4.1 簡介98
4.2 收集logcat泄露的信息101
4.3 檢查網絡流量106
4.4 通過activity manager被動嗅探intent111
4.5 攻擊service117
4.6 攻擊broadcast receiver121
4.7 枚舉有漏洞的content provider123
4.8 從有漏洞的content provider中提取數據126
4.9 向content provider插入數據129
4.10 枚舉有SQL—註入漏洞的content provider131
4.11 利用可調試的app134
4.12 對app做中間人攻擊139
第5章保護app146
5.1 簡介146
5.2 保護app的組件147
5.3 通過定製權限保護組件149
5.4 保護content provider的路徑(path)152
5.5 防禦SQL註入攻擊155
5.6 驗證app的簽名(防篡改)157
5.7 通過檢測安裝程序、模擬器、調試標志位反逆向工程161
5.8 用ProGuad刪除所有日誌消息164
5.9 用GexGuard進行高級代碼混淆168
第6章逆向app173
6.1 簡介173
6.2 把Java源碼編譯成DEX文件175
6.3 解析DEX文件的格式177
6.4 解釋Dalvik字節碼194
6.5 把DEX反編譯回Java202
6.6 反編譯app的原生庫205
6.7 使用GDB server調試Android進程207
第7章網絡安全211
7.1 簡介211
7.2 驗證SSL自簽名證書212
7.3 使用OnionKit庫中的StrongTrustManager221
7.4 SSL pinning——限定受信SSL的範圍223
第8章原生代碼中漏洞的利用與分析231
8.1 簡介231
8.2 檢查文件的權限232
8.3 交叉編譯原生可執行程序241
8.4 利用競爭條件引發的漏洞249
8.5 棧溢出漏洞的利用254
8.6 自動fuzzing測試Android原生代碼261
第9章加密與在開發時使用設備管理策略274
9.1 簡介274
9.2 使用加密庫275
9.3 生成對稱加密密鑰277
9.4 保護SharedPreferences數據281
9.5 基於口令的加密283
9.6 用SQLCipher加密數據庫287
9.7 Android KeyStore provider290
9.8 在開發時使用設備管理策略293