1. 程式人生 > >SQL註入學習資料總結

SQL註入學習資料總結

腳本 使用 返回結果 得到 php代碼 世界 信息 其他 系統命令

轉載自:https://bbs.ichunqiu.com/thread-12105-1-1.html

什麽是SQL註入


SQL註入基本介紹

結構化查詢語言(Structured Query Language,縮寫:SQL),是一種特殊的編程語言,用於數據庫中的標準數據查詢語言。1986年10月,美國國家標準學會對SQL進行規範後,以此作為關系式數據庫管理系統的標準語言(ANSI X3. 135-1986),1987年得到國際標準組織的支持下成為國際標準。不過各種通行的數據庫系統在其實踐過程中都對SQL規範作了某些編改和擴充。所以,實際上不同數據庫系統之間的SQL不能完全相互通用。

SQL註入(SQL Injection)是一種常見的web安全漏洞,攻擊者利用這個問題,可以訪問或修改數據,或者利用潛在的數據庫漏洞進行攻擊。


SQL註入產生原因

針對SQL註入的攻擊行為可描述為通過在用戶可控參數中註入SQL語法,破壞原有SQL結構,達到編寫程序時意料之外結果的攻擊行為。其成因可以歸結為以下兩個原因疊加造成的:

1. 程序編寫者在處理應用程序和數據庫交互時,使用字符串拼接的方式構造SQL語句

2. 未對用戶可控參數進行足夠的過濾便將參數內容拼接進入到SQL語句中

sql註入攻擊方式

SQL註入的攻擊方式根據應用程序處理數據庫返回內容的不同,可以分為可顯註入、報錯註入和盲註:

1、可顯註入:攻擊者可以直接在當前界面內容中獲取想要獲得的內容
2、報錯註入:數據庫查詢返回結果並沒有在頁面中顯示,但是應用程序將數據庫報錯信息打印到了頁面中,所以攻擊者可以構造數據庫報錯語句,從報錯信息中獲取想要獲得的內容
3、盲註:數據庫查詢結果無法從直觀頁面中獲取,攻擊者通過使用數據庫邏輯或使數據庫庫執行延時等方法獲取想要獲得的內容

如何進行SQL註入攻擊

SQL註入攻擊是非常令人討厭的安全漏洞,是所有的web開發人員,不管是什麽平臺,技術,還是數據層,需要確信他們理解和防止的東西。不幸的是,開發人員往往不集中花點時間在這上面,以至他們的應用,更糟糕的是,他們的客戶極其容易受到攻擊。下面的三部曲從漏洞發現到漏洞確認,再到漏洞利用,最後漏洞防禦四個方面的技術做了詳細的講解。



SQL註入三部曲:

1、 滲透攻防Web篇-SQL註入攻擊初級

http://bbs.ichunqiu.com/thread-9518-1-1.html


2、 滲透攻防Web篇-SQL註入攻擊中級

http://bbs.ichunqiu.com/thread-9668-1-1.html

3、 滲透攻防Web篇-SQL註入攻擊高級

http://bbs.ichunqiu.com/thread-10093-1-1.html


SQL註入經驗與技巧

經驗很重要,成功往往在多次失敗之後。要想減少失敗,就多看文章積累技巧吧,下面集合了論壇相關技術文章,從各個方面介紹了SQL註入。


1、 SQL學習筆記

http://bbs.ichunqiu.com/thread-2274-1-1.html

2、 人人都可學會的MySQL高級註射技巧

http://bbs.ichunqiu.com/thread-10359-1-1.html

3、 詳解MySQL註射

http://bbs.ichunqiu.com/thread-10222-1-1.html

4、 淺談.NET應用程序SQL註入

http://bbs.ichunqiu.com/thread-7636-1-1.html

5、 在SQL註入中使用DNS獲取數據

http://bbs.ichunqiu.com/thread-10005-1-1.html

6、 WEB安全系列之如何挖掘sql註入漏洞(二次註入)

http://bbs.ichunqiu.com/thread-9193-1-1.html

7、深入了解php+mysql註入及修補!

http://bbs.ichunqiu.com/thread-10090-1-1.html

8、技巧整合 - mysql註入點的另類利用

http://bbs.ichunqiu.com/thread-9903-1-1.html

9、淺談sql註入中的Post註入

http://bbs.ichunqiu.com/thread-7762-1-1.html

相關教程


工具教程篇:

1、 SQLMAP註入教程-11種常見SQLMAP使用方法詳解

http://bbs.ichunqiu.com/thread-10583-1-1.html

2、 SQLMAP tamper WAF 繞過腳本列表註釋

http://bbs.ichunqiu.com/thread-10387-1-1.html

3、零基礎實戰審計SQL註射漏洞

http://bbs.ichunqiu.com/thread-10284-1-1.html

4、被動式SQL註入神器總結

http://bbs.ichunqiu.com/thread-8428-1-1.html

5、利用Burpsuit學習註入工具語句

http://bbs.ichunqiu.com/thread-8319-1-1.html




代碼審計篇:

1、 PHP代碼審計SQL註入

http://bbs.ichunqiu.com/thread-11308-1-1.html

2、Joomla 3.xSql註入漏洞分析

http://bbs.ichunqiu.com/thread-1689-1-1.html

