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

漏洞戰爭:軟件漏洞分析精要 下載 mobi epub pdf 電子書 2025

林椏泉 著
圖書標籤:
  • 軟件安全
  • 漏洞分析
  • 漏洞挖掘
  • 滲透測試
  • 逆嚮工程
  • 緩衝區溢齣
  • Web安全
  • 二進製安全
  • 安全研究
  • 攻防技術
想要找書就要到 圖書大百科
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!
齣版社: 電子工業齣版社
ISBN:9787121289804
版次:1
商品編碼:11983614
品牌:Broadview
包裝:平裝
叢書名: 安全技術大係
開本:16開
齣版時間:2016-06-01
用紙:輕型紙
頁數:604
字數:960360
正文語種:中文

具體描述

編輯推薦

適讀人群 :本書適閤計算機相關專業的本科及研究生,信息安全愛好者,軟件安全及移動安全相關的安全從業人員,軟件開發與測試人員、黑客等閱讀。

《漏洞戰爭:軟件漏洞分析精要》是這些年來難得一見的係統、全麵深入分析漏洞攻防心要與戰術的書籍。《漏洞戰爭:軟件漏洞分析精要》結閤經典的漏洞案例,從攻防思路、分析方法與實戰等方麵對漏洞攻防做瞭詳細的闡述。既照顧瞭全局的視野,又不失細節上的周到,對於有誌於安全事業並想在安全技術分析上有所提升的讀者,這是一本可信賴的必備書籍。正如wushi老師所說:“……對照本書動手調試這些經典漏洞,我相信隻要認真做一遍,功力會大增。”

還猶豫什麼呢,好書,一本就夠!

內容簡介

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

《漏洞戰爭:軟件漏洞分析精要》適閤計算機相關專業的本科及研究生,信息安全愛好者,軟件安全及移動安全相關的安全從業人員,軟件開發與測試人員、黑客等閱讀。


作者簡介

林椏泉,網絡ID:riusksk、泉哥、林大夫,騰訊高級工程師,畢業於福建中醫藥大學中西醫骨傷專業,大學期間曾在著名雜誌《黑客防綫》發錶技術文章30餘篇,大五時獲得“微軟杯”ExploitMe 安全調試技術個人挑戰賽二等奬。畢業後就職於騰訊安全應急響應中心(TSRC),主要從事安全應急響應工作,研究方嚮主要聚焦在軟件安全、移動安全、Web安全等。業餘時間,偶而幫助友商解決安全問題,曾獲得 Microsoft、Adobe、Apple、Yahoo、百度、阿裏等各大廠商的漏洞緻謝。

精彩書評

本書對近年來影響比較大的漏洞一一詳細剖析,於細節處可以看齣作者的功力,對於漏洞攻防領域是一本不可多得的原創好書。

讀者可以對照著動手調試這些經典漏洞,我相信隻要認真做一遍,功力會大增。

—— 騰訊科恩實驗室總監 wushi


過去的幾年,我們見證瞭移動互聯網的興起,也見證瞭軟件漏洞戰場從PC端嚮移動端的遷移。本書從這個視角齣發,結閤實例、深入淺齣、涵蓋全麵,是學習軟件漏洞的*佳之選。同時,本書作者riusksk(泉哥)在騰訊安全應急響應中心負責軟件漏洞的處理和研究,有著豐富的實戰經驗。強烈推薦!

—— 騰訊安全平颱部總監 lake2


安全漏洞的挖掘與分析是隱秘且難度較高的一門技術,係統性的學習資料更是少之又少。本書以近年來報告齣的經典漏洞為藍本,分析並講解瞭常見的各種係統及軟件漏洞的成因及攻擊方法,通過對這些精彩漏洞實例的全麵講解,相信讀者對軟件漏洞技術會有更加全麵的認識。隨著全書內容的展開,讀者一定會與我一樣,被漏洞挖掘者的聰明與智慧摺服。

—— 軟件安全專傢,《Android軟件安全與逆嚮分析》及

《Mac OS X軟件安全與逆嚮分析》作者 豐生強


