內容介紹
《XSS跨站腳本攻擊剖析與防禦》是一本專門剖析XSS安全的專業書,總共8章,主要包括的內容如下。第1章 XSS初探,主要闡述了XSS的基礎知識,包括XSS的攻擊原理和危害。第2章 XSS利用方式,就當前比較流行的XSS利用方式做了深入的剖析,這些攻擊往往基於客戶端,從掛馬、竊取Cookies、會話劫持到釣魚欺騙,各種攻擊都不容忽視。第3章 XSS測試和利用工具,介紹了一些常見的XSS測試工具。第4章 發掘XSS漏洞,著重以黑盒和白盒的角度介紹如何發掘XSS漏洞,以便幫助讀者樹立安全意識。第5章 XSS Worm,講解了Web 2.0的最大威脅——跨站腳本蠕蟲,剖析了Web 2.0相關概念和其核心技術,這些知識對於理解和預防XSS Worm十分重要。第6章 Flash套用安全,就當前的Flash套用安全做出了深入闡述。第7章 深入XSS原理,討論一些比較深入的XSS理論。第8章 防禦XSS攻擊,介紹了一些防範XSS攻擊的方法,例如,運用XSS Filter進行輸入過濾和輸出編碼,使用Firefox瀏覽器的Noscript外掛程式抵禦XSS攻擊,使用HTTP-only的Cookies同樣能起到保護敏感數據的作用。
《XSS跨站腳本攻擊剖析與防禦》適合網站管理人員、信息/網路安全或相關工作從業者、軟體開發工程師,以及任何對Web安全技術感興趣的讀者。
作者介紹
邱永華
作品目錄
目 錄
第1章 XSS初探 1
1.1 跨站腳本介紹 1
1.1.1 什麼是XSS跨站腳本 2
1.1.2 XSS跨站腳本實例 4
1.1.3 XSS漏洞的危害 6
1.2 XSS的分類 8
1.2.1 反射型XSS 8
1.2.2 持久型XSS 10
1.3 XSS的簡單發掘 12
1.3.1 搭建測試環境 12
1.3.2 發掘反射型的XSS 12
1.3.3 發掘持久型的XSS 15
1.4 XSS Cheat Sheet 18
1.5 XSS構造剖析 21
1.5.1 繞過XSS-Filter 22
1.5.2 利用字元編碼 33
1.5.3 拆分跨站法 37
1.6 Shellcode的調用 39
1.6.1 動態調用遠程JavaScript 40
1.6.2 使用window.location.hash 41
1.6.3 XSS Downloader 41
1.6.4 備選存儲技術 43
第2章 XSS利用方式剖析 45
2.1 Cookie竊取攻擊剖析 45
2.1.1 Cookie基礎介紹 46
2.1.2 Cookie會話攻擊原理剖析 48
2.1.3 Cookie欺騙實例剖析 49
2.2 會話劫持剖析 51
2.2.1 了解Session機制 51
2.2.2 XSS實現許可權提升 52
2.2.3 獲取網站Webshell 55
2.3 網路釣魚 57
2.3.1 XSS Phishing 57
2.3.2 XSS釣魚的方式 59
2.3.3 高級釣魚技術 60
2.4 XSS History Hack 63
2.4.1 連結樣式和getComputedStyle() 64
2.4.2 JavaScript/CSS history hack 64
2.4.3 竊取搜尋查詢 65
2.5 客戶端信息刺探 67
2.5.1 JavaScript實現連線埠掃描 67
2.5.2 截獲剪貼簿內容 68
2.5.3 獲取客戶端IP位址 70
2.6 其他惡意攻擊剖析 71
2.6.1 網頁掛馬 71
2.6.2 DOS和DDOS 72
2.6.3 XSS Virus/Worm 73
第3章 XSS測試和工具剖析 75
3.1 Firebug 75
3.2 Tamper Data 80
3.3 Live HTTP Headers 82
3.4 Fiddler 84
3.5 XSS-Proxy 86
3.6 XSS Shell 90
3.7 AttackAPI 94
3.8 Anehta 98
第4章 發掘XSS漏洞 104
4.1 黑盒工具測試 104
4.2 黑盒手動測試 107
4.3 原始碼安全審計 110
4.4 JavaScript代碼分析 118
4.4.1 DOM簡介 118
4.4.2 第三種XSS——DOM XSS 120
4.4.3 發掘基於DOM的XSS 123
4.5 發掘Flash XSS 126
4.6 巧用語言特性 129
4.6.1 PHP 4 phpinfo() XSS 130
4.6.2 $_SERVER[PHP_SELF] 131
4.6.3 變數覆蓋 132
第5章 XSS Worm剖析 135
5.1 Web 2.0套用安全 135
5.1.1 改變世界的Web 2.0 135
5.1.2 淺談Web 2.0的安全性 137
5.2 Ajax技術指南 138
5.2.1 使用Ajax 139
5.2.2 XMLHttpRequest對象 140
5.2.3 HTTP請求 142
5.2.4 HTTP回響 142
5.3 瀏覽器安全 145
5.3.1 沙箱 145
5.3.2 同源安全策略 146
5.4 XSS Worm介紹 147
5.4.1 蠕蟲病毒剖析 147
5.4.2 XSS Worm攻擊原理剖析 148
5.4.3 XSS Worm剖析 149
5.4.4 運用DOM技術 150
5.5 新浪微博蠕蟲分析 153
第6章 Flash套用安全 156
6.1 Flash簡介 156
6.1.1 Flash Player 與SWF 156
6.1.2 嵌入Flash檔案 158
6.1.3 ActionScript語言 158
6.2 Flash安全模型 160
6.2.1 Flash安全沙箱 161
6.2.2 Cross Domain Policy 162
6.2.3 設定管理器 164
6.3 Flash客戶端攻擊剖析 165
6.3.1 getURL() & XSS 165
6.3.2 Cross Site Flashing 169
6.3.3 Flash參數型注入 171
6.3.4 Flash釣魚剖析 173
6.4 利用Flash進行XSS攻擊剖析 174
6.5 利用Flash進行CSRF 178
第7章 深入XSS原理 181
7.1 深入淺出CSRF 182
7.1.1 CSRF原理剖析 182
7.1.2 CSRF實例講解剖析 185
7.1.3 CSRF的套用剖析 187
7.2 Hacking JSON 187
7.2.1 JSON概述 187
7.2.2 跨域JSON注入剖析 190
7.2.3 JSON Hijacking 191
7.3 HTTP Response Splitting 193
7.3.1 HTTP Header 193
7.3.2 CRLF Injection原理 195
7.3.3 校區域網路HRS案例 197
7.4 MHTML協定的安全 199
7.5 利用Data URIs進行XSS剖析 203
7.5.1 Data URIs介紹 203
7.5.2 Data URIs XSS 204
7.5.3 vBulletin Data URIs XSS 206
7.6 UTF-7BOM XSS 206
7.7 瀏覽器外掛程式安全 211
7.7.1 Flash後門 211
7.7.2 來自PDF的XSS 213
7.7.3 QuickTime XSS 217
7.8 特殊的XSS套用場景剖析 218
7.8.1 基於Cookie的XSS 218
7.8.2 來自RSS的XSS 220
7.8.3 套用軟體中的XSS 222
7.9 瀏覽器差異 225
7.9.1 跨瀏覽器的不兼容性 226
7.9.2 IE嗅探機制與XSS 226
7.9.3 瀏覽器差異與XSS 228
7.10 字元集編碼隱患 231
第8章 防禦XSS攻擊 234
8.1 使用XSS Filter 234
8.1.1 輸入過濾 235
8.1.2 輸出編碼 237
8.1.3 黑名單和白名單 239
8.2 定製過濾策略 240
8.3 Web安全編碼規範 244
8.4 防禦DOM-Based XSS 248
8.5 其他防禦方式 250
8.5.1 Anti_XSS 250
8.5.2 HttpOnly Cookie 252
8.5.3 Noscript 253
8.5.4 WAF 254
8.6 防禦CSRF攻擊 255
8.6.1 使用POST替代GET 256
8.6.2 檢驗HTTP Referer 257
8.6.3 驗證碼 258
8.6.4 使用Token 259
參考文獻 262