【发布时间】:2013-03-29 11:36:57
【问题描述】:
我正在测试使用stripslashes() 的安全性
我尝试了以下方法:
$str = chr(0xbf) . chr(0x27);
var_dump(stripslashes($str)); // string(2) " �' "
然后我把它改成这样:
$str = $_POST['input']; // %bf%27;
var_dump(stripslashes($str)); // string(3) " �'' "
然后我用 curl 发送input 数据:
curl_setopt($ch, CURLOPT_POSTFIELDS, 'input=' . chr(0xbf) . chr(0x27));
但结果又是:string(3) " �'' "
当从另一台服务器接收数据时,是否可以像第一个示例中那样获得结果?使用stripslashes() 是否安全?
【问题讨论】:
-
考虑阅读以下链接中给出的示例:php.net/manual/en/function.stripslashes.php
-
第二个单引号从何而来?
-
如果您正在考虑清理代码的方法phptherightway.com/#security,请阅读有关数据过滤的“PHP:正确方法”
标签: php stripslashes