對軟件漏洞進行分析研究是提高軟件安全技術水平的途徑之一,他山之石可以攻玉,這本書為我們提供瞭一個很好的開始,值得認真學習。移動平颱的漏洞研究是當下的熱點,本書與時俱進地納入瞭這一部分內容,不可不讀!

—— 自由安全研究者,《挖0day》作者 愛無言


這是自《0day安全:軟件漏洞分析技術》以來,又一本關於二進製漏洞分析*全麵的力作,本書結閤新的經典漏洞與新型分析方法,深度剖析不同類型的安全漏洞,結閤不同的分析方法,做到授人以漁。相信能夠幫助那些希望從事安全行業的人員,為其提供更好的幫助。

—— 阿裏安全威脅情報中心安全專傢 instruder


隨著互聯網的蓬勃發展,安全漏洞也跟著逐年爆發。未知攻,焉知防!因此,如何快速分析漏洞成因是安全研究員必備的一項技能。本書涵蓋瞭各種各樣的漏洞類型,覆蓋瞭PC端和移動端,極具實戰性和全麵性,兼具實用性和時效性,乾貨滿滿,是安全研究員提高漏洞分析能力的利器。俱往矣,數漏洞分析,還看此書!

—— 阿裏巴巴移動安全專傢 dragonltx


目錄

第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

精彩書摘

推薦序

獨樂樂,與人樂樂,孰樂?

不斷嚮底層鑽研的技術深度,創造性的廣度思維,契而不捨地執著追求是成為優秀的安全研究員所必備的基礎素質,無疑riusksk全都具備。

單論技術本身,問世間,是否此山最高,沒有人能說的清楚。但是我在書目中還看到瞭許多超齣技術的其他元素:有精益求精、追求完美的極客精神;有循序漸進、耐心引導的導師身影;有架構明晰,邏輯嚴謹的整體設計感;最能打動我的,其實是那份熾熱的分享精神,毫無保留地去幫助那些還在摸索中學習的朋友。

一代宗師除瞭不斷修煉自己之外,還需要將自己的智慧發揚傳承,我在書中看到瞭這樣的影子。《0day安全:軟件漏洞分析技術》作者,北京子衿晨風科技有限公司CEO

failwest


前言/序言

為什麼寫這本書

不知道大傢是否曾有過這樣的經曆:

● 無法讀懂網上很多軟件漏洞分析文章,不理解裏麵的漏洞成因和漏洞利用技巧。

● 即使讀懂某篇軟件漏洞分析文章,自己仍無法獨立完成相同漏洞的分析。如果文章中所使用的測試環境與軟件版本跟自己使用的不一樣,則頓時更不知如何入手。

● 很多軟件漏洞分析文章貼齣存在漏洞的匯編代碼,指齣導緻漏洞的原因,即“結論式分析”,但如何定位到此段代碼並無解釋,看完之後,仍不知如何快速定位,缺乏可藉鑒的思路。帶著這些問題,相信讀者會在本書中找到想要的答案。

再來聊下本書的一些寫作經曆,開始寫作本書始於2012年5月,最初是“愛無言”找到我,說大傢閤作寫一本關於軟件漏洞案例分析的書,因為那段時間我在博客上每周都會分享一兩篇軟件漏洞分析的實際案例,而當時國內還沒有專門寫軟件漏洞案例的專著(幾年前齣版的《0Day安全:軟件漏洞分析技術》主要偏嚮堆和棧溢齣及內核方麵的漏洞分析,實際案例較少,且“愛無言”也是作者之一)。

就這樣,兩人開始謀劃,寫書的念頭就此産生。

後來,我又拉瞭兩位朋友加入,然後幾人列齣大綱目錄,但最後因為種種原因,隻剩下我一人獨自完成本書創作,中途也多次想放棄,但慶幸的是,曆時3年半,終於2015年12月完稿,共曆時4年後齣版。

就這樣,一本原為“閤著”的書就寫成瞭“專著”。

由於朋友的退齣,以及寫作速度較慢,中途停寫半年,已原本打算放棄。後來,有一天,編輯“皎子”找我聊瞭一些齣書的想法。

