簡述:CSRF 攻击是什么?

2018-03-06  本文已影响0人  Guohanzhong

前言:

CSRF (Cross Site Request Forgery),中文称:跨站请求攻击。攻击者通过建构网站后台某个功能接口的请求地址,设法让用户点击连结或者脚本的方式让请求地址自动加载。

CSRF 攻击过程

攻击者怎样攻击?

用户登录原网站,浏览器会记录Cookies ,如果用户未登出或Cookies并未过期(用户关闭浏览器不代表网站已登出或Cookies会立即过期)。在这期间,如果用户造访其他危险网站,点击了攻击者的连结,便会向原网站发出某个功能请求,原网站的伺服器接收后会被误会以为是用户合法操作。

为何会有漏洞?

一般是网站采用 GET 形式去发出请求,让攻击者轻易知道网站向后台的请求方式。令攻击者按照其方式,建构网站后台某个功能接口的请求地址。在你点击击攻击者的连结前,由于你已登录过原网站。而攻击者的连结会向原网站发出请求,你的浏览器会带上你原网站的 Cookie 发出 GET 形式的请求去执行请求,原网站的伺服器接收后会被误会以为是用户合法操作。

即使改用 POST 形式的接口也不是绝对安全,因为攻击者可以利用脚本去获得 POST 形式提交的参数页面。

如何预防?

在于用户,应该:

在于开发人员,应该:

  <input type="hidden" name="csrftoken" value="tergf1dgkjeirg"/>

按提交之后,伺服器会核对表单中的csrftoken与自己 session 里面存的是否一致,若是则代表由使用者本人发出的请求。

总结:

本文是小弟学习前端写有关于简述:CSRF 攻击是什么?,请大家多多指教。如有任何意见及交流,可在下方留言,谢谢!

上一篇 下一篇

猜你喜欢

热点阅读