基础安全:CSRF攻击原理与防范

这篇具有很好参考价值的文章主要介绍了基础安全:CSRF攻击原理与防范。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

CSRF的概念

CSRFCross-Site Request Forgery)中文名为“跨站请求伪造”。这是一种常见的网络攻击手段,攻击者通过构造恶意请求,诱骗已登录的合法用户在不知情的情况下执行非本意的操作。这种攻击方式利用了Web应用程序中用户身份验证的漏洞,即浏览器在用户完成登录后会自动携带相关的认证信息(如Cookie、Authorization header等)发送给服务器,使得服务器误以为请求来自已授权的用户。

这种攻击手段其实很常见,因此有必要了解他得到原理以及相对的防范措施。

基础安全:CSRF攻击原理与防范,后端,安全,csrf,网络,后端

基于上面的概念描述,CSRF攻击带来的影响可以总结为下面三点:

  • 在成功的 CSRF 攻击中,攻击者会导致受害用户无意中执行操作。例如,这可能是更改其帐户上的电子邮件地址、更改密码或进行资金转账。
  • 根据操作的性质,攻击者可能能够完全控制用户的帐户。
  • 如果受感染的用户在应用程序中具有特权角色,则攻击者可能能够完全控制应用程序的所有数据和功能。

CSRF距离我们并不遥远,以下是一些著名的 CSRF 攻击的示例。

  • TikTok ——2020 年,字节跳动收到了有关漏洞的报告,该漏洞允许攻击者向 Tiktok 用户发送包含恶意软件的消息。部署恶意软件后,攻击者可以执行 CSRF 或跨站脚本 (XSS) 攻击,导致其他用户帐户代表他们向 TikTok 应用程序提交请求。 TikTok 在三周内修复了该漏洞。
  • McAfee — 2014 年,Check Point 研究人员在企业安全产品 McAfee Network Security Manager 的用户管理模块中发现了 CSRF 漏洞。该攻击允许恶意用户修改其他用户帐户。该漏洞已在8.1.7.3版本中修复。
  • YouTube - 2008 年,普林斯顿大学的研究人员在 YouTube 上发现了一个 CSRF 漏洞,该漏洞允许攻击者代表任何用户执行几乎所有操作,包括将视频添加到收藏夹、修改朋友/家人列表、向用户的联系人发送消息以及标记不当行为内容。该漏洞立即得到修复。
  • ING Direct — 2008 年,一家荷兰跨国银行集团的银行网站 ING Direct 存在 CSRF 漏洞,攻击者可以利用该漏洞从用户帐户中转移资金,即使用户已通过 SSL 进行身份验证。该网站没有任何针对 CSRF 攻击的保护,并且转移资金的过程很容易被攻击者看到和复制。

CSRF是如何工作的

要执行CSRF攻击,需要具备一些基础的必要条件:

  1. 用户已认证的会话:攻击者需要利用目标网站上已经认证的用户会话。这意味着用户在目标网站上已经登录并且会话仍然有效。
  2. 目标网站缺乏CSRF保护:目标网站没有足够的CSRF防护措施,比如缺乏CSRF令牌(Token)或其他验证机制来确保请求的合法性。
  3. 攻击者能够构造恶意请求:攻击者需要能够构造包含恶意操作的请求,并将其嵌入到诱导用户访问的页面或链接中。
  4. 用户受到诱导:攻击者需要诱导用户点击包含恶意请求的链接或访问包含恶意代码的页面,从而触发恶意请求的发送。
  5. 用户浏览器执行请求:用户的浏览器需要执行恶意请求,发送请求到目标网站,而目标网站会误以为这是用户自己发起的合法请求。

基础安全:CSRF攻击原理与防范,后端,安全,csrf,网络,后端

以经典的银行站点的CSRF为例:

  1. 攻击者物色要下手的银行站点,比如www.banking.com

    这些网站都有一些主要的特征,比如包含敏感信息的请求通过get进行明文传输,而且容易推测出一定的规律;

基础安全:CSRF攻击原理与防范,后端,安全,csrf,网络,后端

  1. 这是一个阳光明媚的好日子,万里无云,心情愉悦,用户哼着小曲儿兴高采烈的通过下面的请求地址登录了自己的账户并给小老婆转账520000,成功登录后在浏览器上留下了Cookie记录

    banking.com/transfer?amount=520000&toAccount=attackerAccountId
    

    基础安全:CSRF攻击原理与防范,后端,安全,csrf,网络,后端

    1. 攻击者针对性的准备一些含有恶意链接的地址并加以美化封装,再通过社会工程学,利用用户的无知贪婪或者好奇心理诱导他们点击这个含有恶意URL的东西,比如将上面的转账地址添加到一张看似平平无奇的图片中。

      <img src="bank.com/transfer?amount=100&to=AttackerAccount" />

      基础安全:CSRF攻击原理与防范,后端,安全,csrf,网络,后端

      在这种情况下,攻击者创建了一个网站,该网站在页面加载时自动提交表单。用户只需访问该网站即可发送此请求。

    2. 攻击者可以利用用户的cookies和session向银行的服务器发出合法的请求。资金通常在用户不知情的情况下在表演了一次凭空消失术,与此同时,也触发了另外一个故事…基础安全:CSRF攻击原理与防范,后端,安全,csrf,网络,后端

