注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)數(shù)據(jù)庫SQL SeverSQL注入攻擊與防御

SQL注入攻擊與防御

SQL注入攻擊與防御

定 價(jià):¥48.00

作 者: (美)克拉克 著,黃曉磊,李化 譯
出版社: 清華大學(xué)出版社
叢編項(xiàng): 安全技術(shù)經(jīng)典譯叢
標(biāo) 簽: SQL

ISBN: 9787302224136 出版時(shí)間: 2010-06-01 包裝: 平裝
開本: 16開 頁數(shù): 339 字?jǐn)?shù):  

內(nèi)容簡介

  SQL注入是Internet上最危險(xiǎn)、最有名的安全漏洞之一,本書是目前唯一一本專門致力于講解SQL威脅的圖書。本書作者均是專門研究SQL注入的安全專家,他們集眾家之長,對應(yīng)用程序的基本編碼和升級維護(hù)進(jìn)行全面跟蹤,詳細(xì)講解可能引發(fā)SQL注入的行為以及攻擊者的利用要素,并結(jié)合長期實(shí)踐經(jīng)驗(yàn)提出了相應(yīng)的解決方案。針對SQL注入隱蔽性極強(qiáng)的特點(diǎn),本書重點(diǎn)講解了SQL注入的排查方法和可以借助的工具,總結(jié)了常見的利用SQL漏洞的方法。另外,本書還專門從代碼層和系統(tǒng)層的角度介紹了避免SQL注入的各種策略和需要考慮的問題。本書主要內(nèi)容SQL注入一直長期存在,但最近有所增強(qiáng)。本書包含所有與SQL注入攻擊相關(guān)的、當(dāng)前已知的信息,凝聚了由本書作者組成的、無私奉獻(xiàn)的SQL注入專家團(tuán)隊(duì)的所有深刻見解。什么是SQL注入?理解它是什么以及它的基本原理查找、確認(rèn)和自動發(fā)現(xiàn)SQL注入查找代碼中SQL注入時(shí)的提示和技巧使用SQL注入創(chuàng)建利用通過設(shè)計(jì)來避免由SQL攻擊所帶來的危險(xiǎn)

作者簡介

  憑借這本《SQL注入攻擊與防御》,測試人員現(xiàn)在有了一把彌補(bǔ)Internet上各種分散式教程不足的利器。閱讀本書您可以學(xué)會識別并利用各種平臺上不同種類的SQL注入缺陷?! 狣evon Kearna,安全分析師

圖書目錄

