CSRF总结

一、CSRF概述

  1. CSRF跨站请求伪造,2007年被列为互联网20大安全隐患之一。
  2. 什么是跨站请求伪造?CSRF或XSRF 挟制用户在当前已经登录的web应用程序上执行非本意的操作的攻击方法。攻击者盗用了你在某个网站的身份,以你的名义发送恶意请求。
  3. CSRF可以做的事情:发邮件 发信息 转账 购物 修改密码 删除文章(帖子)

二、CSRF漏洞的原理

  1. 漏洞原理:只能保证请求是用户的浏览器发出的,却不能保证使用户本人自愿发出的。
  2. 个人理解:用户在当前网站A上登录,但该网站存在危险网站B,当用户在没有退出登录的情况下浏览危险网站B,则会携带在A中的cookies,这样B网站就可以挟制用户,以该用户的身份发送恶意的消息。
  3. 利用的前提条件:2个步骤(全部满足才会受到CSRF攻击)

1) 登陆信任的网站A,并且生成cookie。

2) 在登录状态下访问,访问威胁网站B。

三、漏洞分类与利用

  1. CSRF既可以由GET请求发起也可以由POST请求发起。
  2. $_REQUEST 即可以接受GET请求,也可以接受POST请求。
  3. 服务端未严格区分GET和POST 可以使用GET来请求表单的提交地址。
  4. 服务端区分了GET和POST,只用$_POST来接收请求数据,可以在攻击页面构造好一个form表单,利用JavaScript自动提交表单。

四、挖掘和利用

1.通过 referer、token 或者 验证码 来检测用户提交。

2.尽量不要在页面的链接中暴露用户隐私信息。

3.对于用户修改删除等操作最好都使用post 操作 。

4.避免全站通用的cookie,严格设置cookie的域。

猜你喜欢

转载自www.cnblogs.com/Xenia/p/9937148.html