-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
3/26 新書到! 3/19 新書到! 3/14 新書到! 12/12 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

從0到1:CTFer成長之路

( 簡體 字)
作者:Nu1L戰隊類別:1. -> 安全 -> 網路安全 -> 駭客攻擊與入侵
譯者:
出版社:電子工業出版社從0到1:CTFer成長之路 3dWoo書號: 53358
詢問書籍請說出此書號!

缺書
NT售價: 790

出版日:9/1/2020
頁數:668
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787121376955
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:


——做網絡安全競賽高質量發展的推動者
Nu1L戰隊的同學們編寫了這本《從0到1:CTFer成長之路》,希望我寫一個序。對于Nu1L戰隊,我的了解主要來自“強網杯”全國網絡安全挑戰賽和“強網”擬態防御國際精英邀請賽,在這兩個國內很優秀的競賽平臺上,他們都取得了很好的成績,也為擬態防御白盒測試做了很多工作。希望他們今后繼續努力,爭取為我國網絡空間安全技術創新做貢獻;也希望這本書能為更多的年輕人學習、掌握網絡空間安全知識與實踐技能提供幫助,激發前行的動力。
“網絡空間的競爭,關鍵靠人才。”“網絡安全的本質在對抗,對抗的本質是攻防兩端的能力較量。”這些重要論述說明了兩個基本問題:其一,人是網絡安全的核心;其二,提高人的能力要靠實踐鍛煉。由此,網絡安全競賽對于提升人才培養質量效益具有特殊意義。從2018年開始,通過“強網杯”等一些列競賽的推動,我國網絡安全競賽和人才培養進入了一個蓬勃發展的新階段。但是,我們也看到了諸多問題,比如:競賽質量良莠不齊,競賽程式化、商業化、娛樂化日趨嚴重,職業選手也就是“賽棍”混跡其中,競賽和人才培養、產業發展相脫節,等等。面對這些問題,我們既需要對網絡安全競賽進行規范,更需要推動競賽高質量發展,讓競賽回歸到服務人才培養、服務產業進步、服務技術創新的初心和本源上。
網絡安全競賽高質量發展,不是看規模有多大,不是看指導單位的層級有多高,更不是看現場有多么酷炫,而是要看究竟解決了或者幫助解決了什么實際問題,看實實在在取得了什么效益,看對網絡空間安全發展有什么實際推動作用。一句話,高質量發展的核心就是一個字——“實”。
競賽要與人才培養相結合。當前,我國網絡安全人才培養還處于一個逐步成熟的發展階段,其中最大的一個問題是課程體系和實踐教學體系還未完全形成。網絡安全競賽對于助推實踐教學體系形成,具有一定的意義,這個過程也是高質量發展的重要基礎。需要匯集更多的智慧和力量,把競賽中的技巧、經驗上升到教育學的層面,并結合理論知識架構,升華為教學體系、衍化為實驗項目、固化為實踐平臺。把題目抽象為科目,才會有更大的普適性,才能便于更多的人學習、實踐網絡安全,競賽也就有了源源不斷的競技者,有更強的生命力。這個工作很有意義,希望大家廣泛參與。
競賽要與產業發展相結合。今天我們都在講新工科,那么什么是新工科?新工科就是要更加突出“做中學”。建設新工科,需要產教融合,“象牙塔”培養不出新工科人才。網絡安全競賽,就是要架起人才培養和產業發展之間的一座橋梁,為產業發展服務,這樣才會有高質量發展的動力。網絡安全競賽需要打破當下“大而全”“大呼隆”的局面,要進行“小而精”的變革,圍繞專門領域、細分產業、真實場景設置“賽場”,不斷強化指向性、針對性,以點帶面,匯聚更多的企業、供應商參與其中,增加產教融合的黏性。希望未來可以看到更多的“專項賽”,這也需要大家共同努力。
競賽要與技術創新相結合。網絡安全中有一個很大痛點,就是安全性難以驗證,安全往往處于自說自話的層面。我曾經多次講:“安全不安全,‘白帽們’說了算。”我國網絡安全技術創新還有很長的路要走,網絡安全競賽應該在這個進程中起到推動作用,這是高質量發展的更高目標。我們舉辦了三屆“強網”擬態防御精英賽,就是讓“白帽們”都來打擂臺,為內生安全技術“挑毛病”。總的感覺,大家還沒有使出全力、拿出“絕活”,這里有賽制需要進一步創新的問題,也有這類比賽的土壤還不夠肥沃的問題。未來希望大家多到紫金山來打比賽,共同推動內生安全技術發展。
希望Nu1L戰隊和更多CTFer走到一起,不但做網絡安全競賽的競技者,更要努力做網絡安全競賽高質量發展的推動者,攜起手來為網絡強國建設添磚加瓦。


鄔江興
戰略支援部隊信息工程大學
?


信息網絡已滲透到社會的各個方面,各類重要信息系統已成為國家關鍵基礎設施。而網絡空間安全問題日益突出,受到了全社會的關注,也對網絡空間安全人才提出了廣泛而迫切的需求。網絡空間安全人才培養問題已成為當前教育界、學術界和產業界共同關注的焦點問題。
網絡空間安全其本質是一種高技術對抗。網絡空間安全技術主要是解決各類信息系統和信息的安全保護問題。而信息技術自身的快速發展,也必然帶來網絡空間安全技術的快速發展,其需要密碼學、數學、物理、計算機、通信、網絡、微電子等各種科學理論與技術支撐。同時,安全的對抗性特點決定了其需要根據對手的最新能力、最新特點而采取有針對性的防御策略,網絡空間安全也是一項具有很強實踐性要求的學科。因此,網絡空間安全人才培養不僅需要重視理論與技術體系的傳授,還需要重視實踐能力的鍛煉。
CTF(Capture The Flag)比賽是網絡空間安全人才培養方式的一種重要探索。CTF比賽于上世紀90年代起始于美國,近年來引進到我國,并得到了業界的廣泛認可和支持。興趣是年輕人學習的最好動力,CTF比賽很好地將專業知識和比賽樂趣有機結合。CTF比賽通過以賽題奪旗方式評估個人或團隊的網絡攻防對抗能力,參賽隊員在不斷的網絡攻防對抗中爭取最佳成績。在具體的賽題設置上綜合了密碼學、系統安全、軟件漏洞等多種理論知識,充分考慮了不同水平、不同階段選手的關鍵能力評估需求;在比賽形式上,將理論知識和實際攻防相結合,既是對理論知識掌握程度的評估,也是對動手實踐能力、知識靈活應用能力的考驗。近年來國內的CTF比賽如火如荼,在賽題設計、賽制設定等方面越來越成熟,也越來越完善。當前,參與CTF比賽幾乎已成為網絡空間安全本科學習的必要經歷。國內的各種CTF比賽在吸引網絡空間安全人才,引導網絡空間人才培養方面發揮了重要作用。
對于關注CTF比賽的同學,本書是一份重要的參考資料。本書作者Nu1L 戰隊是CTF賽場上的勁旅,屢次在CTF比賽中取得驕人戰績,具有豐富的CTF比賽經驗和隊伍建設經驗。結合其多年的比賽經驗和對網絡空間安全理論與技術體系的理解和認識,本書對CTF比賽的線上賽、線下賽等所涉及的密碼學、軟件漏洞、區塊鏈等題型和關鍵知識點進行了總結,并分享了Nu1L 戰隊的團隊發展經驗。通過本書不僅可以較為系統地學習和掌握網絡空間安全相關基礎知識,還可以從中學習和借鑒CTF比賽團隊的組建和培養經驗。
希望讀者能從本書中吸取寶貴經驗,在未來CTF比賽中取得好成績!也期待CTF比賽在國內不斷進步,為我國網絡空間安全人才培養做出更大的貢獻!


馮登國
2020年夏于北京

?


