今天所做的努力
都是在为明天积蓄力量

CSRF攻击与Yii2

CSRF攻击: 跨站请求伪造

攻击原理:

攻击者引导受害者访问其指定的URL, 以受害者的身份名义(cookie)发送恶意请求, 执行某些能改变数据的操作.

攻击场景举例:

受害者登录了a.com, 浏览器保存a.com对应的cookie, 此时a.com认为该浏览器是可信任的.
攻击者给受害者发邮件, 里面包含图片<img src="http://a.com/转账/100" />, 受害者查看图片, 此时浏览器会携带上a.comcookie去访问转账的方法, 完成攻击.

防御:

主要使用token:

原理是服务器给客户端分发token, 客户端请求时必须带上这个token, 没带的就视为攻击.
具体实现

  1. 可以在渲染页面时, 自动给表单加上隐藏token字段, 从这个表单来的请求都会携带该token;
  2. token的分发可以通过服务端向客户端设置cookie来实现

Yii2和CSRF

基于CSRF的攻击特点, Yii2只对除GETHEADOPTIONS之外的安全请求进行验证.
日常开发中, GET请求应该是只读的, 不应该改动数据本身.

赞(0)
未经允许不得转载:流觞博客 » CSRF攻击与Yii2
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

今天所做的努力都是在为明天积蓄力量

联系我们留言建议