什么是 XSS 攻击

跨站点脚本攻击,指攻击者通过篡改网页,嵌入恶意脚本程序,在用户浏览网页时,控制用户浏览器进行恶意操作的一种攻击方式。

假设页面上有一个表单

<input  type="text" name="name" value="tom"/>

如果,用户输入的不是一个正常的字符串,而是

"/><script>alert("haha")</script><!-

此时,页面变成下面的内容,在输入框 input 的后面带上了一段脚本代码。

 

 

 

<input type="text" name="name" value="Lusifer"/><script>alert("haha")</script><!-"/>

 

这端脚本程序只是弹出一个消息框,并不会造成什么危害,攻击的威力取决于用户输入了什么样的脚本,只要稍微修改,便可使攻击极具攻击性。

如何防范 XSS 攻击

  1. 前端,服务端,同时需要字符串输入的长度限制。
  2. 前端,服务端,同时需要对转义处理。将其中的 < ,> 等特殊字符进行转义编码。
胜象大百科