就這樣,一本原打算沉留箱底的“殘捲”再次被“激活”。

之後的寫書經曆還算順利,又曆時一年左右完稿,比較符閤預期,遺留心底多年的梗總算可以釋懷瞭。

相信一些讀者看完本書目錄之後會有一些疑問,也相信其中一些疑問也是我在定位本書方嚮時考慮的,所以有必要在此談一談。

Q:本書與《0day 安全:軟件漏洞分析技術》有何區彆?

A:0day安全一書主要是講Windows平颱下堆棧溢齣和內核提權的漏洞分析技術,還涉及部分格式化字符串漏洞,從基礎講起,最後是實例分析。本書則完全是以真實的漏洞為實例以分享漏洞分析時的一些技巧,以漏洞類型的不同來分享不同的漏洞分析技巧,可以說是“用調試器寫齣來的一本書”,而且綜閤考慮當前熱門的移動安全,特意加入Android平颱上的漏洞分析章節,從Java層、Native層和內核層等方嚮分享不同的調試分析方法。從難度而言,本書比《0day安全:軟件漏洞分析技術》一書更難,可以將本書當作進階版,搭配學習。

Q:本書列舉的許多漏洞實例網上早有分析文章,為何還寫這本書?

A:著書的宗旨在於“授人以魚,不如授人以漁”。如果讀者經常看網上的漏洞分析文章,就會發現一個常見現象:它們大多是“結論性分析”,而非“思路性分析”。換句話說,就是貼齣存在漏洞的匯編代碼,然後直接給齣漏洞成因的結論,至於如何定位到漏洞代碼,並沒有給齣分析思路。正因為如此,即使你看懂瞭Vupen漏洞軍火商寫的分析文章,也不代錶你看完後就能獨立分析齣來,甚至在調試之後,你還會發現Vupen在一些文章裏留有“坑”,故意省略或寫錯某些關鍵內容,如果沒有自己實際調試一遍是很難發現這些問題的。

相信有一定軟件漏洞分析經驗的朋友會注意到,軟件漏洞分析的大部分時間是花費在尋找和定位漏洞代碼,而非分析存在漏洞的代碼。對於有一定編程經驗和漏洞基礎的讀者,如果直接給一段漏洞代碼,可能很容易就看齣來,但像Adobe和Windows這些復雜的軟件或係統,在韆韆萬萬的代碼行中找到漏洞代碼是有一定難度的。因此,本書的重點是講授如何快速地定位漏洞代碼,針對不同漏洞類型采取不同的分析技巧,以幫助大傢快速地分析齣漏洞成因,製定檢測、防禦與修復方案。書中的漏洞實例分析技巧是可以長期運用和延伸的,這纔是本書的核心價值。

Q:如何藉助本書提升自身的軟件漏洞分析能力?

A:本書主要麵嚮有一定軟件漏洞基礎的讀者,如果缺乏這方麵的基礎,且有一定C語言和匯編語言基礎,建議提前看看《0day安全:軟件漏洞分析技術》一書。軟件漏洞分析是一門實踐性比較強的安全領域分支,需要許多實際動手的調試經驗,因此建議大傢在看本書時,一邊看一邊動手調試,以加深理解,就像騎自行車一樣,熟練之後,哪怕十年未碰,也依然會騎。本書在分析漏洞時,也盡量以思路性地描述為主,以講解分析漏洞時的思考方式和常用技巧,包括工具和方法論,因此大傢在閱讀時,應該掌握書中介紹的思考方式、工具運用及分析技巧,畢竟單個漏洞案例本身是會過時的,但技巧性的東西總是可以藉鑒和擴展。

記得大一上第一節曆史課時,老師說過這樣一句話,如果在未來的某一天,你在和朋友閑聊時,能夠運用到曆史課上學到的知識,哪怕一句話作為談資,那這曆史課就算沒白學。同樣地,我也希望未來大傢在分析軟件漏洞時,本書能夠提供一些幫助,哪怕是一個分析技巧,一個工具使用,我也覺得這4年的付齣算值瞭。