3、 淺談JSP安全開發之SQL註入

http://bbs.ichunqiu.com/thread-9958-1-1.html

4、 代碼審計之繞過addslashes總結

http://bbs.ichunqiu.com/thread-10899-1-1.html




相關技術及文檔:

1、 mysql數據庫學習

http://bbs.ichunqiu.com/thread-11248-1-1.html

2、 SQL註入自學指南

http://bbs.ichunqiu.com/thread-2141-1-1.html

3、 mssql註入經常使用的命令

http://bbs.ichunqiu.com/thread-3221-1-1.html


專業的視頻教程-告別文字的枯燥

1、SQL註入漏洞-視頻+實驗:活學活用
http://www.ichunqiu.com/course/405

2、SQL註入漏洞審計及漏洞挖掘
http://www.ichunqiu.com/course/1325

3、
科普類-SQL(結構化查詢語言)註入攻擊的好處

  • 改變SQL(結構化查詢語言)代碼來掩蓋你的攻擊
  • 進行SQL(結構化查詢語言)註入攻擊
  • 解釋一個SQL(結構化查詢語言)註入攻擊

http://www.ichunqiu.com/course/51849

4
SQL註入漏洞發現及修補技術(有攻有防才是王道)
http://www.ichunqiu.com/course/77

SQL註入工具

1、SQLmap

sqlmap 是一個開源的滲透測試工具,可以用來自動化的檢測,利用SQL註入漏洞,獲取數據庫服務器的權限。它具有功能強大的檢測引擎,針對各種不同類型數據庫的滲透測試的功能選項,包括獲取數據庫中存儲的數據,訪問操作系統文件甚至可以通過外帶數據連接的方式執行操作系統命令。

項目地址:https://github.com/sqlmapproject/sqlmap

2、SSQLInjection

超級SQL註入工具(SSQLInjection)是一款基於HTTP協議自組包的SQL註入工具,支持出現在HTTP協議任意位置的SQL註入,支持各種類型的SQL註入,支持HTTPS模式註入。目前支持Bool型盲註、錯誤顯示註入、Union註入,支持Access、MySQL5以上版本、SQLServer、Oracle等數據庫。采用C#開發,底層采用Socket發包進行HTTP交互,極大的提升了發包效率,相比C#自帶的HttpWebRequest速度提升2-5倍。支持盲註環境獲取世界各國語言數據,直接秒殺各種註入工具在盲註環境下無法支持中文等多字節編碼的數據。

項目地址:http://www.shack2.org/article/1417357815.html

3、Pangolin

Pangolin是一款幫助滲透測試人員進行SQL註入測試的安全工具。它具備友好的圖形界面以及支持測試幾乎所有數據庫,並能夠通過一系列非常簡單的操作,達到最大化的攻擊測試效果。

收費的,所以不放項目地址。

4、Havij

Havij是一款自動化的SQL註入工具,它不僅能夠自動挖掘可利用的SQL查詢,還能夠識別後臺數據庫類型、檢索數據的用戶名和密碼hash、轉儲表和列、從數據庫中提取數據,甚至訪問底層文件系統和執行系統命令。

收費的,所以不放項目地址。

5、The Mole

The Mole是一款開源的自動化SQL註入工具,其可繞過IPS/IDS(入侵防禦系統/入侵檢測系統)。只需提供一個URL和一個可用的關鍵字,它就能夠檢測註入點並利用。The Mole可以使用union註入技術和基於邏輯查詢的註入技術。The Mole攻擊範圍包括SQL Server、MySQL、Postgres和Oracle數據庫。

項目地址:nasel.com.ar

6、SQLNinja

sqlninja是一款用perl寫的一個專門針對Microsoft SQL Server的sql註入工具。和市面上其他的註入工具不同,sqlninja沒有將精力用在跑數據庫上,而是側重於獲得一個shell。

項目地址:http://www.northernfortress.net/
kali自帶工具

7BBQSQL

BBQSQL是一個Python編寫的盲註工具(blind SQL injection framework),當你檢測可疑的註入漏洞時會很有用。同時BBQSQL是一個半自動工具,允許客戶自定義參數。

項目地址:https://github.com/Neohapsis/bbqsql/

8、Jsql

JSQL是一款Java開發的輕量級遠程服務器數據庫註入漏洞測試工具,且免費、開源、跨平臺 (Windows, Linux, Mac OS X, Solaris)。

項目地址:https://code.google.com/p/jsql-injection/downloads/list


9、Sqlsus

sqlsus是一個開放源代碼的MySQL註入和接管工具,sqlsus使用perl編寫,基於命令行界面。sqlsus可以獲取數據庫結構,註入你自己的SQL語句,從服務器下載文件,爬行web站點可寫目錄,上傳和控制後門,克隆數據庫等等

項目地址:http://sqlsus.sourceforge.net/download.html

10、SQL Poizon

SQL Poizon是一個SQL註入掃描器,能夠利用搜索引擎搜羅互聯網上有SQL註入漏洞的網站。該工具內建瀏覽器和註入任務工具檢查註入效果。SQL Poizon的界面非常簡單,即使沒有多少技術功底的人也能輕松上手。

這個很老了就不提供地址了,互聯網上很多。

SQL註入學習資料總結