CSRF简介与应用

CSRF

01 CSRF介绍

  1. 定义
    CSRF(跨站请求伪造)使已经登陆浏览器的用户执行非本意的操作,如诱使受害者点击发送请求的链接,由于浏览器通常会保存用户的信息,请求就会在用户未知的情况下被执行

  2. 实际场景

    例如在转账的场景中:
    正常链接:www.cheek.com/pay.php?target=xx&money=100
    用户正常转账操作需要目标与金额两个参数,攻击者可以根据这两个参数伪造链接诱使点击
    恶意链接:www.cheek.com/pay.php?target=hacker&money=100000
    用户就将在不知情的情况下将钱转给攻击者

  1. 必要条件

    1. 用户已经登陆了系统,并且浏览器自动记录了用户的凭证
    2. 用户点击了伪造的URL

02 CSRF的攻防

  1. 攻击方式
    1. 攻击者往往通过社会工程学的方法发送恶意链接诱使受害者点击,或者将链接伪装成诱惑性的标题
    2. 将链接放在a标签中,诱使用户点击跳转
    3. 将链接放在img标签中,加载图片时就完成了请求
    4. 与XSS结合进行攻击
  2. 防御方式
    1. 无效的防御
      • 秘密cookie
      • 仅接受POST请求
      • 多步交易
      • URL重写
      • HTTPS
    2. 有效的防御
      • 验证Referer字段
      • 添加token
      • 敏感操作二次验证
      • 用户提高安全意识

你可能感兴趣的:(CSRF简介与应用)