從實(shí)踐中學(xué)習(xí)sqlmap數(shù)據(jù)庫(kù)注入測(cè)試
定 價(jià):109.8 元
叢書(shū)名:信息安全技術(shù)大講堂
- 作者:朱振方張鵬編著
- 出版時(shí)間:2022/3/1
- ISBN:9787111700623
- 出 版 社:機(jī)械工業(yè)出版社
- 中圖法分類(lèi):TP311.138SQ
- 頁(yè)碼:
- 紙張:膠版紙
- 版次:
- 開(kāi)本:16開(kāi)
隨著IT的發(fā)展,Web技術(shù)從傳統(tǒng)的網(wǎng)站領(lǐng)域延伸到了手機(jī)App領(lǐng)域。而大部分網(wǎng)站都是采用數(shù)據(jù)庫(kù)來(lái)存儲(chǔ)數(shù)據(jù),這使得SQL注入技術(shù)成為Web安全防護(hù)的重點(diǎn)。為了保證網(wǎng)站的安全,開(kāi)發(fā)人員和安全人員需要對(duì)網(wǎng)站上成百上千個(gè)網(wǎng)頁(yè)逐一進(jìn)行檢查,以驗(yàn)證其對(duì)各種SQL注入攻擊的防護(hù)效果,但這會(huì)帶來(lái)龐大的工作量。sqlmap是一款開(kāi)源的SQL注入自動(dòng)化測(cè)試工具,它不僅可以大幅度減少檢測(cè)時(shí)間,而且還可以驗(yàn)證漏洞存在的危害性,在Web安防領(lǐng)域有著廣泛的應(yīng)用。本書(shū)結(jié)合大量示例,詳細(xì)介紹了sqlmap注入測(cè)試的相關(guān)知識(shí)。
本書(shū)共14章,分為3篇。第1篇“測(cè)試準(zhǔn)備”,主要介紹sqlmap環(huán)境配置、指定目標(biāo)、連接目標(biāo)、探測(cè)注入點(diǎn)及數(shù)據(jù)庫(kù)類(lèi)型等相關(guān)內(nèi)容;第2篇“信息獲取”,主要介紹如何基于sqlmap獲取4種主流數(shù)據(jù)庫(kù)信息(MySQL、MSSQL、Access和Oracle),以及如何手工獲取數(shù)據(jù)庫(kù)信息;第3篇“高級(jí)技術(shù)”,主要介紹sqlmap所使用的注入技術(shù)、訪問(wèn)后臺(tái)數(shù)據(jù)庫(kù)管理系統(tǒng)、優(yōu)化注入、保存和輸出數(shù)據(jù)、規(guī)避防火墻等相關(guān)內(nèi)容。
本書(shū)適合滲透測(cè)試人員、網(wǎng)絡(luò)維護(hù)人員、網(wǎng)站開(kāi)發(fā)人員和信息安全愛(ài)好者閱讀。通過(guò)本書(shū)的學(xué)習(xí),可以幫助讀者了解和掌握SQL注入的測(cè)試方式和注入技術(shù),以及危害性評(píng)估等相關(guān)知識(shí)。
從理論、應(yīng)用和實(shí)踐三個(gè)維度詳解sqlmap實(shí)施數(shù)據(jù)庫(kù)注入的相關(guān)知識(shí);
通過(guò)260個(gè)操作實(shí)例,一步步帶領(lǐng)讀者從實(shí)踐中進(jìn)行學(xué)習(xí);
涵蓋7類(lèi)注入技術(shù)、4種主流數(shù)據(jù)庫(kù)以及各類(lèi)優(yōu)化技術(shù);
涵蓋MySQL、MSSQL、Access、Oracle四種主流數(shù)據(jù)庫(kù);
詳細(xì)講解sqlmap支持的七種數(shù)據(jù)庫(kù)注入技術(shù);
提供助記提示,幫助讀者記憶繁雜的選項(xiàng);
完整展現(xiàn)SQL注入的前中后三個(gè)階段的各項(xiàng)技術(shù);
贈(zèng)送配套的思維導(dǎo)圖以及知識(shí)點(diǎn)串講視頻;
提供后續(xù)的內(nèi)容更新服務(wù)和完善的工具獲取方式;
提供QQ群、論壇和E-mail互動(dòng)交流方式。
隨著信息技術(shù)的發(fā)展,網(wǎng)站(Web)技術(shù)廣泛應(yīng)用于人們的生活和工作中。無(wú)論是傳統(tǒng)的網(wǎng)站還是手機(jī)App,它們都借助Web技術(shù)從服務(wù)器上讀寫(xiě)數(shù)據(jù)。但Web服務(wù)器往往存在諸多潛在的安全風(fēng)險(xiǎn)和隱患,如SQL注入攻擊、跨站腳本攻擊和命令注入攻擊等。尤其是Web服務(wù)器廣泛使用數(shù)據(jù)庫(kù)技術(shù),這導(dǎo)致SQL注入攻擊成為常見(jiàn)的攻擊方式。
一個(gè)Web服務(wù)器上可能存儲(chǔ)著成百上千個(gè)網(wǎng)頁(yè),用于接收用戶數(shù)據(jù),并從數(shù)據(jù)庫(kù)中讀寫(xiě)數(shù)據(jù),只要其中一個(gè)網(wǎng)頁(yè)對(duì)用戶數(shù)據(jù)過(guò)濾得不嚴(yán)格,就會(huì)形成SQL注入漏洞,加之SQL注入的方式眾多,這些因素都導(dǎo)致手動(dòng)測(cè)試的工作量巨大。
sqlmap是一款業(yè)界知名的開(kāi)源自動(dòng)化SQL注入測(cè)試工具,支持當(dāng)下流行的39種數(shù)據(jù)庫(kù)。它不但提供多種目標(biāo)指定方式,而且還支持多目標(biāo)批量測(cè)試。另外,它還能利用6種主流的注入技術(shù)自動(dòng)探測(cè)目標(biāo)存在的SQL注入漏洞,并驗(yàn)證漏洞的危害程度。
本書(shū)按照SQL注入的測(cè)試流程,詳細(xì)介紹sqlmap的使用方法。本書(shū)對(duì)sqlmap提交的參數(shù)進(jìn)行詳細(xì)分析,明確SQL注入的防范機(jī)制,另外還重點(diǎn)展現(xiàn)SQL注入帶來(lái)的各種危害,從而幫助安防人員更好地進(jìn)行防范。
本書(shū)特色
1.內(nèi)容可操作性強(qiáng)
SQL注入是一門(mén)操作性非常強(qiáng)的技術(shù),為了方便讀者學(xué)習(xí)和理解,本書(shū)遵循SQL注入的流程來(lái)合理安排內(nèi)容。首先介紹各項(xiàng)準(zhǔn)備工作;然后介紹如何指定目標(biāo),給出設(shè)置連接目標(biāo)的方式并探測(cè)注入點(diǎn);后介紹如何利用注入漏洞獲取信息,并分析在該過(guò)程中采用的各項(xiàng)技術(shù)。書(shū)中在介紹每個(gè)功能時(shí)都配以實(shí)例,以幫助讀者通過(guò)實(shí)踐的方式進(jìn)行理解和學(xué)習(xí)。
2.涵蓋不同類(lèi)型的數(shù)據(jù)庫(kù)信息獲取方法
不同類(lèi)型的數(shù)據(jù)庫(kù)獲取信息的方式和側(cè)重點(diǎn)有所不同,本書(shū)詳細(xì)介紹MySQL、MSSQL、Access和Oracle這4種常見(jiàn)的主流數(shù)據(jù)庫(kù)的信息獲取方法,以幫助讀者掌握SQL注入防護(hù)的重點(diǎn)。
3.涉及多種SQL攻擊技術(shù)和思路
為了幫助讀者了解SQL注入技術(shù),本書(shū)詳細(xì)介紹sqlmap使用的6種注入技術(shù),即基于布爾的盲注、基于錯(cuò)誤的注入、基于時(shí)間的盲注、聯(lián)合查詢注入、堆疊注入和DNS注入,另外還會(huì)介紹一種特殊的注入思路——二級(jí)SQL注入。
4.提供完善的技術(shù)支持和售后服務(wù)
本書(shū)提供QQ交流群(343867787)和論壇(bbs.daxueba.net),供讀者交流和討論學(xué)習(xí)中遇到的各種問(wèn)題。讀者還可以關(guān)注微博賬號(hào)(@大學(xué)霸IT達(dá)人)獲取圖書(shū)內(nèi)容更新信息及相關(guān)技術(shù)文章。另外,本書(shū)還提供售后服務(wù)郵箱hzbook2017@163.com,讀者在閱讀的過(guò)程中若有疑問(wèn),也可以通過(guò)該郵箱獲得幫助。
本書(shū)內(nèi)容
第1篇 測(cè)試準(zhǔn)備
本篇涵蓋第1~4章,主要介紹學(xué)習(xí)SQL注入攻擊前的各項(xiàng)準(zhǔn)備工作,如環(huán)境配置、指定目標(biāo)、連接目標(biāo)、探測(cè)注入漏洞及數(shù)據(jù)庫(kù)類(lèi)型等。
第2篇 信息獲取
本篇涵蓋第5~9章,主要介紹如何獲取MySQL、MSSQL、Access和Oracle這4種常見(jiàn)的數(shù)據(jù)庫(kù)服務(wù)器的重要信息。
第3篇 高級(jí)技術(shù)
本篇涵蓋第10~14章,主要介紹sqlmap注入攻擊所依賴的技術(shù),并介紹如何驗(yàn)證漏洞的危害性以及如何提升sqlmap的測(cè)試效率,如優(yōu)化注入、保存數(shù)據(jù)、導(dǎo)出數(shù)據(jù)和規(guī)避防火墻等。
本書(shū)配套資源獲取方式
本書(shū)涉及的教學(xué)視頻、思維導(dǎo)圖、工具和軟件需要讀者自行獲取,獲取途徑有以下幾種:
* 根據(jù)書(shū)中對(duì)應(yīng)章節(jié)給出的網(wǎng)址進(jìn)行下載;
* 加入本書(shū)QQ交流群獲取;
* 訪問(wèn)論壇bbs.daxueba.net獲。
* 登錄機(jī)械工業(yè)出版社華章分社網(wǎng)站www.hzbook.com,在該網(wǎng)站上搜索到本書(shū),然后單擊“資料下載”按鈕,即可在本書(shū)頁(yè)面上找到“配書(shū)資源”下載鏈接。
本書(shū)內(nèi)容更新文檔獲取方式
為了讓本書(shū)內(nèi)容緊跟技術(shù)發(fā)展和軟件更新的步伐,筆者會(huì)對(duì)書(shū)中的相關(guān)內(nèi)容進(jìn)行不定期更新,并發(fā)布對(duì)應(yīng)的電子文檔。需要的讀者可以加入QQ交流群獲取,也可以通過(guò)機(jī)械工業(yè)出版社華章分社網(wǎng)站上的“本書(shū)配套資源”鏈接進(jìn)行下載。
本書(shū)讀者對(duì)象
* 滲透測(cè)試技術(shù)人員;
* 網(wǎng)絡(luò)安全和維護(hù)人員;
* 信息安全技術(shù)愛(ài)好者;
* 網(wǎng)站開(kāi)發(fā)人員;
* 高校相關(guān)專業(yè)的學(xué)生;
* 專業(yè)培訓(xùn)機(jī)構(gòu)的學(xué)員。
閱讀提示
* sqlmap是一款開(kāi)源工具,會(huì)不定時(shí)進(jìn)行版本更新,學(xué)習(xí)之前建議先按照1.2節(jié)的介紹下載和安裝其版本。如果其功能有較大變化,我們會(huì)發(fā)布增補(bǔ)文檔供讀者下載。
* SQL注入的部分操作會(huì)對(duì)Web服務(wù)器和數(shù)據(jù)庫(kù)服務(wù)器的運(yùn)行產(chǎn)生一定的影響,因此應(yīng)該避免在生產(chǎn)環(huán)境中進(jìn)行測(cè)試,而應(yīng)選擇在實(shí)驗(yàn)環(huán)境中進(jìn)行測(cè)試。
* 在測(cè)試之前建議了解相關(guān)法律,避免侵犯他人權(quán)益甚至觸犯法律。
感謝
感謝在本書(shū)編寫(xiě)和出版過(guò)程中給予我們大量幫助的各位編輯!限于作者水平,加之寫(xiě)作較為倉(cāng)促,書(shū)中可能存在一些疏漏和不足之處,敬請(qǐng)各位讀者批評(píng)、指正。
編著者
朱振方 博士,教授,博士生導(dǎo)師,“計(jì)算機(jī)科學(xué)與技術(shù)”一流專業(yè)建設(shè)點(diǎn)負(fù)責(zé)人,F(xiàn)任山東交通學(xué)院信息科學(xué)與電氣工程學(xué)院計(jì)算機(jī)系主任,山東交通學(xué)院融媒體智能計(jì)算與安全技術(shù)研究中心主任。主要研究興趣有網(wǎng)絡(luò)信息安全和自然語(yǔ)言處理等。
張鵬 精通Web安全技術(shù),熟悉OWASP TOP10漏洞的原理與修復(fù)方案,熟悉滲透測(cè)試的步驟、方法和流程。對(duì)各類(lèi)操作系統(tǒng)和應(yīng)用平臺(tái)的弱點(diǎn)有較深入的理解。熟悉常見(jiàn)腳本語(yǔ)言,能夠進(jìn)行Web滲透測(cè)試,以及惡意代碼的檢測(cè)和分析。
前言
第1篇 測(cè)試準(zhǔn)備
第1章 sqlmap環(huán)境配置2
1.1 sqlmap基礎(chǔ)知識(shí)2
1.1.1 sqlmap簡(jiǎn)介2
1.1.2 sqlmap注入流程2
1.2 安裝sqlmap3
1.2.1 下載sqlmap安裝包3
1.2.2 在Windows中安裝sqlmap4
1.2.3 在Linux中安裝sqlmap6
1.3 啟動(dòng)sqlmap7
1.3.1 標(biāo)準(zhǔn)模式8
1.3.2 交互模式8
1.3.3 向?qū)J?0
1.3.4 快速模式10
1.4 sqlmap使用技巧10
1.4.1 查看幫助信息11
1.4.2 查看版本信息13
1.4.3 使用短記憶法13
1.4.4 更新sqlmap14
1.4.5 使用INI配置文件15
1.4.6 設(shè)置冗余級(jí)別16
1.4.7 檢查依賴17
第2章 指定目標(biāo)20
2.1 單個(gè)目標(biāo)20
2.1.1 URL地址格式20
2.1.2 指定目標(biāo)URL21
2.2 批量測(cè)試23
2.2.1 指定多個(gè)目標(biāo)23
2.2.2 發(fā)出警報(bào)25
2.2.3 檢測(cè)到注入漏洞時(shí)報(bào)警26
2.3 日志文件27
2.3.1 捕獲日志文件27
2.3.2 指定日志文件35
2.3.3 過(guò)濾日志文件中的目標(biāo)36
2.4 HTTP請(qǐng)求文件37
2.4.1 使用BurpSuite抓包37
2.4.2 指定HTTP請(qǐng)求文件39
2.5 從谷歌搜索引擎中獲取目標(biāo)40
2.5.1 谷歌基礎(chǔ)語(yǔ)法40
2.5.2 指定搜索目標(biāo)42
2.5.3 指定測(cè)試頁(yè)面44
2.6 爬取網(wǎng)站45
2.6.1 指定爬取深度45
2.6.2 排除爬取頁(yè)面46
2.6.3 設(shè)置臨時(shí)文件目錄46
第3章 連接目標(biāo)48
3.1 設(shè)置認(rèn)證信息48
3.1.1 指定認(rèn)證類(lèi)型48
3.1.2 指定認(rèn)證憑證49
3.1.3 指定私鑰文件49
3.2 代理網(wǎng)絡(luò)50
3.2.1 使用已有的代理服務(wù)器50
3.2.2 使用新的代理服務(wù)器51
3.2.3 指定代理服務(wù)器52
3.2.4 指定代理憑證58
3.2.5 指定代理列表59
3.2.6 忽略系統(tǒng)級(jí)代理60
3.3 Tor匿名網(wǎng)絡(luò)60
3.3.1 搭建Tor匿名網(wǎng)絡(luò)60
3.3.2 使用Tor匿名網(wǎng)絡(luò)61
3.3.3 檢查T(mén)or匿名網(wǎng)絡(luò)62
3.3.4 設(shè)置Tor代理端口62
3.3.5 設(shè)置Tor代理類(lèi)型63
3.4 處理連接錯(cuò)誤63
3.4.1 忽略HTTP錯(cuò)誤狀態(tài)碼63
3.4.2 忽略重定向65
3.4.3 忽略連接超時(shí)65
3.5 檢測(cè)WAF/IPS66
3.6 調(diào)整連接選項(xiàng)68
第4章 探測(cè)注入漏洞及數(shù)據(jù)庫(kù)類(lèi)型69
4.1 探測(cè)GET參數(shù)69
4.1.1 GET參數(shù)簡(jiǎn)介69
4.1.2 使用sqlmap探測(cè)71
4.1.3 手動(dòng)探測(cè)73
4.2 探測(cè)POST參數(shù)76
4.2.1 POST參數(shù)簡(jiǎn)介76
4.2.2 指定POST參數(shù)77
4.2.3 自動(dòng)搜索POST參數(shù)78
4.2.4 從HTTP請(qǐng)求文件中讀取POST參數(shù)81
4.2.5 手動(dòng)判斷82
4.3 探測(cè)Cookie參數(shù)85
4.3.1 Cookie參數(shù)簡(jiǎn)介85
4.3.2 指定Cookie參數(shù)85
4.3.3 指定包括Cookie的文件88
4.3.4 忽略Set-Cookie值89
4.3.5 加載動(dòng)態(tài)Cookie文件90
4.3.6 手動(dòng)判斷90
4.4 探測(cè)UA參數(shù)92
4.4.1 UA參數(shù)簡(jiǎn)介92
4.4.2 指定UA參數(shù)94
4.4.3 使用隨機(jī)UA參數(shù)96
4.4.4 使用手機(jī)UA97
4.4.5 手動(dòng)判斷99
4.5 探測(cè)Referer參數(shù)101
4.5.1 Referer參數(shù)簡(jiǎn)介101
4.5.2 指定Referer參數(shù)101
4.5.3 手動(dòng)判斷103
4.6 添加額外的HTTP頭105
4.6.1 指定單個(gè)額外的HTTP頭105
4.6.2 指定多個(gè)額外的HTTP頭106
4.7 指定測(cè)試參數(shù)106
4.7.1 指定可測(cè)試的參數(shù)106
4.7.2 跳過(guò)指定的參數(shù)108
4.7.3 跳過(guò)測(cè)試靜態(tài)參數(shù)109
4.7.4 使用正則表達(dá)式排除參數(shù)109
4.7.5 指定測(cè)試參數(shù)的位置109
第2篇 信息獲取
第5章 獲取MySQL數(shù)據(jù)庫(kù)信息112
5.1 MySQL數(shù)據(jù)庫(kù)簡(jiǎn)介112
5.2 獲取數(shù)據(jù)庫(kù)標(biāo)識(shí)112
5.3 獲取服務(wù)器主機(jī)名113
5.4 獲取數(shù)據(jù)庫(kù)的用戶名115
5.4.1 獲取當(dāng)前連接數(shù)據(jù)庫(kù)的用戶名115
5.4.2 獲取數(shù)據(jù)庫(kù)的所有用戶名116
5.5 獲取數(shù)據(jù)庫(kù)用戶的密碼117
5.5.1 獲取用戶密碼的哈希值118
5.5.2 在線破解哈希值119
5.5.3 使用其他工具破解哈希值121
5.6 獲取數(shù)據(jù)庫(kù)的名稱123
5.6.1 獲取當(dāng)前數(shù)據(jù)庫(kù)的名稱123
5.6.2 獲取所有數(shù)據(jù)庫(kù)的名稱124
5.7 獲取數(shù)據(jù)表126
5.7.1 獲取所有的數(shù)據(jù)表126
5.7.2 獲取指定數(shù)據(jù)庫(kù)中的數(shù)據(jù)表128
5.8 獲取數(shù)據(jù)庫(kù)架構(gòu)129
5.8.1 獲取所有數(shù)據(jù)庫(kù)的架構(gòu)129
5.8.2 獲取指定數(shù)據(jù)庫(kù)的架構(gòu)130
5.8.3 排除系統(tǒng)數(shù)據(jù)庫(kù)132
5.9 獲取數(shù)據(jù)表中的列133
5.9.1 獲取所有的列133
5.9.2 獲取指定數(shù)據(jù)表的列135
5.10 獲取數(shù)據(jù)表中的內(nèi)容136
5.10.1 獲取數(shù)據(jù)表中的全部?jī)?nèi)容136
5.10.2 獲取指定的數(shù)據(jù)表中的內(nèi)容138
5.10.3 獲取所有的數(shù)據(jù)表中的內(nèi)容140
5.10.4 過(guò)濾數(shù)據(jù)表中的內(nèi)容141
5.10.5 獲取指定列的數(shù)據(jù)144
5.10.6 排除指定列的數(shù)據(jù)145
5.10.7 獲取注釋信息146
5.10.8 指定導(dǎo)出的數(shù)據(jù)格式147
5.11 獲取數(shù)據(jù)