2013年11月8日 星期五

PHP - 資料庫字串轉譯 (SQL Injection)

有些程式會用下面這行做轉譯
$val=htmlspecialchars(addslashes(trim($val)));
但是下面這篇英文討論簡單的說明這個做法不好
htmlspecialchars + addslashes, makes any sense?
應該使用可以綁定變數內容(bind parameters)的 PDO。
這篇 Examples of SQL Injections through addslashes()? 更提供了一個實例,就算加了 addslashes 跟 htmlspecialchars,還是有可能被駭客搞破壞。

2014-04-15
今天又看到一篇文章 What's the Right Way to Prevent SQL Injection in PHP Scripts?

沒有留言:

張貼留言