SQL注入萬能密碼原理


由於網站后台在進行數據庫查詢的時候沒有對單引號進行過濾,當輸入用戶名【admin】和萬能密碼【2' or'1】時,執行的SQL語句為【Select user_id,user_type,email From users Where user_id=' admin' And password='2'or'1'].同時,由於SQL語句中邏輯運算符具有優先級,【=】優先於【and】,【and】優先於【or】,且適用傳遞性。因此,此SQL語句在后台解析時,分成兩句【Select user_id,user_type,email From users Where user_id='admin' And password = '2']和【1'】,兩句bool值進行邏輯or運算,恆為TRUE。SQL語句的查詢結果為TRUE,就意味着認證成
功,也可以登錄到系統中。


免責聲明!

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



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