Web 系統(tǒng)是目前最為流行的架構,由于它是黑客攻擊的重要目標,因此迫切需要大量掌握Web 安全攻防技術的人才提高其安全性。本書結(jié)合滲透測試項目實施過程,分為Web 系統(tǒng)安全技術基礎、信息收集與漏洞掃描、利用漏洞進行滲透測試與防范、項目驗收4個部分,共 10 個單元,詳細介紹了Web 系統(tǒng)安全技術與利用漏洞進行滲透測試的方法。每個單元理論知識與實訓任務相結(jié)合,較好地體現(xiàn)了理實一體化的教學理念。為便于學習,本書主要針對基于PHP+MySQL開發(fā)的Web 系統(tǒng)安全攻防技術,實訓內(nèi)容圖文并茂,易于實訓任務的開展。為了使學生對Web 安全技術融會貫通,本書講解力求深入至Web 系統(tǒng)程序代碼層面。本書體系完整,內(nèi)容翔實,配套資源豐富,可供高職院校開設Web 安全技術課程的學生使用,也可作為本科院校學生學習Web 安全技術的入門教程,同時也可作為技術人員自學Web 安全技術的參考書。
王立進,山東科技職業(yè)學院副教授,國家級職業(yè)教育教師教學創(chuàng)新團隊成員,曾獲國家級教學成果二等獎、山東省教學成果特等獎,具有CISSP、CCNP、PMP等專業(yè)認證證書。精通WEB攻防、防火墻、入侵檢測、信息安全管理與評估等技術。具有在啟明星辰等知名信息安全公司超過20年的企業(yè)工作經(jīng)驗,期間曾被聘任為北京郵電大學計算機學院兼職副教授、碩士研究生企業(yè)導師
單元 1 Web 系統(tǒng)安全技術基礎 1
1.1 Web 系統(tǒng)安全形勢與威脅 1
1.1.1 Web 系統(tǒng)安全形勢 1
1.1.2 Web 系統(tǒng)威脅分析 2
1.1.3 OWASP十大Web 系統(tǒng)安全漏洞 3
1.1.4 Web 系統(tǒng)滲透測試常用工具 4
1.2 Web 系統(tǒng)架構與技術 5
1.2.1 Web 系統(tǒng)架構 5
1.2.2 服務器端技術 6
1.2.3 客戶端技術 7
1.2.4 實訓:安裝DVWA系統(tǒng) 8
1.3 HTTP 13
1.3.1 HTTP工作原理 13
1.3.2 HTTP請求 14
1.3.3 HTTP響應 16
1.3.4 HTTPS 18
1.3.5 實訓:抓取并分析HTTP數(shù)據(jù)包 19
1.4 Web 系統(tǒng)控制會話技術 24
1.4.1 Cookie 24
1.4.2 Session 25
1.4.3 Cookie 與Session 的比較 25
1.4.4 實訓:利用 Cookie 冒充他人登錄系統(tǒng) 26
練習題 30
單元 2 信息收集與漏洞掃描 32
2.1 信息收集 32
2.1.1 利用公開網(wǎng)站收集目標系統(tǒng)信息 33
2.1.2 利用Nmap進行信息收集 35
2.1.3 實訓:利用Nmap識別DVWA的服務及操作系統(tǒng) 37
2.2 漏洞掃描 41
2.2.1 漏洞掃描的概念 41
2.2.2 網(wǎng)絡漏洞掃描系統(tǒng)的工作原理 42
2.2.3 實訓:使用Nmap進行漏洞掃描 43
2.2.4 實訓:使用AWVS進行漏洞掃描 47
2.3 Burp Suite 的深度利用 52
2.3.1 Burp Suite 常用功能模塊 52
2.3.2 實訓:使用Burp Suite 進行暴力破解 56
練習題 64
單元 3 SQL注入漏洞滲透測試與防范 66
3.1 SQL注入漏洞概述 66
3.1.1 SQL注入的概念與危害 66
3.1.2 SQL注入漏洞的原理 67
3.1.3 SQL注入漏洞的探測 68
3.1.4 實訓:手動SQL注入 70
3.2 SQL注入漏洞利用的基礎知識 72
3.2.1 MySQL的注釋 73
3.2.2 MySQL的元數(shù)據(jù) 73
3.2.3 union查詢 73
3.2.4 常用的MySQL函數(shù) 74
3.2.5 實訓:SQL注入的高級利用 75
3.3 SQL盲注的探測與利用 79
3.3.1 SQL盲注概述 79
3.3.2 實訓:手動盲注 80
3.3.3 實訓:利用SQLMap 對DVWA系統(tǒng)進行注入 85
3.4 SQL注入的防范與繞過 91
3.4.1 常見過濾技術與繞過 91
3.4.2 SQL注入技術的綜合防范技術 92
3.4.3 實訓:SQL注入過濾的繞過與防范 94
練習題 98
單元 4 跨站腳本漏洞滲透測試與防范 100
4.1 反射型XSS漏洞檢測與利用 100
4.1.1 問題引入 100
4.1.2 反射型XSS漏洞原理 101
4.1.3 反射型XSS漏洞檢測 103
4.1.4 實訓:反射型XSS漏洞檢測與利用 103
4.2 存儲型XSS漏洞檢測與利用 105
4.2.1 存儲型XSS漏洞的原理 105
4.2.2 存儲型XSS漏洞的檢測 105
4.2.3 存儲型XSS漏洞的利用 106
4.2.4 實訓:存儲型XSS漏洞檢測與利用 107
4.3 基于DOM的XSS漏洞檢測與利用 109
4.3.1 基于DOM的XSS漏洞原理 109
4.3.2 基于DOM的XSS漏洞檢測 109
4.3.3 基于DOM的XSS漏洞利用 110
4.3.4 實訓:基于DOM的XSS漏洞檢測與利用 110
4.4 XSS漏洞的深度利用 112
4.4.1 XSS漏洞出現(xiàn)的場景與利用 112
4.4.2 利用XSS漏洞的攻擊范圍 113
4.4.3 XSS漏洞利用的繞過技巧 114
4.4.4 實訓:繞過XSS漏洞防范措施 114
4.5 XSS漏洞的防范 116
4.5.1 輸入校驗 116
4.5.2 輸出編碼 117
4.5.3 HttpOnly 117
4.5.4 實訓:XSS漏洞的防范 118
練習題 120
單元 5 文件上傳漏洞滲透測試與防范 121
5.1 文件上傳漏洞概述 121
5.1.1 文件上傳漏洞與WebShell 121
5.1.2 中國菜刀與一句話木馬 122
5.1.3 Web 容器解析漏洞 123
5.1.4 實訓:利用中國菜刀連接WebShell 124
5.2 文件上傳漏洞的防范與繞過 127
5.2.1 設計安全的文件上傳控制機制 127
5.2.2 實訓:客戶端檢測機制繞過 127
5.2.3 實訓:黑名單及白名單過濾擴展名機制與繞過 131
5.2.4 實訓:MIME驗證與繞過 134
5.2.5 實訓:%00 截斷上傳攻擊 136
5.2.6 實訓:.htaccess 文件攻擊 138
練習題 141
單元 6 命令執(zhí)行漏洞滲透測試與防范 143
6.1 命令執(zhí)行漏洞的防范與繞過 143
6.1.1 命令執(zhí)行漏洞的概念與危害 143
6.1.2 命令執(zhí)行漏洞的原理與防范 145
6.1.3 實訓:命令執(zhí)行漏洞滲透測試與繞過 145
6.2 命令執(zhí)行漏洞與代碼執(zhí)行漏洞的區(qū)別 147
練習題 149
單元 7 文件包含漏洞滲透測試與防范 150
7.1 文件包含漏洞的概念與分類 150
7.2 文件包含漏洞的深度利用 153
7.3 文件包含漏洞的防范 158
7.4 實訓:文件包含漏洞的利用與防范 159
練習題 162
單元 8 跨站請求偽造漏洞滲透測試與防范 163
8.1 跨站請求偽造的概念 163
8.2 跨站請求偽造的原理 164
8.3 跨站請求偽造漏洞的檢測 164
8.4 跨站請求偽造漏洞的防范 166
8.5 實訓:跨站請求偽造漏洞的利用與防范 167
練習題 172
單元 9 反序列化漏洞滲透測試與防范 174
9.1 反序列化的概念 174
9.2 反序列化漏洞產(chǎn)生的原因與危害 176
9.3 反序列化漏洞的檢測與防范 179
9.4 實訓:Typecho1.0 反序列化漏洞利用與分析 179
練習題 187
單元 10 滲透測試報告撰寫與溝通匯報 188
10.1 漏洞驗證與文檔記錄 188
10.1.1 漏洞驗證 188
10.1.2 文檔記錄建議 189
10.2 滲透測試報告的撰寫 190
10.2.1 滲透測試報告需求分析 190
10.2.2 滲透測試報告樣例 191
10.3 溝通匯報資料的準備 194
10.4 滲透測試的后續(xù)流程 194
練習題 195
參考文獻 196