前 言
第1章 CTF 簡介 1
1.1 CTF的由來 1
1.2 CTF競賽模式 2
1.2.1 解題模式 2
1.2.2 攻防模式 2
1.2.3 混合模式 3
1.3 國內部分CTF賽事介紹 3
1.3.1 強網杯 3
1.3.2 網鼎杯 6
1.3.3 護網杯 7
第2章 CTF 競賽基礎 10
2.1 電腦網路基礎 10
2.1.1 電腦網路的組成 10
2.1.2 TCP/IP 11
2.1.3 IP地址 14
2.1.4 路由基礎 16
2.1.5 檔案傳輸通訊協定 20
2.2 資料庫安全基礎 22
2.2.1 資料庫安全概述 22
2.2.2 資料庫安全語義 23
2.2.3 存取控制策略與執行 24
2.3 作業系統基礎 26
2.3.1 作業系統的類型 26
2.3.2 作業系統的功能 30
2.3.3 Windows基礎 32
2.3.4 Linux基礎 34
2.4 程式設計語言基礎 37
2.4.1 HTML 38
2.4.2 JavaScript 39
2.4.3 Python 40
2.4.4 PHP 40
2.4.5 彙編 42
第3章 CTF 密碼學 45
3.1 資訊編碼 45
3.1.1 ASCII碼 45
3.1.2 Unicode編碼 47
3.1.3 URL編碼 47
3.1.4 Base64編碼 48
3.2 信息的加密及解密 49
3.2.1 密碼學的基本概念 49
3.2.2 古典密碼學 51
3.2.3 現代密碼學 55
3.3 綜合解題實戰 59
3.3.1 資訊編碼類 59
3.3.2 古典密碼學類 64
3.3.3 現代密碼學類 67
第4章 CTF Web 78
4.1 CTF Web概述 78
4.2 主要知識點 79
4.2.1 SQL注入 79
4.2.2 XSS 81
4.2.3 CSRF 82
4.2.4 檔上傳與檔包含 84
4.2.5 命令執行 84
4.3 綜合解題實戰 86
4.3.1 SQL注入類 86
4.3.2 XSS/CSRF類 90
4.3.3 檔上傳與檔包含類 94
4.3.4 命令執行類 100
第5章 CTF 逆向 104
5.1 CTF逆向概述 104
5.2 主要知識點 106
5.2.1 基本分析流程 106
5.2.2 自動化逆向 109
5.2.3 指令碼語言逆向 110
5.2.4 干擾逆向分析 111
5.3 綜合解題實戰 114
5.3.1 手工及自動化逆向類 114
5.3.2 指令碼語言逆向類 122
5.3.3 干擾分析及破解類 124
第6章 CTF PWN 134
6.1 CTF PWN概述 134
6.1.1 CTF PWN的由來 134
6.1.2 PWN的解題過程 135
6.2 主要知識點 137
6.2.1 棧漏洞利用原理 137
6.2.2 堆漏洞利用原理 138
6.2.3 整型漏洞 140
6.3 綜合解題實戰 141
6.3.1 棧漏洞利用類 141
6.3.2 堆漏洞利用類 148
6.3.3 整型漏洞利用類 160
第7章 CTF Misc 166
7.1 CTF Misc概述 166
7.2 主要知識點 168
7.2.1 檔分析 168
7.2.2 信息隱藏 169
7.2.3 流量分析 172
7.3 綜合解題實戰 173
7.3.1 檔分析類 173
7.3.2 信息隱藏類 178
7.3.3 流量分析類 187
參考文獻 191