多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
[链接](https://fecommunity.github.io/front-end-interview/%E5%89%8D%E7%AB%AF%E7%9F%A5%E8%AF%86%E4%BD%93%E7%B3%BB/Web%E5%AE%89%E5%85%A8/2.CSRF%E6%94%BB%E5%87%BB.html) --------------------------------------------------------------------------------------------------------------------------------- <div id="div1"><h3> <font color=red > CSRF:跨站点请求伪造(Cross-Site Request Forgeries) </font><h3></div> - XSS是获取信息,不需要提前知道其他用户页面的代码和数据包。 - - CSRF是代替用户完成指定的动作,需要知道其他用户页面的代码和数据包。 攻击者诱导受害者进⼊第三⽅⽹站,在第三⽅⽹站中,向被攻击⽹ 站发送跨站请求。利⽤受害者在被攻击⽹站已经获取的注册凭证,绕过后台的⽤户验证,达到冒充⽤户对被攻击的⽹站 执⾏某项操作的⽬的。 要完成一次CSRF攻击: 登录受信任网站A,并在本地生成Cookie;在不登出A的情况下,访问危险网站B ⼀个典型的CSRF攻击有着如下的流程: - 受害者登录 a.com ,并保留了登录凭证(Cookie) - 攻击者引诱受害者访问了 b.com b.com 向 a.com 发送了⼀个请求: a.com/act=xx 浏览器会默认携带a.com的Cookie - a.com接收到请求后,对请求进⾏验证,并确认是受害者的凭证,误以为是受害者⾃⼰发送的请求 - a.com以受害者的名义执⾏了act=xx - 攻击完成,攻击者在受害者不知情的情况下,冒充受害者,让a.com执⾏了⾃⼰定义的操作 --------------------------------------------------------------------------------------------------------------------------------- <div id="div1"><h3> <font color=red > CSRF的防御 </font><h3></div> 服务端的CSRF方式方法很多样,但总的思想都是一致的,就是在客户端页面增加伪随机数 通过验证码的方法 CSRF通常从第三⽅⽹站发起,被攻击的⽹站⽆法防⽌攻击发⽣,只能通过增强⾃⼰⽹站针对CSRF的防护能⼒来提升 安全性。 CSRF的两个特点: CSRF(通常)发⽣在第三⽅域名。 CSRF攻击者不能获取到Cookie等信息,只是使⽤。 防护策略如下: 阻⽌不明外域的访问: 1,同源检测 ; 2,Samesite Cookie 提交时要求附加本域才能获取的信息:1,CSRF Token; 2,双重Cookie验证