将Regex与准备好的SQL语句一起使用

时间:2016-12-29 15:21:19

标签: php regex sanitization

谷歌搜索后,我看到一些评论说php的函数filter_var($var, FILTER_STRING);不可靠或不起作用。参考:What does FILTER_SANITIZE_STRING do? 请参阅ÁlvaroGonzález的最新评论。

如果是这样,假设我使用正则表达式为我的过滤器提供我想要的用户输入数据,并使用准备 语句<始终插入数据< / strong>,是不是最安全的接受用户输入的方式?我的理由是使用正则表达式,我将始终只获得我想要的数据类型。

看看这个剧本:

    <?php

$string = "Th*()is 999 is <<>> a ~!@# sample st#$%ring.";
$res = preg_replace("/[^a-zA-Z]/", "", $string);
echo $res;

?>

输出Thisisasamplestring

攻击者怎么能绕过那个?我们正在谈论sql注入攻击等。

0 个答案:

没有答案