Re: [請益] php 發生 隱碼問題

看板PHP作者 (無)時間19年前 (2006/04/30 00:44), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串10/10 (看更多)
※ 引述《qrtt1 (隱者)》之銘言: : ※ 引述《ckmarkhsu (深藍站長)》之銘言: : : php 也有此風險 : : 例如 SELECT userid FROM user WHERE username = $usernmae : : 如果傳近來的值是 '' OR 1=1 : : 那就會出錯啦:P : 用prepared statement, 大部分會escape掉 : (ex. PEAR::DB的prepare&execute或mysql本身的prepared statement) : 瘋狂地檢查值域不對就退回 : 至少要有長度與字元集合的範圍檢查 : 只要是使用者端有辦法送字串過來的地方都check : (好像有一點偏執狂xd) : function id_checker($id) : { : $id = trim($id); : if( regex_checker("/^([a-z][a-z\d]+)$/i", $id) && length_checker(6, 10, : $id) ) : return true; : return false; : } : function passwd_checker($passwd){ : $passwd = trim($passwd); : if( regex_checker("/^([a-z\d]+)$/i", $passwd) && length_checker(4, 12, : $passwd) ) : return true; : return false; : 之前看這篇沒有很懂上面意思 mysql本身的prepared statement不是比較安全嗎 不知道prepared statement實作是不是還把資料轉成sql 語法 如果是的話不過濾 當然也是有問題 書上說對 sql injection有比較安全不知道什麼意思 ? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.221.120.127
文章代碼(AID): #14KvVR1F (PHP)
討論串 (同標題文章)
文章代碼(AID): #14KvVR1F (PHP)