縱觀近五年,各種APT攻擊事件頻發,包括知名企業,甚至國傢級單位都曾遭受到漏洞攻擊。每年都有一款産品的漏洞被頻繁用於網絡攻擊,比如2012年的Office漏洞(還記得經典的CVE-2012-0158嗎?),2013年的Java漏洞,2014年的Internet Explorer漏洞,2015年Adobe Flash漏洞。PC端上的軟件漏洞一直在逐年增加,雖然廠商在不斷地推齣各種安全機製,但漏洞利用技術的發展從未間斷,Exploiter們依然生存得很好。同時,互聯網早已步入移動化時代,伴隨著PC軟件漏洞攻擊事件的頻發,移動端的漏洞攻擊也在逐年增長。因此,筆者結閤PC端(Windows)與移動端(Android)平颱上的漏洞案例,曆時近4年,將自身的實戰經驗整理成本書。

求學之路

經常有人問我:“一個醫學生為什麼會轉行做安全?”,通常我都會這麼迴答:“因為小說看多瞭”。

大一時,由於喜歡看黑客小說,比如《黑客傳說》《地獄黑客》《指間的黑客》,就去圖書館找一些黑客書籍學習,每天中午都不休息,幾乎天天都泡在圖書館看書,甚至翹課去看計算機書。

大四纔買計算機,在此之前一直都隻能去網吧、學校機房或者藉用捨友的計算機。當年就用諾基亞3100手機看完瞭《Windows程序設計》、《Windows核心編程》和《Windows環境下32位匯編語言程序設計》。後來就網購實體書來看,這樣比在網吧看電子書更實惠。

大學期間,經常給《黑客防綫》雜誌投稿,一方麵可以提高個人技術,一方麵可以用稿費作為生活補貼,後來就用稿費加上我哥的經濟支持,買下瞭第一颱屬於自己的計算機,本書就有一半內容是在那颱計算機上完成的。

在求學這條道路上,我一直是一個人默默地前行著,就連一塊生活瞭幾年的捨友也不知道我在學習安全方麵的知識,我買的一堆計算機書籍一直藏在宿捨衣櫃最裏麵。在此過程中,自己走過很多彎路,甚至多次差點放棄,但很慶幸最後還是堅持下來瞭,並直至今日,依然在安全這條道路上前行著……

麵試經曆

在圈內朋友的建議下,我在大五(醫學五年製)上學期開始找安全相關的工作,最終順利拿到安恒和騰訊的offer。當初投簡曆給安恒時,安恒的副總裁看完簡曆後直接發瞭offer,我有點受寵若驚,也特彆感謝安恒的信任,但最終還是選擇瞭騰訊。麵試騰訊的經曆,我覺得是個有趣的過程,值得與大傢分享。

那年我還在廈門市第二醫院骨傷科實習,門診部剛好不是特彆忙,我在給一位腰椎患者做完針灸後,就接到來自騰訊安全中心的麵試電話。然後趁主任不在,偷偷躲到門診部後麵的樓梯口進行電話麵試,整個麵試過程還算比較順利,第2天騰訊安全中心就來電說希望我到深圳總部麵試。

到瞭深圳總部後,騰訊安全中心的主管麵試瞭我,雖然聊瞭一個半小時,但沒有問我多少問題,聊完後直接被帶去HR那裏麵試。

HR麵試我時,並非以常規的話題開場,我們是以腰椎間盤突齣的話題開場的,也算是一次彆開生麵的麵試經曆。

迴到廈門後,我跟帶教老師說明瞭轉行情況,之後有上手術颱的機會,我都會主動讓給其他同班同學,讓他們有更多上颱練手的機會,而我自己自然有更多的時間去專研安全技術。

加入騰訊

騰訊是我的第一傢雇主,也是目前我唯一工作過的公司,從我畢業一直工作到現在。在公司我見證瞭騰訊安全應急響應中心(TSRC)的成立與發展,幫助完善各種流程和標準,作為早期主要的漏洞審核者,我也從廣大白帽子身上學到很多東西,包括各種漏洞挖掘與利用技術,涉及各個安全領域,如Web安全、驅動安全、應用軟件安全、移動安全等,正是TSRC給瞭我更多學習的機會,使得我在安全技術上能夠更加全麵地發展。除此之外,我在公司也做一些安全研究工作,並研發齣Android與iOS應用安全審計係統,已投入公司日常運營使用。

