2017-10-07 43 views
0

我明白當沒有保護(倍增「到‘’),我們可以簡單地使用SQL注入,當服務器雙打撇號

'or'1=1-- 

但我怎麼做到這一點,當服務器成倍」?從我的研究看來,我們使用的是\,但我仍然感到困惑。

我已經試過:

\'or\'1=1-- 

但我得到一個語法錯誤。我誤解了什麼?謝謝

+0

你在問什麼? – Ravi

+0

請添加您正在測試的完整代碼。 -HTH;)。 –

回答

0

如果您試圖避免SQL注入,最好的做法是避免直接向數據庫插入查詢的函數(例如mysqli_query()),而存儲過程和預準備語句可以提供一層針對SQL注入的保護。使用簡單的PHP函數上的所有插入的數據mysqli_real_escape_string()htmlspecialchars()prepared statements上W3Schools的和stored procedures上MySQLTutorial。

但是,你可以插入撇號解決您的問題(」和「)。這種方法絕不是安全的,但將允許數據插入這些字符,並且 - 誰知道 - 停止一個非常補救的黑客。