sql注入總結---(3)

一, 寬字節注入

(1)什麼時候想到這種注入方法

在尋找注入點時,回顯出現id=1\'

  • 在這裏插入圖片描述

(2)防護思路和代碼分析

防護思路

  • 使用addslashes($_GET['id'])函數對傳來的參數使用反斜線轉義,1' ----->1\'
  • 使得參數無法逃逸引號的包圍,不能執行惡意SQL語句。
  • 在這裏插入圖片描述

(3)漏洞原因和利用

GBK編碼中漢字佔用兩個字

  • 當數據庫的編碼爲GBK時,可以利用寬字節注入

/ 的URL編碼爲 %5c

的GBK編碼爲 %df%5c

根據這個特性可以構造payload注入

【payload】
         ?id=1%df'  .......

  • 在這裏插入圖片描述

(4)漏洞利用條件

數據庫編碼爲GBK

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