描述
內容簡介
世界頂尖駭客高手齊聚一堂,線上線下互相攻防, 從Catch The Flag生死大戰,讓你知道,你自以為幸福快樂又安全的網路,是多麼的不堪一擊!
CTF(Catch The Flag)是電腦史上最著名的安全攻防大戰,由全世界最強的暗黑高手所組成的團隊,互相進行接化發攻防戰。這些厲害到沒有天理、喪盡天良的駭客,可以幾秒鐘就癱瘓成千上萬台防密嚴實的主機,你能想到的安全防護措施,在他們眼中都如同吃飯般容易攻陷,你想了解他們的攻防手段嗎?你想成為他們的一員嗎?本書由獲得多次世界大賽冠軍的Nu1L團隊撰寫,真槍實戰的把駭客每天都在用的技術完整傳授,從Web各種服務,伺服器的基礎、進階、擴充開始,一直到Windows、Linux的漏洞,再加上對各種程式語言的深度了解,如Java, C/C++/C#,CTF的成員就是強的可怕,史上第一本針對這些人的技術,知識,工具大解密,更可以幫助你加強了解網路安全的重要。
本書主要針對CTF入門者,融入了CTF比賽的各方面,讓讀者可以進行系統性的學習。本書包含13章內容,技術介紹分為線上賽和線下賽兩部分。線上賽包含10章,涵蓋Web、PWN、Reverse、APK、Misc、Crypto、區塊鏈、程式稽核。線下賽包含2章,分別為AWD和靶場滲透。第13章透過Nu1L戰隊成員的故事和聯合戰隊管理等內容來分享CTF戰隊組建和管理、營運的經驗。 |
作者簡介
|
目錄
01 Web 入門
1.1 舉足輕重的資訊搜集 1.2 CTF 中的SQL 植入 1.3 任意檔案讀取漏洞
02 Web 進階 2.1 SSRF 漏洞 2.2 指令執行漏洞 2.3 XSS 的魔力 2.4 Web 檔案上傳漏洞
03 Web 擴充 3.1 反序列化漏洞 3.2 Python 的安全問題 3.3 密碼學和逆向知識 3.4 邏輯漏洞
04 APK 4.1 Android 開發基礎 4.2 APK 逆向工具 4.3 APK 逆向之反偵錯 4.4 APK 逆向之脫殼 4.5 APK 真題解析
05 逆向工程 5.1 逆向工程基礎 5.2 靜態分析 5.3 動態偵錯和分析 5.4 常見演算法識別 5.5 二進位碼保護和混淆 5.6 高階語言逆向 5.7 現代逆向工程技巧 5.8 逆向中的特殊技巧
06 PWN 6.1 PWN 基礎 6.2 整數溢位 6.3 堆疊溢位 6.4 傳回導向程式設計 6.5 格式化字串漏洞 6.6 堆積利用 6.7 Linux 核心PWN 6.8 Windows 系統的PWN 6.9 Windows 核心PWN 6.10 從CTF 到現實世界的PWN
07 Crypto 7.1 編碼 7.2 古典密碼 7.3 分組密碼 7.4 流密碼 7.5 公開金鑰密碼 7.6 其他常見密碼學應用
08 智慧合約 8.1 智慧合約概述 8.2 以太坊智慧合約題目範例
09 Misc 9.1 隱寫術 9.2 壓縮檔加密 9.3 取證技術
10 程式稽核 10.1 PHP 程式稽核 10.2 Java 程式稽核
11 AWD 11.1 比賽前期準備 11.2 比賽技巧 11.3 流量分析 11.4 漏洞修復
12 靶場滲透 12.1 打造滲透環境 12.2 通訊埠轉發和代理 12.3 常見漏洞利用方式 12.4 取得認證憑證 12.5 水平移動 12.6 靶場滲透案例
13 我們的戰隊 13.1 無中生有,有生無窮 13.2 上下而求索 13.3 多面發展的Nu1L 戰隊 13.4 人生的選擇 13.5 戰隊隊長的話 |
序
前言
隨著日益嚴峻的網路安全形勢及人們對網路安全重視程度的加強,以人才發現、培養和選拔為目的的網路安全賽事不斷湧現,成為發現人才的一種創新形式。目前高水準的網路安全賽事普遍以CTF 形式存在,競賽水準差異較大,直接參加高於本身技術過多的競賽猶如空中樓閣,不僅很難學到東西,也可能打擊自信。參加過於簡單的競賽則浪費時間而無所得。此外,CTF 比賽題目因涉及網路安全技術、電腦技術、硬體技術等領域,內容十分繁雜,反覆運算更新時間快,初學者通常一頭霧水地參與其中,難以發現CTF 的樂趣。 早在2017 年,我便有寫一本供初學者學習CTF 書籍的想法,但由於當時Nu1L戰隊的成員太少,並且覺得這是一個複雜而且龐大的過程,所以寫書的想法只能擱淺。直到2018 年末,Nu1L 戰隊已成長到近40 人,與此同時,我發現市面上依然沒有一本關於CTF 比賽的書籍,寫書的想法又重新燃起,在詢問戰隊諸多隊員並達成一致意見後,便開始組織大家寫書。 經過初步討論,我們希望這本書可以讓CTF 入門者進行系統性的學習,於是決定盡可能地將CTF 比賽中的各方面融入此書。同時,為了避免這本書成為一本只是羅列基礎知識的普通安全基礎書籍,除了圍繞CTF 涉及的大量基礎知識,我們還將做題的技巧、個人經驗穿插其中,以便讓讀者更進一步地融入。除了技術層面的內容,我們還會介紹Nu1L 戰隊的成長史和聯合戰隊的管理經驗。 本書旨在讓更多人感受到CTF 比賽的樂趣,對CTF 比賽有所了解,進而透過本書提升本身的技術實力。
●本書結構 本書的技術分享包含CTF 線上賽和線下賽兩部分。如此分類是為了讓此書的適用面更加廣泛,除了與CTF 比賽相關的內容,我們還結合實戰,為讀者分享一些現實漏洞採擷的經驗。 CTF 線上賽包含10 章,涵蓋Web、PWN、Reverse、APK、Misc、Crypto、區塊鏈、程式稽核。本部分涵蓋了CTF 大部分的題目分類,並配有對應的例題解析,能夠讓讀者充分了解、學習對應基礎知識。同時,在實際比賽中,本書的內容也可以作為參考。 CTF 線下賽包含2 章,分別為AWD 和靶場滲透。其中,AWD 章節從比賽技巧和流量分析方面進行了深入介紹;靶場滲透章節貼合現實,讀者閱讀時可以結合實際,從中有所收穫。 最後一章的內容與技術無關,只是分享發生在Nu1L 戰隊中的故事和聯合戰隊管理等。在開始寫書之前,我也進行了簡單研究,相當一部分人會對戰隊管理和CTF 的意義有所好奇,這部分是我的經驗之談,希望對讀者有所幫助。 ●適合讀者群 本書適合的讀者包含: ■ 想入門 CTF 比賽的讀者。 ■ 已經入門 CTF 陷入瓶頸的讀者。 ■ 希望成立戰隊、管理戰隊的讀者。 ■ 不知道 CTF 如何與現實同步的讀者。 ■ 沒參加過線下賽卻突然要參加的讀者。
●繁體中文版說明 本書原作者為中國大陸人士,書中執行環境多為簡體中文環境,為維持全書之完整性及可執行性,本書操作畫面均維持簡體中文介面,請讀者參閱前後文閱讀。 ●說明 眾所周知,CTF 涉及的分類十分繁多,所以Nu1L 戰隊有29 人參與了此書的撰寫,每個人負責撰寫不同的章節,在撰寫前我已盡可能地統一了標準,但是每個人的撰寫風格不是完全一致,所以有的章節文字風格差異較大。參與撰寫此書的Nu1L 戰隊的成員都是第一次寫書,因此不能保障本書能夠面面俱到,但盡可能詳細地涵蓋了CTF 比賽的對應內容,至於某些未能描述詳盡或遺漏的地方,以及一些不常見的領域,如工控CTF,因為缺乏相關知識,所以沒有辦法加入本書。 本書主要針對CTF 初學者,究其每部分,認真寫的話都足以寫一本書。所以我們也對各部分的內容進行了篩選,只撰寫常見的CTF 技術點,如Web 部分的SQL 植入章節中寫入了MySQL 下的植入場景,而沒有寫SQL Server、NoSQL等情況下的植入場景。 以上情況希望讀者能夠了解。 ●關於 Nu1L 戰隊 Nu1L 戰隊成立於2015 年10 月,源於英文單字NULL,是頂尖的CTF 聯合戰隊,目前成員有60 多人,官網為https://nu1l.com。 Nu1L 自成立以來,征戰於國內外各項CTF 賽事,成績優異,如: ■ DEFCON CHINA & BCTF2018 冠軍。 ■ TCTF2018 總決賽獲得全球第四名,中國第一名。 ■ LCTF、SCTF 連續三年冠軍。 ■ 2018 年網鼎杯總決賽中國第二名。 ■ 2019 年護網杯總決賽中國第一名。 ■ 2019 年 XCTF 總決賽冠軍。 ■ N1CTF 國際賽事組織者,其中 2019 年 CTFTIME 評分權重獲得滿分,獲得全球CTF 同好好評。 ■ 2019 年 11 月,與春秋 GAME 共同負責運行維護「巔峰極客」線下城市靶場賽。 ■ 2019 年 11 月,建立「空指標」高品質挑戰賽(https://www.npointer.cn)。 戰隊部分成員為Blackhat、HITCON、KCON、天府杯等國內外安全會議演講者,參與PWN2OWN、GEEKPWN 等國際性漏洞破解賽事。部分核心隊員效力於Tea Deliverers、eee 戰隊。
●書附資源下載 本書執行環境均以docker 方式運行,讀者可至https://book.nu1l.com/tasks/#/,逐章節進入,並且配合本書書附程式來執行。書附程式請至本公司官網https://deepwisdom.com.tw/,資源下載處下載。 ●N1BOOK 平台 為了讓讀者更進一步地學習本書的內容,我們針對大部分基礎知識設計了對應的搭配題目,以便輔助讀者學習並了解相關知識,我們稱之為N1BOOK(https://book.nu1l.com)。書中Web、PWN 章節涉及的題目已封裝成docker 映像檔,讀者在N1BOOK 平台上選擇對應頁面,即可存取題目的相關內容,透過docker 的啟動,免去了讀者在本機架設環境的苦惱。而其餘章節的題目,如Misc、靶場滲透等,其附件或映像檔已上傳到雲端上,讀者可以在N1BOOK 平台上下載。 ●意見回饋 本書是我們團隊的第一次嘗試,難免有不足之處,讀者若有任何建議,可以透過郵件聯繫我們:book@nu1l.com,我們會在下一版本中進行參考和修改。 |