XSS的过滤

Posted 区块链小哥

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了XSS的过滤相关的知识,希望对你有一定的参考价值。

1、输入过滤,在接收到用户的输入数据之后立即对其进行处理,目前最常用的方法包括黑名单过滤和白名单过滤两种。

黑名单过滤例子

<script></script>替换为空

<?php

$name = $_GET[name];

$name = preg_replace(/<script>/i,””,$name);

$name = preg_replace(/<\/script>/i,””,$name);

echo $name;

?>

 

如果有alert字符串就报错退出

<?php

if  (preg_match(/alert/i,$_GET[name])){

die(error);

}

?>

白名单过滤例子

<?php

$name = $_POST[name];

If(preg_match(/^[0-9a-zA-z]{3,12}$/,$name))

die(error);

?>

2、对输出内容进行编码或转义。

3、使用相应对的编解码函数

<html>

Hello

<script>

var $a = <?php echo htmlentities($_GET[name],ENT_QUOTES); ?>;

</script>

</html>


以上是关于XSS的过滤的主要内容,如果未能解决你的问题,请参考以下文章

SpringMVC过滤字符防御xss攻击

XSS过滤JAVA过滤器filter 防止常见SQL注入

XSS安全性过滤

XSS的过滤

xss过滤函数

特殊字符的过滤,防止xss攻击