第1章 什么是SQL注入 1
1.1 概述 2
1.2 理解Web應(yīng)用的工作原理 2
1.2.1 一種簡單的應(yīng)用架構(gòu) 3
1.2.2 一種較復(fù)雜的架構(gòu) 4
1.3 理解SQL注入 5
1.4 理解SQL注入的產(chǎn)生過程 10
1.4.1 構(gòu)造動態(tài)字符串 10
1.4.2 不安全的數(shù)據(jù)庫配置 16
1.5 本章小結(jié) 18
1.6 快速解決方案 18
1.7 常見問題解答 19
第2章 SQL注入測試 21
2.1 概述 22
2.2 尋找SQL注入 22
2.2.1 借助推理進(jìn)行測試 22
2.2.2 數(shù)據(jù)庫錯誤 29
2.2.3 應(yīng)用響應(yīng) 38
2.2.4 SQL盲注 42
2.3 確認(rèn)SQL注入 45
2.3.1 區(qū)分?jǐn)?shù)字和字符串 46
2.3.2 內(nèi)聯(lián)SQL注入 46
2.3.3 終止式SQL注入 51
2.3.4 時(shí)間延遲 59
2.4 自動尋找SQL注入 60
2.5 本章小結(jié) 68
2.6 快速解決方案 68
2.7 常見問題解答 69
第3章 復(fù)查代碼中的SQL注入 71
3.1 概述 72
3.2 復(fù)查源代碼中的SQL注入 72
3.2.1 危險(xiǎn)的編碼行為 74
3.2.2 危險(xiǎn)的函數(shù) 79
3.2.3 跟蹤數(shù)據(jù) 82
3.2.4 復(fù)查PL/SQL和T-SQL代碼 88
3.3 自動復(fù)查源代碼第1章 什么是SQL注入 94
3.3.1 YASCA 96
3.3.2 Pixy 96
3.3.3 AppCodeScan 97
3.3.4 LAPSE 97
3.3.5 SWAAT 97
3.3.6 Microsoft SQL注入源代碼分析器 98
3.3.7 CAT.NET 98
3.3.8 商業(yè)源代碼復(fù)查工具 98
3.3.9 Ounce 99
3.3.10 Fortify源代碼分析器 100
3.3.11 CodeSecure 100
3.4 本章小結(jié) 100
3.5 快速解決方案 101
3.6 常見問題解答 102
第4章 利用SQL注入 105
4.1 概述 106
4.2 理解常見的利用技術(shù) 107
4.3 識別數(shù)據(jù)庫 108
4.3.1 非盲跟蹤 109
4.3.2 盲跟蹤 112
4.4 使用UINON語句提取數(shù)據(jù) 113
4.4.1 匹配列 114
4.4.2 匹配數(shù)據(jù)類型 115
4.5 使用條件語句 119
4.5.1 方法1:基于時(shí)間 120
4.5.2 方法2:基于錯誤 122
4.5.3 方法3:基于內(nèi)容 123
4.5.4 處理字符串 123
4.5.5 擴(kuò)展攻擊 125
4.5.6 利用SQL注入錯誤 126
4.5.7 Oracle中的錯誤消息 128
4.6 枚舉數(shù)據(jù)庫模式 131
4.6.1 SQL Server 131
4.6.2 MySQL 136
4.6.3 Oracle 139
4.7 提升權(quán)限 142
4.7.1 SQL Server 142
4.7.2 Oracle 147
4.8 竊取哈??诹?148
4.8.1 SQL Server 149
4.8.2 MySQL 150
4.8.3 Oracle 151
4.9 帶外通信 154
4.9.1 E-mail 154
4.9.2 HTTP/DNS 157
4.9.3 文件系統(tǒng) 158
4.10 自動利用SQL注入 161
4.10.1 Sqlmap 161
4.10.2 Bobcat 164
4.10.3 BSQL 164
4.10.4 其他工具 166
4.11 本章小結(jié) 166
4.12 快速解決方案 167
4.13 常見問題解答 168
第5章 SQL盲注利用 171
5.1 概述 172
5.2 尋找并確認(rèn)SQL盲注 173
5.2.1 強(qiáng)制產(chǎn)生通用錯誤 173
5.2.2 注入帶副作用的查詢 173
5.2.3 拆分與平衡 173
5.2.4 常見的SQL盲注場景 175
5.2.5 SQL盲注技術(shù) 176
5.3 使用基于時(shí)間的技術(shù) 183
5.3.1 延遲數(shù)據(jù)庫查詢 183
5.3.2 基于時(shí)間推斷的考慮 188
5.4 使用基于響應(yīng)的技術(shù) 189
5.4.1 MySQL響應(yīng)技術(shù) 189
5.4.2 SQL Server響應(yīng)技術(shù) 191
5.4.3 Oracle響應(yīng)技術(shù) 192
5.4.4 返回多位信息 194
5.5 使用非主流通道 195
5.5.1 數(shù)據(jù)庫連接 195
5.5.2 DNS滲漏 196
5.5.3 E-mail滲漏 200
5.5.4 HTTP滲漏 200
5.6 自動SQL盲注利用 202
5.6.1 Absinthe 203
5.6.2 BSQL Hacker 204
5.6.3 SQLBrute 206
5.6.4 Sqlninja 207
5.6.5 Squeeza 208
5.7 本章小結(jié) 209
5.8 快速解決方案 209
5.9 常見問題解答 210
第6章 利用操作系統(tǒng) 213
6.1 概述 214
6.2 訪問文件系統(tǒng) 215
6.2.1 讀文件 215
6.2.2 寫文件 229
6.3 執(zhí)行操作系統(tǒng)命令 237
6.4 鞏固訪問 243
6.5 本章小結(jié) 245
6.6 快速解決方案 245
6.7 常見問題解答 246
6.8 尾注 247
第7章 高級話題 249
7.1 概述 250
7.2 避開輸入過濾器 250
7.2.1 使用大小寫變種 250
7.2.2 使用SQL注釋 250
7.2.3 使用URL編碼 251
7.2.4 使用動態(tài)的查詢執(zhí)行 253
7.2.5 使用空字節(jié) 254
7.2.6 嵌套剝離后的表達(dá)式 255
7.2.7 利用截?cái)?255
7.2.8 避開自定義過濾器 257
7.2.9 使用非標(biāo)準(zhǔn)入口點(diǎn) 257
7.3 利用二階SQL注入 259
7.4 使用混合攻擊 263
7.4.1 修改捕獲的數(shù)據(jù) 263
7.4.2 創(chuàng)建跨站腳本 263
7.4.3 在Oracle上運(yùn)行操作系統(tǒng)命令 264
7.4.4 利用驗(yàn)證過的漏洞 265
7.5 本章小結(jié) 265
7.6 快速解決方案 266
7.7 常見問題解答 267
第8章 代碼層防御 269
8.1 概述 270
8.2 使用參數(shù)化語句 270
8.2.1 Java中的參數(shù)化語句 271
8.2.2 .NET(C#)中的參數(shù)化語句 272
8.2.3 PHP中的參數(shù)化語句 274
8.2.4 PL/SQL中的參數(shù)化語句 275
8.3 輸入驗(yàn)證 275
8.3.1 白名單 276
8.3.2 黑名單 277
8.3.3 Java中的輸入驗(yàn)證 278
8.3.4 .NET中的輸入驗(yàn)證 279
8.3.5 PHP中的輸入驗(yàn)證 280
8.4 編碼輸出 280
8.5 規(guī)范化 286
8.6 通過設(shè)計(jì)來避免SQL注入的危險(xiǎn) 289
8.6.1 使用存儲過程 289
8.6.2 使用抽象層 290
8.6.3 處理敏感數(shù)據(jù) 290
8.6.4 避免明顯的對象名 291
8.6.5 創(chuàng)建數(shù)據(jù)庫Honeypot 292
8.6.6 附加的安全開發(fā)資源 293
8.7 本章小結(jié) 293
8.8 快速解決方案 294
8.9 常見問題解答 295
第9章 平臺層防御 297
9.1 概述 298
9.2 使用運(yùn)行時(shí)保護(hù) 298
9.2.1 Web應(yīng)用防火墻 299
9.2.2 截?cái)噙^濾器 304
9.2.3 不可編輯的輸入保護(hù)與可編輯的輸入保護(hù) 308
9.2.4 URL策略/頁面層策略 308
9.2.5 面向方面編程 309
9.2.6 應(yīng)用入侵檢測系統(tǒng) 310
9.2.7 數(shù)據(jù)庫防火墻 310
9.3 確保數(shù)據(jù)庫安全 310
9.3.1 鎖定應(yīng)用數(shù)據(jù) 311
9.3.2 鎖定數(shù)據(jù)庫服務(wù)器 314
9.4 額外的部署考慮 316
9.4.1 最小化不必要信息的泄露 317
9.4.2 提高Web服務(wù)器日志的冗余 320
9.4.3 在獨(dú)立主機(jī)上部署Web服務(wù)器和數(shù)據(jù)庫服務(wù)器 320
9.4.4 配置網(wǎng)絡(luò)訪問控制 321
9.5 本章小結(jié) 321
9.6 快速解決方案 321
9.7 常見問題解答 322
第10章 參考資料 325
10.1 概述 326
10.2 SQL入門 326
10.3 SQL注入快速參考 331
10.3.1 識別數(shù)據(jù)庫平臺 331
10.3.2 Microsoft SQL Server備忘單 333
10.3.3 MySQL備忘單 338
10.3.4 Oracle備忘單 341
……

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號