XSS攻击:跨站脚本攻击,具体什么意思网上资源一大堆。下面通过一个例子来说明问题。
<?php echo $_POST['name']; ?>
这是打印客户端提交值的PHP程序。客户端程序如下
<html> <body> <form action="cookie.php" method="post"> 姓名:<input type="text" name="name"/><br/> <input type="submit" value="提交"/> </form> </body> </html>
在客户中输入"张三",会在网页上打印出“张三”。这没有什么问题。但是如果在用户输入“<script type='text/javascript'>alert(document.cookie);</script>"
这样用户就能够看到cookie中的值。那么修改cookie中的值也很简单了<script type='text/javascript'>document.cookie='ab=dd'</script>。
解决办法:在打印客户提交的值之前,对提交值中的<,>,',",(,),等特殊字符进行过滤。