我是PHP安全新手,嘗試實施PDO以外的解決方案。
我在這裏閱讀了幾篇文章,並在google上搜索了很多文章。
我試圖寫我自己的代碼來保護用戶輸入。
如果我在這裏留下任何東西或者我在這裏使用了任何不必要的東西,我會請求這裏的專家請看看並指導我。
另外我錯過了CSRF預防。除了隨機令牌生成之外還有其他什麼嗎?這可以用任何函數來實現嗎?保護來自各種攻擊的PHP數據
extract($_POST);
$stuid = filter_input(INPUT_GET, 'stud_id', FILTER_SANITIZE_SPECIAL_CHARS); //php filter extension
$stuid = trim($stuid);
$stuid = strip_tags($stuid);
$stuid = iconv('UTF-8', 'UTF-8//IGNORE', $stuid); //remove invalid characters.
$stuid = htmlspecialchars($stuid, ENT_COMPAT, 'UTF-8'); // manual escaping
$stuid = mysql_real_escape_string($stuid);
$stuid = htmlspecialchars($stuid, ENT_COMPAT, 'UTF-8'); //Cross site scripting (XSS)
$email = filter_input(INPUT_POST, $email, FILTER_SANITIZE_EMAIL);
$pass=md5($pass);
在此先感謝。
在我的用戶已經提交了一塊數據的存儲數據庫的情況下
「除了PDO」...我認爲你的意思除了mysqli以外。你真的不應該推出自己的安全。有些事情會出錯。 – Gerrit0
這段代碼實際上並不*做任何事情,所以你要保護什麼?沒有任何一行「安全代碼」可以使應用程序安全。你必須知道應用程序在做什麼以及它可以被利用的方式。此應用程序不會執行任何操作。 – David
是'$ pass = md5($ pass);'散列密碼?如果是這樣,請使用'password_hash()'代替 - http://php.net/manual/en/function.password-hash.php – Steve