漏洞戰爭:軟體漏洞分析精要

漏洞戰爭:軟體漏洞分析精要

《漏洞戰爭:軟體漏洞分析精要》是2016年6月出版的圖書,作者是林椏泉。

基本介紹

  • 書名:安全技術大系 
  • 作者:林椏泉 
  • ISBN:9787121289804 
  • 類別:科技 >> 計算機 >> 信息安全 
  • 頁數:604 
  • 出版時間:2016-06 
  • 開本:16開 
內容簡介,圖書目錄,

內容簡介

本書系統地講解軟體漏洞分析與利用所需的各類工具、理論技術和實戰方法,主要涉及Windows和Android系統平台。全書根據不同的軟體漏洞類型劃分,比如棧溢出、堆溢出、UAF、核心漏洞等,同時又針對當前流行的移動安全,加入Android平台上的漏洞分析與利用。以精心挑選的經典漏洞為例,以分享漏洞的分析技巧和工具為主,對這些漏洞的成因、利用及修複方法進行詳細講解,旨在"授之以漁”。本書最大的特點是以各種類型的經典漏洞作為實戰講解,摒棄空頭理論,幾乎是"一本用調試器寫出來的書”。

圖書目錄

第1章 基礎知識 1
1.1 漏洞的相關概念 1
1.1.1 什麼是漏洞 1
1.1.2 漏洞的價值 1
1.1.3 0Day漏洞 2
1.1.4 PoC與Exploit 2
1.2 為什麼要分析漏洞 2
1.3 常用分析工具 3
1.3.1 IDA—反彙編利器 3
1.3.2 OllyDBG—破解與逆向常用調試器 4
1.3.3 Immunity Debugger—漏洞分析專用調試器 4
1.3.4 WinDbg—微軟正宗調試器 5
1.3.5 GDB—Linux調試器 6
1.3.6 JEB—Android反編譯器 7
1.3.7 其他 8
1.4 常見的漏洞分析方法 8
1.4.1 靜態分析 8
1.4.2 動態調試 9
1.4.3 源碼分析 9
1.4.4 補丁比較 9
1.4.5 污點追蹤 10
1.5 學習資源 11
1.5.1 站點分享 11
1.5.2 書籍推薦 12
1.6 本章總結 13
第2章 棧溢出漏洞分析 14
2.1 棧溢出簡史 14
2.2 棧溢出原理 15
2.3 CVE-2010-2883 Adobe Reader TTF字型SING表棧溢出漏洞 16
2.3.1 LuckyCat攻擊事件 16
2.3.2 漏洞描述 18
2.3.3 分析環境 18
2.3.4 基於字元串定位的漏洞分析方法 19
2.3.5 樣本Exploit技術分析 20
2.3.6 樣本shellcode惡意行為分析 26
2.3.7 漏洞修復 29
2.4 CVE-2010-3333 Microsoft RTF棧溢出漏洞 30
2.4.1 林來瘋攻擊事件 30
2.4.2 漏洞描述 31
2.4.3 分析環境 31
2.4.4 RTF檔案格式 32
2.4.5 基於棧回溯的漏洞分析方法 33
2.4.6 漏洞利用 41
2.4.7 Office 2003與Office 2007 Exploit通用性研究 42
2.4.8 漏洞修復 45
2.5 CVE-2011-0104 Microsoft Excel TOOLBARDEF Record棧溢出漏洞 51
2.5.1 漏洞描述 51
2.5.2 分析環境 52
2.5.3 基於污點追蹤思路的漏洞分析方法 52
2.5.4 漏洞修復 59
2.6 阿里旺旺ActiveX控制項imageMan.dll棧溢出漏洞 60
2.6.1 漏洞描述 60
2.6.2 分析環境 60
2.6.3 針對ActiveX控制項的漏洞分析方法 60
2.6.4 漏洞利用 63
2.7 CVE-2012-0158 Microsoft Office MSCOMCTL.ocx棧溢出漏洞 65
2.7.1 Lotus Blossom 行動 65
2.7.2 漏洞描述 65
2.7.3 分析環境 65
2.7.4 基於OffVis工具的Office漏洞分析方法 66
2.7.5 漏洞修復 71
2.8 總結 72
第3章 堆溢出漏洞分析 73
3.1 堆溢出簡史 73
3.2 堆溢出原理 74
3.3 堆調試技巧 79
3.3.1 堆尾檢查 80
3.3.2 頁堆 81
3.4 CVE-2010-2553 Microsoft Cinepak Codec CVDecompress函式堆溢出漏洞 85
3.4.1 漏洞描述 85
3.4.2 分析環境 85
3.4.3 基於HeapPage的堆漏洞分析方法 85
3.4.4 漏洞修復 101
3.5 CVE-2012-0003 Microsoft Windows Media Player winmm.dll MIDI檔案堆溢出漏洞 104
3.5.1 關於“蜘蛛”漏洞攻擊包(Zhi-Zhu Exploit Pack) 104
3.5.2 漏洞描述 105
3.5.3 分析環境 105
3.5.4 MIDI檔案格式 105
3.5.5 基於導圖推算的漏洞分析方法 107
3.5.6 漏洞利用 122
3.5.7 補丁比較 130
3.6 CVE-2013-0077 Microsoft DirectShow quartz.dll m2p檔案堆溢出漏洞 130
3.6.1 漏洞描述 130
3.6.2 基於HTC的漏洞分析方法 131
3.6.3 漏洞修復 134
3.7 CVE-2012-1876 Internet Exporter MSHTML.dll CalculateMinMax堆溢出漏洞 135
3.7.1 在Pwn2Own黑客大賽上用於攻破IE9的漏洞 135
3.7.2 分析環境 135
3.7.3 基於HPA的漏洞分析方法 135
3.7.4 通過信息泄露實現漏洞利用 149
3.7.5 漏洞修復 161
3.8 小結 163
第4章 整數溢出漏洞分析 164
4.1 整數溢出簡史 164
4.2 整數溢出原理 164
4.2.1 基於棧的整數溢出 165
4.2.2 基於堆的整數溢出 166
4.3 CVE-2011-0027 Microsoft Data Access Components整數溢出漏洞 167
4.3.1 在Pwn2Own黑客大賽上用於攻破IE8的漏洞 167
4.3.2 基於堆分配記錄的漏洞分析方法 168
4.3.3 補丁比較 176
4.4 CVE-2012-0774 Adobe Reader TrueType字型整數溢出漏洞 178
4.4.1 漏洞描述 178
4.4.2 PDF檔案格式與常用分析工具 178
4.4.3 基於條件記錄斷點的漏洞分析方法 182
4.4.4 補丁分析 196
4.5 CVE-2013-0750 Firefox字元串替換整數溢出漏洞 197
4.5.1 漏洞描述 197
4.5.2 基於源碼調試的漏洞分析方法 197
4.5.3 源碼比對 207
4.6 CVE-2013-2551 Internet Explorer VML COALineDashStyleArray 整數溢出漏洞 208
4.6.1 在Pwn2Own黑客大賽上攻破IE10的漏洞 208
4.6.2 基於類函式定位的漏洞分析方法 208
4.6.3 利用信息泄露實現漏洞利用 223
4.7 總結 226
第5章 格式化字元串漏洞分析 227
5.1 格式化字元串漏洞簡史 227
5.2 格式化字元串漏洞的原理 227
5.3 CVE-2012-0809 Sudo sudo_debug函式格式化字元串漏洞 234
5.3.1 漏洞描述 234
5.3.2 通過源碼比對分析漏洞 234
5.4 CVE-2012-3569 VMware OVF Tool格式化字元串漏洞 235
5.4.1 漏洞描述 235
5.4.2 基於輸出訊息的漏洞定位方法 235
5.5 總結 242
第6章 雙重釋放漏洞分析 243
6.1 雙重釋放漏洞簡史 243
6.2 雙重釋放漏洞的原理 243
6.3 CVE-2010-3974 Windows 傳真封面編輯器fxscover.exe雙重釋放漏洞 246
6.3.1 漏洞描述 246
6.3.2 通過棧回溯和堆狀態判定漏洞類型 246
6.3.3 通過補丁比較確定漏洞成因及修複方法 249
6.4 CVE-2014-0502 Adobe Flash Player 雙重釋放漏洞 251
6.4.1 GreedyWonk行動 251
6.4.2 靜態分析攻擊樣本 251
6.4.3 shellcode動態分析 263
6.4.4 基於ROP指令地址的反向追蹤 265
6.5 總結 273
第7章 釋放重引用漏洞分析 274
7.1 釋放重引用(Use After Free,UAF)漏洞簡史 274
7.2 UAF漏洞時原理 274
7.3 CVE-2011-0065 Firefox mChannel UAF漏洞 277
7.3.1 漏洞描述 277
7.3.2 通過動態調試快速定位漏洞源碼 277
7.3.3 漏洞利用 285
7.3.4 源碼比對 286
7.4 CVE-2013-1347 Microsoft IE CGenericElement UAF漏洞 287
7.4.1 “水坑”攻擊事件 287
7.4.2 通過HPA快速定位漏洞對象 287
7.4.3 逆向分析IE引擎對JavaScript代碼的解析 290
7.4.4 追本溯源:探尋漏洞的本質 321
7.4.5 漏洞利用 324
7.5 CVE-2013-3346 Adobe Reader ToolButton UAF漏洞 326
7.5.1 “Epic Turla”網路間諜攻擊行動 326
7.5.2 使用peepdf分析PDF惡意樣本 326
7.5.3 漏洞利用 338
7.6 CVE-2015-0313 Adobe Flash Player Workers ByteArray UAF漏洞 340
7.6.1 漏洞描述 340
7.6.2 分析ActiveScript虛擬機源碼輔助漏洞調試 340
7.6.3 Flash JIT調試外掛程式與符號檔案 353
7.6.4 漏洞利用 354
7.6.5 漏洞修復 360
7.7 本章總結 360
第8章 數組越界訪問漏洞分析 361
8.1 數組越界與溢出的關係 361
8.2 數組越界訪問漏洞原理 361
8.3 CVE-2011-2110 Adobe Flash Player 數組越界訪問漏洞 363
8.3.1 漏洞描述 363
8.3.2 解決安裝舊版Flash Player的限制問題 364
8.3.3 通過Perl腳本輔助分析樣本 365
8.3.4 搭建伺服器重現漏洞場景 371
8.3.5 通過修改樣本代碼定位漏洞 373
8.3.6 通過構造信息泄露利用漏洞 376
8.3.7 通過搜尋指令序列分析補丁 380
8.4 CVE-2014-0160 OpenSSL TLS 數組越界訪問漏洞(“心臟出血”漏洞) 382
8.4.1 漏洞描述 382
8.4.2 基於源碼對比與跟蹤的漏洞分析方法 383
8.4.3 利用漏洞盜取網站賬號 389
8.5 本章總結 394
第9章 核心漏洞分析 395
9.1 Windows核心漏洞漫談 395
9.2 Windows核心調試環境搭建 396
9.3 常見核心漏洞原理與利用 398
9.3.1 漏洞成因分析 398
9.3.2 漏洞利用 405
9.4 360安全衛士bregdrv.sys本地提權漏洞分析 414
9.4.1 漏洞描述 414
9.4.2 基於導出函式和IO控制碼的追蹤分析 414
9.5 CVE-2011-2005 Windows Afd.sys 本地提權漏洞 423
9.5.1 漏洞描述 423
9.5.2 從利用代碼到漏洞函式的定位分析 423
9.5.3 補丁比較 426
9.6 CVE-2013-3660 Windows win32k.sys EPATHOB指針未初始化漏洞 426
9.6.1 漏洞描述 426
9.6.2 通過IDA定義結構體輔助分析 427
9.6.3 漏洞利用 431
9.7 CVE-2014-1767 Windows AFD.sys 雙重釋放漏洞(Pwn2Own 2014) 437
9.7.1 漏洞描述 437
9.7.2 基於IOCTL處理函式自動追蹤記錄的分析方法 437
9.7.3 漏洞利用 454
9.7.4 補丁分析 460
9.8 本章總結 462
第10章 Android平台漏洞分析 463
10.1 Android平台漏洞簡史 463
10.2 Android平台漏洞分類 466
10.3 常見的漏洞分析方法 467
10.3.1 APK靜態分析 467
10.3.2 smali動態調試 468
10.3.3 so庫動態調試 474
10.3.4 補丁源碼比對 475
10.3.5 系統Java源碼調試 477
10.3.6 系統C/C++源碼調試 486
10.3.7 Android核心源碼調試 488
10.4 智慧型插座漏洞分析 492
10.4.1 漏洞描述 492
10.4.2 靜態逆向分析 492
10.4.3 利用漏洞控制網路上的任意插座 497
10.4.4 總結 502
10.5 CVE-2013-4787 Android系統簽名漏洞 502
10.5.1 漏洞描述 502
10.5.2 Android簽名機制 503
10.5.3 漏洞重現 509
10.5.4 漏洞原理分析 514
10.5.5 漏洞修復 516
10.6 CVE-2010-1119 Android WebKit UAF漏洞 516
10.6.1 漏洞描述 516
10.6.2 漏洞利用 517
10.6.3 通過補丁源碼分析漏洞成因 524
10.7 CVE-2014-3153 Android核心Futex提權漏洞(Towelroot) 528
10.7.1 Android設備Root神器—Towelroot 528
10.7.2 通過核心源碼調試分析漏洞 528
10.7.3 漏洞利用 548
10.7.4 漏洞修復 554
10.8 本章總結 554
第11章 其他類型的漏洞分析 555
11.1 本章引言 555
11.2 CVE-2013-2423 JAVA Applet reflection 類型混淆代碼執行漏洞 555
11.2.1 漏洞描述 555
11.2.2 類型混淆漏洞 555
11.2.3 Java安全機制 556
11.2.4 漏洞分析與利用 558
11.2.5 漏洞修復 562
11.2.6 2013年漏洞之王—Java 563
11.3 CVE-2014-0257 Microsoft Internet Explorer 11 dfsvc 組件沙盒逃逸漏洞 564
11.3.1 漏洞描述 564
11.3.2 IE沙盒保護原理 564
11.3.3 IE沙盒攻擊面分析 569
11.3.4 CVE-2014-0257漏洞分析與利用 570
11.4 CVE-2014-9150 Adobe Acrobat Reader MoveFileEx IPC Hook 競爭條件
(沙盒逃逸)漏洞 572
11.4.1 Therac-25 醫療事故 572
11.4.2 競爭條件漏洞原理 573
11.4.3 CVE-2014-9150漏洞描述 574
11.4.4 Adobe沙盒簡介 574
11.4.5 利用漏洞實現沙盒逃逸 575
11.5 本章總結 578
第12章 軟體漏洞發展趨勢 579
12.1 軟體漏洞領域的新挑戰 579
12.2 移動終端漏洞發展趨勢 579
12.3 雲計算平台漏洞發展趨勢 581
12.4 物聯網漏洞發展趨勢 583
12.5 本章總結 585

相關詞條

熱門詞條

聯絡我們