前端防御|青训营笔记

82 阅读2分钟

这是我参与「第五届青训营 」笔记创作活动的第3天

上篇讲述了前端攻击方式,本篇讲述前端防御方式。

前端常见的攻击方式有XSS攻击、CSRF攻击、Injection攻击、Dos攻击,现在我们主要讲一下关于这些攻击的防御方式。

对于XSS:XSS攻击有两大主要因素:一个是攻击者提交恶意代码,一个是浏览器执行恶意代码,为了防止这些情况,我们首先要过滤掉用户提交的恶意代码,但是因为用户输入的信息经过escapeHTML()客户端显示的内容就会变成乱码,所以此时我们的过滤恶意代码的方法难以执行,根本不止用户提交的是有用的信息还是恶意代码,所以我们要通过防止浏览器执行恶意代码来防范XSS,即防止HTML中出现注入,防止JavaScript执行恶意代码。当然,现在的主流框架默认防御XSS攻击,这就给我们带来了很大的便利。

对于CSRF:CSRF跨站请求伪造,所以我们要特别关注请求头部的信息例如:if伪造请求,这种一般是异常来源;then限制请求来源、限制伪造请求;还有来自origin,在同源请求中,GET+HEAD不发送。我们该如何来判断请求来自于合法来源呢,首先对于所有请求都是现有页面,后有请求。对于if请求,请求来自合法页面,对于then请求,服务器接受过页面请求,对于then请求,服务器可以标识。

现在有很多的攻击方式让我们防不胜防,可以直接在输入信息的时候输入恶意代码,这种我们是防范,防止浏览器和js运行这些恶意代码,对于跨站请求伪造这个攻击方式就很多源,同源请求,用自己的登录信息发送访问请求然后进行攻击,这就需要我们经过设限筛选再进行判断。防御工作是一件不可小看的大事情,防御做好了才能保证我们每个人的上网安全。