Sql注入類型


1.sql注入

通過把SQL命令插入到Web表單提交或輸入域名或頁面請求的查詢字符串,最終達到欺騙服務器執行惡意的SQL命令。

2.sql注入類型

按照注入點類型來分類

(1)數字型注入點

在 Web 端大概是 http://xxx.com/news.php?id=1 這種形式,其注入點 id 類型為數字,所以叫數字型注入點。這一類的 SQL 語句原型大概為 select * from 表名 where id=1。組合出來的sql注入語句為:select * from news where id=1 and 1=1

(2)字符型注入點

在 Web 端大概是 http://xxx.com/news.php?name=admin 這種形式,其注入點 name 類型為字符類型,所以叫字符型注入點。這一類的 SQL 語句原型大概為 select * from 表名 where name='admin'。注意多了引號。組合出來的sql注入語句為:select * from news where chr='admin' and 1=1 ' '

閉合單引號chr='admin' union select 1,2,3,4 and '1'='1   ====>  chr='admin'(閉合前面單引號) union select 1,2,3,4 and '1'='1'

(3)搜索型注入點

這是一類特殊的注入類型。這類注入主要是指在進行數據搜索時沒過濾搜索參數,一般在鏈接地址中有“keyword=關鍵字”,有的不顯示在的鏈接地址里面,而是直接通過搜索框表單提交。此類注入點提交的 SQL 語句,其原形大致為:select * from 表名 where 字段 like '%關鍵字%'

組合出來的sql注入語句為:select * from news where search like '%測試 %' and '%1%'='%1%'

測試%' union select 1,2,3,4 and '%'='

按照數據提交的方式來分類

(1)GET 注入

提交數據的方式是 GET , 注入點的位置在 GET 參數部分。比如有這樣的一個鏈接http://xxx.com/news.php?id=1 , id 是注入點。

(2)POST 注入

使用 POST 方式提交數據,注入點位置在 POST 數據部分,常發生在表單中。

(3)Cookie 注入

HTTP 請求的時候會帶上客戶端的 Cookie, 注入點存在 Cookie 當中的某個字段中。

(4)HTTP 頭部注入

注入點在 HTTP 請求頭部的某個字段中。比如存在 User-Agent 字段中。嚴格講的話,Cookie 其實應該也是算頭部注入的一種形式。因為在 HTTP 請求的時候,Cookie 是頭部的一個字段。

按照執行效果來分類

(1)基於布爾的盲注,即可以根據返回頁面判斷條件真假的注入。

(2)基於時間的盲注,即不能根據頁面返回內容判斷任何信息,用條件語句查看時間延遲語句是否執行(即頁面返回時間是否增加)來判斷。

(3)基於報錯注入,即頁面會返回錯誤信息,或者把注入的語句的結果直接返回在頁面中。

*(4)聯合查詢注入,可以使用union的情況下的注入。

*(5)堆查詢注入,可以同時執行多條語句的執行時的注入。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM