導航:首頁 > 凈水問答 > mysqlsql過濾函數

mysqlsql過濾函數

發布時間:2024-07-03 14:17:36

『壹』 php中防止SQL注入,該如何解決

php注入,原則上是因為sql拼接引起的。

通常避免sql注入的原則是:

  1. 類型校驗,比如int類型的欄位進行強制轉換intval。

  2. 避免字元型的sql拼接,使用unhex繞過sql解析截斷的字元處理。

舉個例子:

select * from pass where username = '$a';

這種情況,當$a="1' or 1 = 1 or '2' = '2"情況時,真個sql變成了

select * from pass where username = '1' or 1 = 1 or '2' = '2' ;

那麼這個sql就會改變sql原有語義。

類型校驗大家都會,這里就不進行說明了,下面說明下使用unhex來進行字元型欄位轉碼,繞過sql語義解析截斷避免sql注入。

使用unhex(bin2hex)後,原有邏輯變成

$a = bin2hex($a);

select * from pass where username = unhex('$a') ;

由於bin2hex,$a轉化成16進制數避免了sql注入的風險。

sql執行階段,優先執行sql語義解析,而後進行unhex('$a') 的運算,所以會把"1' or 1 = 1 or '2' = '2"整個字元串當做一個欄位執行,而不會進行解析,避免了sql注入問題~

閱讀全文

與mysqlsql過濾函數相關的資料

熱點內容
整棟樓的污水主管道如何疏通 瀏覽:987
童衣樹脂四合扣 瀏覽:775
不銹鋼開水壺水垢怎麼清理 瀏覽:58
營口紅潤污水處理 瀏覽:232
超濾水燒開後有白色沉澱物是什麼 瀏覽:399
園區污水排放量如何計算 瀏覽:534
六年級科學污水和污水處理評課 瀏覽:392
廣本鋒范空氣濾芯臟了表現如何拆 瀏覽:485
政府項目立項流程污水處理 瀏覽:915
碳鋼襯氟t型過濾器 瀏覽:786
農村污水監管員職責 瀏覽:524
氣油濾芯更換多少錢 瀏覽:951
廣東液體古馬隆樹脂 瀏覽:217
電子除垢儀功能 瀏覽:375
飲水機的出水口多少錢 瀏覽:919
什麼飲水機最流行 瀏覽:998
樹脂鍍膜眼鏡 瀏覽:39
解放j61柴油濾芯換什麼的 瀏覽:356
mc9空氣凈化器怎麼選 瀏覽:447
貴州工業廢水氨氮超標如何處理 瀏覽:63