CSRF 防范

  1. CSRF Token(令牌):在每个请求中包含一个随机生成的 CSRF 令牌,并在服务器端验证该令牌的有效性。攻击者无法获取有效的令牌,因此无法成功发起 CSRF 攻击。
  2. SameSite Cookie 属性:设置 Cookie 的 SameSite 属性为Strict或Lax,可以阻止跨站点请求伪造。Strict 模式完全禁止第三方 Cookie,而 Lax 模式限制第三方 Cookie 仅在 GET 请求时发送。
  3. 验证 Referer 头部:在服务器端验证请求的 Referer 头部,确保请求来源于合法的网站。然而,Referer 头部并不总是可靠,因此不应完全依赖于它来防范 CSRF 攻击。
  4. 双重提交 Cookie(Double Submit Cookie):将 CSRF 令牌存储在 Cookie 和表单字段中,并在服务器端比较这两个值。攻击者无法在跨域请求中访问到 Cookie 中的内容,因此无法成功伪造请求。
  5. 使用安全的 HTTP 头部:设置安全的 HTTP 头部,如X-Content-Type-Options、X-Frame-Options、Content-Security-Policy 等,可以增强网站的安全性,降低 CSRF 攻击的风险。
  6. 限制敏感操作:对于涉及敏感操作的请求(如修改密码、转账等),应该要求用户进行额外的身份验证,例如输入密码、验证码等。
  7. 定期审查和更新代码:定期审查代码,确保实施了最佳的安全实践,并及时更新依赖库以修复已知的安全漏洞。

参考&引用文章来源地址https://www.toymoban.com/news/detail-860608.html

  • https://vercel.com/guides/understanding-csrf-attacks
  • https://portswigger.net/web-security/csrf

到了这里,关于基础安全:CSRF攻击原理与防范的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【 安全】什么是CSRF攻击?如何避免?开发的时候怎么预防?

    CSRF定义: 跨站请求伪造(英语:Cross-site request forgery)是一种对网站的恶意利用,也被称为 one-click attack 或者 session riding,通常缩写为 CSRF 或者 XSRF, 是一种挟制用户在当前已登录的Web应用程序上执行非本意的操作的攻击方法。 CSRF跨站点请求伪造(Cross—Site Request Forgery) 跟

    2024年03月14日
    浏览(80)
  • Web系统常见安全漏洞介绍及解决方案-CSRF攻击

    🐳博客主页:拒绝冗余 – 生命不息,折腾不止 🌐订阅专栏:『Web安全』 📰如觉得博主文章写的不错或对你有所帮助的话,还望大家多多支持呀! 👉关注✨、点赞👍、收藏📂、评论。 CSRF跨站请求伪造,全称Cross-site request forgery,是指利用受害者尚未失效的身份认证信息

    2024年01月22日
    浏览(37)
  • 使用WAF防御网络上的隐蔽威胁之CSRF攻击

    在网络安全领域,除了常见的XSS(跨站脚本)攻击外,CSRF(跨站请求伪造)攻击也是一种常见且危险的威胁。这种攻击利用用户已经验证的身份在没有用户知情的情况下,执行非授权的操作。了解CSRF攻击的机制及其防御方法对于保障网络安全至关重要。 什么是CSRF攻击 定义

    2024年01月16日
    浏览(29)
  • 彻底理解前端安全面试题(2)—— CSRF 攻击,跨站请求伪造攻击详解,建议收藏(含源码)

    前端关于网络安全看似高深莫测,其实来来回回就那么点东西,我总结一下就是 3 + 1  = 4,3个用字母描述的【分别是 XSS、CSRF、CORS】 + 一个中间人攻击。当然 CORS 同源策略是为了防止攻击的安全策略,其他的都是网络攻击。除了这 4 个前端相关的面试题,其他的都是一些不常

    2024年02月03日
    浏览(29)
  • 【网络安全】CSRF详解

    我们知道了同源策略可以隔离各个站点之间的 DOM 交互、页面数据和网络通信,虽然严格的同源策略会带来更多的安全,但是也束缚了 Web。 这就需要在安全和自由之间找到一个平衡点,所以我们默认页面中可以引用任意第三方资源 ,然后又引入 CSP 策略来加以限制;默认 X

    2024年02月08日
    浏览(34)
  • 【网络安全】CSRF漏洞详细解读

    2023年04月15日
    浏览(33)
  • 万字讲解9种Web应用攻击与防护安全。XSS、CSRF、SQL注入等是如何实现的

    OWASP(开放Web软体安全项目- Open Web Application Security Project) 是一个开源的、非盈利的全球性安全组织,致力于应用软件的安全研究。使命 是使应用软件更加安全,使企业和组织能够对应用安全风险做出更清晰的决策。 http://www.owasp.org.cn/ OWASP在业界影响力: OWASP被视为web应用

    2023年04月15日
    浏览(45)
  • 网络安全进阶学习第三课——CSRF跨站请求伪造

    会话跟踪是Web程序中常用的技术,用来跟踪用户的整个会话。常用的会话跟踪技术是Cookie与Session。 Cookie是一个保存在客户机中的简单的文本文件,当我们使用自己的电脑,通过浏览器进行访问网页的时候,服务器就会生成一个证书然后返回给浏览器并写入我们的本地电脑,这

    2024年02月12日
    浏览(38)
  • xss csrf 攻击

    介绍 xss csrf 攻击 XSS: XSS 是指跨站脚本攻击。攻击者利用站点的漏洞,在表单提交时,在表单内容中加入一些恶意脚本,当其他正常用户浏览页面,而页面中刚好出现攻击者的恶意脚本时,脚本被执行,从而使得页面遭到破坏,或者用户信息被窃取。 要防范 XSS 攻击,需要在

    2024年02月14日
    浏览(36)
  • 模拟CSRF攻击

    今天给大家表演一个拙劣的CSRF攻击。 我会编写两个应用:一个是正经应用,一个是钓鱼的应用。然后让后者攻击前者,让它打钱! 1.1 先聊聊Cookie 参考:常用的本地存储——cookie篇 Cookie在八股文里面好像已经讲烂了, 就是一个服务端给客户端返回的【键值对】,这个键值对

    2024年02月12日
    浏览(29)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包