作為從事網絡安全研究和教學多年的教師,也作為中國CTF競賽早期的參與者和組織者,我很榮幸接受Nu1L戰隊隊長付浩的邀請,為這本難得的CTF競賽參考書撰寫序。
網絡空間安全是一個獨具特色的學科,研究的是人與人之間在網絡空間里思維和智力的較量,有很強的對抗性和實踐性。不同于抽象的理論研究,網絡空間安全的實踐性要求我們不僅在實驗室,也要在現實的互聯網上證實技術的可行性;同時,由于其激烈的對抗性,常規的方法往往早已成為低垂的果實,成功的攻擊和防范都必須創新、另辟蹊徑,也往往引人入勝。我在學生時代就被網絡安全的魅力所吸引,至今從事網絡安全研究和教學已二十多年。正是對安全研究的興趣驅動著我去探索各種新問題和新方法,至今熱情不減。
CTF(Capture The Flag)競賽完美地體現著網絡空間安全這種智力的對抗性和技術的實踐性。CTF競賽于20世紀90年代起源于美國,如今風靡全球,成為全世界網絡安全愛好者學習和訓練的重要活動。CTF競賽覆蓋網絡安全、系統安全和密碼學等領域,涉及協議分析、軟件逆向、漏洞挖掘與利用、密碼分析知識點。特別是攻防模式的CTF競賽給參賽者一種類似實戰的體驗,參賽者要發現并利用對手的安全漏洞,同時防范對手的攻擊,對自己的知識和技能是全面鍛煉。同時,CTF競賽對學習網絡空間安全學科的學生或技術人員是一種非常好的學習和訓練方式。
CTF競賽以其獨特的魅力吸引了一批批安全從業者自發的投身其中。我和我的學生在十多年前開始涉足世界CTF競賽,以清華大學網絡與信息安全實驗室(NISL)為基地,組建了中國最早的CTF戰隊之一——藍蓮花(Blue-Lotus),后來有多所高校的骨干成員加入,曾經多次入圍DEF CON等國際著名賽事的決賽,并與0ops戰隊一起取得了DEF CON第二名的成績。后來,藍蓮花許多隊員在各自的高校成立了獨立的戰隊,他們成為了后來中國風起云涌的CTF戰隊的星星之火。如今,早期的藍蓮花隊員和很多大學的CTF戰隊核心成員已成長為網絡安全領域的精英,在各行各業中發揮了中流砥柱的作用。
正是意識到CTF在實戰性安全人才培養中的重要性,我和同事諸葛建偉以及藍蓮花戰隊的隊員們從2014年開始組織了國內一系列的CTF競賽和后來的全國CTF聯賽XCTF,這些競賽為后來中國如火如荼的CTF競賽培養了“群眾”基礎。近年來的“網鼎杯”“護網杯”等國家級安全賽事動輒上萬只隊伍、幾萬隊員參賽,銀行、通信等不少行業也在組織自己行業內部的CTF競賽,教育部的大學生信息安全競賽也增加了CTF形式的“創新實踐能力”比賽。很多學生在自己報考研究生或找工作的簡歷上寫上各種CTF賽事的成績。可見,CTF作為安全人才培養的一種重要形式已經得到了學術界和工業界的認可。
經歷過近年來CTF浪潮各種競賽的磨練,Nu1L戰隊已經成為長期活躍在CTF國內外賽場上的一只老牌勁旅,在國內外許多重要的賽事中頻頻取得佳績。并不像電競游戲那種炫酷的對抗游戲,CTF競賽培養的不是游戲人才,而是現實世界的精英。像付浩一樣,Nu1L戰隊的許多核心成員已經成長為安全行業頂尖的專業人才,成為我國網絡空間安全領域的堅強的衛士。除此之外,Nu1L戰隊還組織了N1CTF、空指針等一系列的CTF競賽,為國內外的CTF愛好者提供了一個交流的平臺,為CTF社區的發展做出了重要貢獻。
本書為當前眾多CTF入門的參賽者提供了一份不可多得的參考教材。由于CTF覆蓋知識點龐雜,而且近年來由于賽事眾多題目越來越難,對于CTF入門的選手來說很難把握,市面上系統地介紹CTF的書目前并不多見。本書的內容不僅覆蓋了傳統CTF線上、線下賽常見的知識領域,如Web攻防、逆向工程、漏洞利用、密碼分析等,還增加了AWD攻防賽、區塊鏈等新的內容。特別是本書最后加入了Nu1L戰隊的成長史和Nu1L兩位隊員的故事,融入了付浩本人對CTF比賽的期望和情懷,其中關于CTF聯合戰隊管理、如何組織比賽、如何吸收新鮮血液等內容,都是獨一無二的。這些內容融合了Nu1L整個團隊多年的知識、經驗和感情。我相信,本書不僅對CTF愛好者學習技術有重要幫助,也對CTF戰隊的組織管理者提供了難得的參考。
最后感謝Nu1L戰隊為CTF和安全技術愛好者貢獻的這本精彩的參考書,相信它對安全技術及CTF競賽成績的提高都會很有幫助。

