歡迎光臨
我們一直在努力

【PHP代碼審計】 那些年我們一起挖掘SQL注入 - 2.全局防護Bypass之UrlDecode

#Web 滲透與漏洞研究#程式碼審計與漏洞分析

現在的WEB程序基本都有對SQL注入的全局過濾,像PHP開啟了GPC或者在全局文件common.php上使用addslashes()函數對接收的參數進行過濾,尤其是單引號。遇到這種情況我們就需要找一些編碼解碼的函數來繞過全局防護,這篇文章講urldecode()的情況

原文出處:http://www.cnbraid.com/2015/sql1.html

-------------------
如果你認同支持我們每日分享的文章的話,請幫我們按個讚並且點擊追蹤「搶先看」,這樣就可以快速獲得最新消息囉!
您的分享及點讚,是我們最大的動力來源。
https://www.facebook.com/LonelyPoPo/

 

波波觀點:UrlDecode 繞過的核心是正規化順序

SQL 注入防護常見錯誤之一,是在錯誤的時間點做輸入檢查。若系統先用黑名單判斷,再由框架、Web 伺服器或應用程式進行 UrlDecode,攻擊者就可能利用編碼差異繞過規則。這類案例很適合用來說明「正規化後再驗證」的重要性。

審計檢查方向

  • 追蹤參數從 HTTP 請求、框架解析、過濾函式到 SQL 組字串的完整流程。
  • 確認 UrlDecode、Base64Decode、字元集轉換與反斜線處理的先後順序。
  • 找出全局防護、黑名單、addslashes 與手寫過濾規則的邊界缺陷。
  • 優先改用參數化查詢與 ORM 安全 API,而不是依賴字串替換。

修補建議

防禦 SQL 注入時,輸入正規化、型別驗證與參數化查詢要一起做。對 ID、分頁、排序、欄位名稱等參數,應建立白名單與型別限制;對複雜查詢,應避免把未經驗證的字串直接拼接進 SQL。

後續可把這篇文章與 Base64Decode 篇整理成 SQL 注入繞過系列,並加入 vulnerable code、patched code 與測試案例。這樣更適合作為程式碼審計專題的核心內容。

延伸閱讀與專題

贊(0) 贊助
未經允許不得轉載:波波的寂寞世界 » 【PHP代碼審計】 那些年我們一起挖掘SQL注入 - 2.全局防護Bypass之UrlDecode

波波的寂寞世界

Facebook聯繫我們

覺得文章有幫助,歡迎贊助支持本站

感謝你的支持,我會持續整理資安筆記、實務經驗與有價值的技術內容。

贊助本站