我試圖檢查一個網站的SQL注入攻擊,並驚訝地看到它不是很簡單,以防止因爲下面是簡單的代碼。爲什麼我不能做SQL注入測試使用mysql和php
$sql="select * from user_acount where login_id='".$username."' and password='".$password."' and status='1' ";
我不能做任何SQL注入來測試它。我寫了下面
1日嘗試檢查SQL注入無法登陸
Login: admin'--
Password:'i typed nothing here '
結果密碼錯誤。
第二:
您無法登錄Login: admin or 1=1 --'
Password:''
結果密碼錯誤。
3:
Login: admin' or 1=1
Password:''
4: 登錄:admin或1 = 1 ' - 密碼:'」
您無法登錄結果密碼錯誤。
任何人都可以請解釋什麼阻止我?我沒有使用準備好的語句,我也沒有使用任何過濾器類,我沒有real_escape_string?
我無法想象有多少網站魔法報價已經挽救了生命 – dynamic 2011-06-15 09:20:08
您是否將發佈的密碼與DB中的密碼進行比較?也就是說,你有類似'if($ password!= $ row ['password']){showError('密碼錯誤,你不能登錄'); }'? – binaryLV 2011-06-15 09:22:35
所以這是100%sql注入安全代碼,因爲magic_qoute啓用了簡單易用的方法來保護sql注入。不是 – 2011-06-15 09:33:41