段海新
清華大學
2020年6月
內容簡介:

本書主要面向CTF入門者,融入了CTF比賽的方方面面,讓讀者可以進行系統性的學習。本書包括13章的內容,技術介紹分為線上賽和線下賽兩部分。線上賽包括10章,涵蓋Web、PWN、Reverse、APK、Misc、Crypto、區塊鏈、代碼審計。線下賽包括2章,分別為AWD和靶場滲透。第13章通過Nu1L戰隊成員的故事和聯合戰隊管理等內容來分享CTF戰隊組建和管理、運營的經驗。
目錄:

目 錄
CTF之線上賽
第1章 Web入門 3
1.1 舉足輕重的信息收集 3
1.1.1 信息搜集的重要性 3
1.1.2 信息搜集的分類 3
1.1.2.1 敏感目錄泄露 4
1.1.2.2 敏感備份文件 7
1.1.2.3 Banner識別 9
1.1.3 從信息搜集到題目解決 9
1.2 CTF中的SQL注入 12
1.2.1 SQL注入基礎 12
1.2.1.1 數字型注入和UNION注入 12
1.2.1.2 字符型注入和布爾盲注 17
1.2.1.3 報錯注入 22
1.2.2 注入點 24
1.2.2.1 SELECT注入 24
1.2.2.2 INSERT注入 26
1.2.2.3 UPDATE注入 27
1.2.2.4 DELETE注入 28
1.2.3 注入和防御 29
1.2.3.1 字符替換 29
1.2.3.2 逃逸引號 31
1.2.4 注入的功效 33
1.2.5 SQL注入小結 34
1.3 任意文件讀取漏洞 34
1.3.1 文件讀取漏洞常見觸發點 35
1.3.1.1 Web語言 35
1.4.1.2 中間件/服務器相關 37
1.4.1.3 客戶端相關 39
1.3.2 文件讀取漏洞常見讀取路徑 39
1.3.2.1 Linux 39
1.3.2.2 Windows 41
1.3.3 文件讀取漏洞例題 41
1.3.3.1 兵者多詭(HCTF 2016) 42
1.3.3.2 PWNHUB - Classroom 43
1.3.3.3 Show me the shell I(TCTF/0CTF 2018 FINAL) 45
1.3.3.4 BabyIntranet I(SCTF 2018) 47
1.3.3.5 SimpleVN(BCTF2018) 48
1.3.3.6 Translate(Google CTF 2018) 50
1.3.3.7 看番就能拿Flag(PWNHUB) 51
1.3.3.8 2013那年(PWNhub) 52
1.3.3.9 Comment(網鼎杯2018線上賽) 57
1.3.3.10 方舟計劃(CISCN 2017) 58
1.3.3.11 PrintMD(RealWorldCTF 2018線上賽) 60
1.3.3.12 粗心的佳佳(PWNHUB) 62
1.3.3.13 教育機構(強網杯2018線上賽) 64
1.3.3.14 Magic Tunnel(RealworldCTF 2018線下賽) 65
1.3.3.15 Can you find me?(WHUCTF2019,武漢大學校賽) 67
小結 68
第2章 Web進階 69
2.1 SSRF漏洞 69
2.1.1 SSRF的原理解析 69
2.1.2 SSRF漏洞的尋找和測試 71
2.1.3 SSRF漏洞攻擊方式 72
2.1.3.1 內部服務資產探測 72
2.1.3.2 使用Gopher協議擴展攻擊面 72
2.1.3.3 自動組裝Gopher 80
2.1.4 SSRF的繞過 80
2.1.4.1 IP的限制 80
2.1.4.2 302跳轉 82
2.1.4.3 URL的解析問題 83
2.1.4.4 DNS Rebinding 86
2.1.5 CTF中的SSRF 88
2.2 命令執行漏洞 92
2.2.1 命令執行的原理和測試方法 92
2.2.1.1 命令執行原理 93
2.2.1.2 命令執行基礎 93
2.2.1.3 命令執行的基本測試 95
2.2.2 命令執行的繞過和技巧 95
2.2.2.1 缺少空格 95
2.2.2.2 黑名單關鍵字 97
2.2.2.3 執行無回顯 98
2.2.3 命令執行真題講解 100
2.2.3.1 2015 HITCON Babyfirst 100
2.2.3.2 2017 HITCON BabyFirst Revenge 101
2.2.3.3 2017 HITCON BabyFirst Revenge v2 103
2.3 XSS的魔力 104
2.3.1 XSS漏洞類型 104
2.3.2 XSS的tricks 108
2.3.3 XSS過濾和繞過 111
2.3.4 XSS繞過案例 117
2.4 Web文件上傳漏洞 121
2.4.1 基礎文件上傳漏洞 121
2.4.2 截斷繞過上傳限制 122
2.4.2.1 00截斷 122
2.4.2.2 轉換字符集造成的截斷 125
2.4.3 文件后綴黑名單校驗繞過 126
2.4.3.1 上傳文件重命名 126
2.4.3.2 上傳文件不重命名 127
2.4.4 文件后綴白名單校驗繞過 130
2.4.4.1 Web服務器解析漏洞 130
2.4.4.2 APACHE解析漏洞 131
2.4.5 文件禁止訪問繞過 132
2.4.5.1 .htaccess禁止腳本文件執行繞過 133
2.4.5.2 文件上傳到OSS 134
2.4.5.3 配合文件包含繞過 134
2.4.5.4 一些可被繞過的Web配置 135
2.4.6 繞過圖片驗證實現代碼執行 137
2.4.7 上傳生成的臨時文件利用 140
2.4.8 使用file_put_contents實現文件上傳 142
2.4.9 ZIP上傳帶來的上傳問題 147
小結 156
第3章 Web拓展 157
3.1 反序列化漏洞 157
3.1.1 PHP反序列化 157
3.1.1.1 常見反序列化 158
3.1.1.2 原生類利用 160
3.1.1.3 Phar反序列化 163
3.1.1.4 小技巧 165
3.1.2 經典案例分析 170
3.2 Python的安全問題 172
3.2.1 沙箱逃逸 172
3.2.1.1 關鍵詞過濾 172
3.2.1.2 花樣import 173
3.2.1.3 使用繼承等尋找對象 174
3.2.1.4 eval類的代碼執行 174
3.2.2 格式化字符串 175
3.2.2.1 最原始的% 175
3.2.2.2 format方法相關 175
3.2.2.3 Python 3.6中的f字符串 176
3.2.3 Python模板注入 176
3.2.4 urllib和SSRF 177
3.2.4.1 CVE-2016-5699 177
3.2.4.2 CVE-2019-9740 178
3.2.5 Python反序列化 179
3.2.6 Python XXE 180
3.2.7 sys.audit 182
3.2.8 CTF Python案例 182
3.2.8.1 皇家線上賭場(SWPU 2018) 182
3.2.8.2 mmmmy(2018網鼎杯) 183
3.3 密碼學和逆向知識 185
3.3.1 密碼學知識 186
3.3.1.1 分組加密 186
3.3.1.2 加密方式的識別 186
3.3.1.3 ECB模式 186
3.3.1.4 CBC模式 188
3.3.1.5 Padding Oracle Attack 191
3.3.1.6 Hash Length Extension 197
3.3.1.7 偽隨機數 200
3.3.1.8 密碼學小結 202
3.3.2 Web中的逆向工程 202
3.3.2.1 Python 202
3.3.2.2 PHP 203
3.3.2.3 JavaScript 206
3.4 邏輯漏洞 207
3.4.1 常見的邏輯漏洞 207
3.4.2 CTF中的邏輯漏洞 211
3.4.3 邏輯漏洞小結 212
小結 212
第4章 APK 213
4.1 Android開發基礎 213
4.1.1 Android四大組件 213
4.1.2 APK文件結構 214
4.1.3 DEX文件格式 214
4.1.4 Android API 215
4.1.5 Android示例代碼 216
4.2 APK逆向工具 217
4.2.1 JEB 217
4.2.2 IDA 219
4.2.3 Xposed Hook 220
4.2.4 Frida Hook 222
4.3 APK逆向之反調試 224
4.4 APK逆向之脫殼 224
4.4.1 注入進程Dump內存 224
4.4.2 修改源碼脫殼 225
4.4.3 類重載和DEX重組 227
4.5 APK真題解析 227
4.5.1 Ollvm混淆Native App逆向(NJCTF 2017) 227
4.5.2 反調試及虛擬機檢測(XDCTF 2016) 230
小結 232
第5章 逆向工程 233
5.1 逆向工程基礎 233
5.1.1 逆向工程概述 233
5.1.2 可執行文件 233
5.1.3 匯編語言基本知識 234
5.1.4 常用工具介紹 239
5.2 靜態分析 243
5.2.1 IDA使用入門 243
5.2.2 HexRays反編譯器入門 249
5.2.3 IDA和HexRays進階 254
5.3 動態調試和分析 258
5.3.1 調試的基本原理 258
5.3.2 OllyDBG和x64DBG調試 258
5.3.3 GDB調試 264
5.3.4 IDA調試器 265
5.4 常見算法識別 273
5.4.1 特征值識別 273
5.4.2 特征運算識別 274
5.4.3 第三方庫識別 274
5.5 二進制代碼保護和混淆 276
5.5.1 抵御靜態分析 277
5.5.2 加密 280
5.5.3 反調試 289
5.5.4 淺談ollvm 296
5.6 高級語言逆向 297
5.6.1 Rust和Go 298
5.6.2 C#和Python 301
5.6.3 C++ MFC 302
5.7 現代逆向工程技巧 303
5.7.1 符號執行 303
5.7.1.1 符號執行概述 303
5.7.1.2 angr 304
5.7.1.3 angr小結 313
5.7.2 二進制插樁 313
5.7.3 Pin 314
5.7.3.1 環境配置 314
5.7.3.2 Pintool使用 317
5.7.3.3 Pintool基本框架 317
5.7.3.4 CTF實戰:記錄執行指令數 319
5.7.3.5 CTF實戰:記錄指令軌跡 322
5.7.3.6 CTF實戰:記錄指令執行信息與修改內存 325
5.7.3.7 Pin小結 330
5.8 逆向中的技巧 331
5.8.1 Hook 331
5.8.2 巧妙利用程序已有代碼 331
5.8.3 Dump內存 332
小結 333
第6章 PWN 335
6.1 PWN基礎 335
6.1.1 什么是PWN 335
6.1.2 如何學習PWN 335
6.1.3 Linux基礎知識 336
6.1.3.1 Linux中的系統與函數調用 336
6.1.3.2 ELF文件結構 337
6.1.3.3 Linux下的漏洞緩解措施 338
6.1.3.4 GOT和PLT的作用 339
6.2 整數溢出 340
6.2.1 整數的運算 340
6.2.2 整數溢出如何利用 341
6.3 棧溢出 341
6.4 返回導向編程 346
6.5 格式化字符串漏洞 350
6.5.1 格式化字符串漏洞基本原理 350
6.5.2 格式化字符串漏洞基本利用方式 352
6.5.3 格式化字符串不在棧上的利用方式 354
6.5.4 格式化字符串的一些特殊用法 357
6.5.5 格式化字符串小結 358
6.6 堆利用 358
6.6.1 什么是堆 358
6.6.2 簡單的堆溢出 359
6.6.3 堆內存破壞漏洞利用 360
6.6.3.1 Glibc調試環境搭建 360
6.3.6.2 Fast Bin Attack 361
6.6.3.3 Unsorted Bin List 367
6.6.3.4 Unlink攻擊 371
6.6.3.5 Large Bin Attack(0CTF heapstormII) 375
6.6.3.6 Make Life Easier:tcache 379
6.6.3.7 Glibc 2.29的tcache 380
6.7 Linux內核PWN 381
6.7.1 運行一個內核 381
6.7.2 網絡配置 381
6.7.3 文件系統 382
6.7.4 初始化腳本 382
6.7.5 內核調試 383
6.7.6 分析程序 383
6.7.7 漏洞利用 384
6.7.8 PWN Linux小結 387
6.7.9 Linux內核PWN源代碼 387
6.8 Windows系統的PWN 389
6.8.1 Windows的權限管理 390
6.8.2 Windows的調用約定 390
6.8.3 Windows的漏洞緩解機制 391
6.8.4 Windows的PWN技巧 393
6.9 Windows內核PWN 394
6.9.1 關于Windows操作系統 394
6.9.1.1 80386和保護模式 394
6.9.1.2 Windows操作系統尋址 395
6.9.1.3 Windows操作系統架構 403
6.9.1.4 Windows內核調試環境 404
6.9.2 Windows內核漏洞 407
6.9.2.1 簡單的Windows驅動開發入門 408
6.9.2.2 編寫棧溢出示例 411
6.9.2.3 編寫任意地址寫示例 413
6.9.2.4 加載內核驅動程序 414
6.9.2.5 Windows 7內核漏洞利用 416
6.9.2.6 內核緩解措施與讀寫原語 426
6.9.3 參考與引用 431
6.10 從CTF到現實世界的PWN 431
小結 433
第7章 Crypto 435
7.1 編碼 435
7.1.1 編碼的概念 435
7.1.2 Base編碼 436
7.1.3 其他編碼 437
7.1.4 編碼小結 438
7.2 古典密碼 438
7.2.1 線性映射 438
7.2.2 固定替換 439
7.2.3 移位密碼 440
7.2.4 古典密碼小結 440
7.3 分組密碼 441
7.3.1 分組密碼常見工作模式 441
7.3.1.1 ECB 441
7.3.1.2 CBC 441
7.3.1.3 OFB 442
7.3.1.4 CFB 443
7.3.1.5 CTR 443
7.3.2 費斯妥密碼和DES 444
7.3.2.1 費斯妥密碼 444
7.3.2.2 DES 445
7.3.2.3 例題 447
7.3.3 AES 449
7.3.3.1 有限域 449
7.3.3.2 Rijndael密鑰生成 451
7.3.3.3 AES步驟 452
7.3.3.4 常見攻擊 453
7.4 流密碼 457
7.4.1 線性同余生成器(LCG) 457
7.4.1.1 由已知序列破譯LCG 458
7.4.1.2 攻破Linux Glibc的rand()函數-1 460
7.4.2 線性反饋移位寄存器(LFSR) 460
7.4.2.1 由已知序列破譯LFSR 461
7.4.2.2 攻破Linux glibc的rand()函數-2 461
7.4.3 RC4 463
7.5 公鑰密碼 464
7.5.1 公鑰密碼簡介 464
7.5.2 RSA 464
7.5.2.1 RSA簡介 464
7.5.2.2 RSA的常見攻擊 465
7.5.3 離散對數相關密碼學 470
7.5.3.1 ElGamal和ECC 470
7.5.3.2 離散對數的計算 470
7.6 其他常見密碼學應用 472
7.6.1 Diffie-Hellman密鑰交換 472
7.6.2 Hash長度擴展攻擊 473
7.6.3 Shamir門限方案 474
小結 475
第8章 智能合約 476
8.1 智能合約概述 476
8.1.1 智能合約介紹 476
8.1.2 環境和工具 476
8.2 以太坊智能合約題目實例 477
8.2.1 “薅羊毛” 477
8.2.2 Remix的使用 482
8.2.3 深入理解以太坊區塊鏈 484
小結 488
第9章 Misc 489
9.1 隱寫術 490
9.1.1 直接附加 490
9.1.2 EXIF 492
9.1.3 LSB 494
9.1.4 盲水印 497
9.1.5 隱寫術小結 498
9.2 壓縮包加密 498
9.3 取證技術 499
9.3.1 流量分析 500
9.3.1.1 Wireshark和Tshark 500
9.3.1.2 流量分析常見操作 501
9.3.1.3 特殊種類的流量包分析 504
9.3.1.4 流量包分析小結 505
9.3.2 內存鏡像取證 505
9.3.2.1 內存取證介紹 505
9.3.2.2 內存取證常見操作 505
9.3.2.3 內存取證小結 507
9.3.3 磁盤鏡像取證 507
9.3.3.1 磁盤鏡像介紹 507
9.3.3.2 磁盤取證常見操作 507
9.3.3.3 磁盤取證小結 509
小結 509
第10章 代碼審計 510
10.1 PHP代碼審計 510
10.1.1 環境搭建 510
10.1.2 審計流程 517
10.1.3 案例 527
10.2 Java代碼審計 536
10.2.1 學習經驗 536
10.2.2 環境搭建 538
10.2.3 反編譯工具 540
10.2.4 Servlet簡介 541
10.2.5 Serializable簡介 542
10.2.6 反序列化漏洞 545
10.2.6.1 漏洞概述 545
10.2.6.2 漏洞利用形式 546
10.2.7 表達式注入 552
10.2.7.1 表達式注入概述 552
10.2.7.2 表達式注入漏洞特征 552
10.2.7.3 表達式結構概述 553
10.2.7.5 S2-045簡要分析 555
10.2.7.6 表達式注入小結 558
10.2.8 Java Web漏洞利用方式 558
10.2.8.1 JNDI注入 558
10.2.8.2 反序列化利用工具ysoserial/marshalsec 563
10.2.8.3 Java Web漏洞利用方式小結 566
小結 566
CTF之線下賽
第11章 AWD 571
11.1 比賽前期準備 571
11.2 比賽技巧 573
11.2.1 如何快速反應 573
11.2.2 如何優雅、持續地拿flag 574
11.2.3 優勢和劣勢 577
11.3 流量分析 578
11.4 漏洞修復 578
小結 579
第12章 靶場滲透 580
12.1 打造滲透環境 580
12.1.1 Linux下Metasploit的安裝和使用 580
12.1.2 Linux下Nmap的安裝和使用 584
12.1.3 Linux下Proxychains的安裝和使用 586
12.1.4 Linux下Hydra的安裝和使用 587
12.1.5 Windows下PentestBox的安裝 588
12.1.6 Windows下Proxifier的安裝 588
12.2 端口轉發和代理 589
12.2.1 端口轉發 592
12.2.2 Socks代理 597
12.3 常見漏洞利用方式 598
12.3.1 ms08-067 598
12.3.2 ms14-068 599
12.3.3 ms17-010 600
12.4 獲取認證憑證 601
12.4.1 獲取明文身份憑證 602
12.4.1.1 LSA Secrets 602
12.4.1.2 LSASS Process 604
12.4.1.3 LSASS Protection bypass 605
12.4.1.4 Credential Manager 606
12.4.1.5 在用戶文件中尋找身份憑證Lazange 607
12.4.2 獲取Hash身份憑證 607
12.4.2.1 通過SAM數據庫獲取本地用戶Hash憑證 607
12.4.2.2 通過域控制器的NTDS.dit文件 609
12.5 橫向移動 611
12.5.1 Hash傳遞 611
12.5.2 票據傳遞 613
12.5.2.1 Kerberos認證 613
12.5.2.2 金票據 614
12.5.2.3 銀票據 615
12.6 靶場滲透案例 618
12.6.1 第13屆CUIT校賽滲透題目 618
12.6.2 Defcon China靶場題 625
12.6.3 PWNHUB深入敵后 632
小結 636

CTF之團隊建設
第13章 我們的戰隊 641
13.1 無中生有,有生無窮 641
13.2 上下而求索 642
13.3 多面發展的Nu1L戰隊 643
13.3.1 承辦比賽 643
13.3.2 空指針社區 643
13.3.3 安全會議演講 644
13.4 人生的選擇 644
13.5 戰隊隊長的話 646
小結 647
序: