哪种更好的方法可以防止XSS攻击?这是我正在尝试执行的代码。
这行代码足以阻止XSS攻击吗?还是我必须用'strip_tags'解析每个元素。感谢您的任何建议。
$xss = array_map('strip_tags', $_POST);
要么
在这种方法中,我必须使用“ strip_tags”更改许多表单元素。
$f_name = strip_tags($_POST["f-name"]);
$a_id = isset($_POST['a_id']) ? (int)strip_tags($secure_POST['a_id']) : 0;
$qry = $pdo_conn->prepare('INSERT INTO TABLE1(id, f_name) VALUES (?, ?)');
$qry->execute(array($a_id, $f_name));
最佳答案
XSS表示Cross Site Scripting
,并且正在向网站注入恶意html元素。可以通过在显示时设置适当的字符集(如utf8)和htmlentities来防止这种情况。
您希望将原始数据保留在数据库中,以防万一。如果您要更改反XSS战术,则可以一次完成所有操作,因为尚未准备好数据。
我认为您的意思是反sql-injection
。准备好的语句可以自己完成(如果定义了正确的字符集,如utf8),则无需担心。
不过,您可以事先进行一些检查,例如检查$ _POST ['int']是否真的只有int值(例如)。
关于php - 哪种方法可以更好地防止XSS?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18495018/