什么是CRSF
构建一个地址,比如说是删除某个博客网站博客的链接,然后诱使已经登录过该网站的用户点击恶意链接,可能会导致用户通过自己的手将曾经发布在该网站的博客在不知情的情况下删除了。这种构建恶意链接,假借受害者的手造成损失的攻击方式就叫CSRF-跨站点请求伪造。
浏览器Cookie策略
cookie分类
cookie根据有无设置过期时间分为两种,没有设置过期时间的为Session Cookie(会话cookie),firefoox有标注哪些cookie是会话cookie,这种cookie保存在内存空间中,在浏览器进程的生命周期中都有效,但是一关闭浏览器就被抹除。另外一种设置过期时间的叫做third-party Cookie,也称之为本地cookie,保存在本地,在过期时间内都可以使用。
CSRF实现原理
一般用户的操作都需要登录以后才能进行,csrf就是利用用户的登录cookie,让用户在自己的恶意网站中向博客网站发送了删除请求。比如让用户点击链接黑客的网站,黑客在网站中加上一个图片链接,该链接实际是向博客网站发送一个删除请求:
恶意网站
<html>
<p>这是黑客诱导客户访问的恶意网站地址</p>
<img src = "http://csdn.com?delete=10">
</html>
要实现这个还需要用到用户登录csdn后的cookie,之前谈同源策略的时候说过,img、iframe之类的标签不受同源策略的影响