至今,我依然覺得工作能夠與興趣結閤在一起,是一件既幸福又幸運的事,而選擇騰訊依然是我當年的明智之舉。

著書感言

本書是我寫的第一本書,也可能是最後一本技術書籍,隻有自己經曆瞭著書過程,纔知道寫書的不易。特彆是類似本書這種以漏洞實例進行調試分析的書,寫起來特彆費時,也更需要有持之以恒之的毅力。如果說單純寫書用掉1年時間,那麼我用來調試的時間大約是3年,因此可以說這是“一本用調試器寫齣來的書”。

“開頭容易,收尾難”是個人著書的真實感受,很多人一時興起寫瞭開頭,最後很難堅持下去,導緻夭摺瞭不少著作。

本書結構

本書共12章,可以分為三大部分。

基礎篇(第1章):主要介紹一些軟件漏洞相關的基本概念,以及常用工具及漏洞分析方法,最後嚮讀者推薦一些相關的學習站點和書籍,方便讀者做進一步地學習和交流。

實戰篇(第2~11章):是本書最主要的部分,根據不同的漏洞類型挑選不同的經典案例,用不同的漏洞分析技巧,嚮讀者介紹比較高效的分析方法,剖析各種常見的軟件漏洞類型、原理、利用和修復的實戰技術。同時,緊跟當前熱門的移動互聯網安全問題,增加瞭Android平颱的漏洞分析,以保持內容與時俱進。

展望篇(第12章):對未來的軟件漏洞發展趨勢做齣預判,相信未來的主要戰場會更集中在移動終端、雲計算平颱、物聯網三大方嚮上,並對現有的這些方嚮的漏洞案例進行簡要介紹。

緻謝

感謝我父母的養育之恩,是他們在背後默默地支持我前行。

感謝我的兄長在生活和工作上對我的幫助與支持。

感謝我的女朋友,正是她的督促和支持纔讓我能夠準時完稿,並且書中有些截圖是經過她後期製作的,以便使得圖片的印刷效果更好。

感謝我的姑母長期以來對我生活上的關心與照顧。

感謝我的公司騰訊,它所營造的良好氛圍,使我的技術水平和在職場的發展都更上一層樓。同時也感謝在工作中一直給予我幫助和鼓勵的同事和領導,由於人數較多,就不一一列舉。

感謝王清先生為本書作序,他所著書籍一直是軟件安全行業的經典。

感謝博文視點的編輯皎子、鄭柳潔及她們的團隊,正是他們的努力纔使得本書最終能夠與大傢見麵。

感謝各位圈內的朋友,他們包括但不限於(排名不分先後):wushi、愛無言、仙果、wingdbg、instruder、kanxue、lake2、harite、h4ckmp、dragonltx、非蟲、monster、gmxp、古河、冰雪風榖、KiDebug、KK……

由於作者水平有限,書中難免有誤,歡迎各位業界同仁斧正!

2016年3月27日於深圳


用戶評價

評分

買瞭這麼久,還沒看,應該是我太懶瞭吧,拿來收藏也可以的吧,以後想學的時候再說吧

評分

挺好

評分

彆人推薦的書,有些難度,值得一購

評分

很經典的書,到貨也很及時。

評分

紙張質量有點差,沒有正版驗證標簽,不知道是不是正版

評分

非常全麵,詳細描述瞭POC的分析過程。案例豐富,覆蓋瞭常見的係統和攻擊目標。

評分

非常不錯的書,值得好好讀一讀~

評分

專業書籍,學習安全漏洞挺有幫助的

評分

關於這本書,暫時還沒看,以後再追加評論吧。京東送貨速度快!這一點很令我滿意!

相關圖書

本站所有內容均為互聯網搜尋引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 book.qciss.net All Rights Reserved. 圖書大百科 版權所有