news 2026/9/12 9:36:07

利用领先经纪平台中的CSRF漏洞

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
利用领先经纪平台中的CSRF漏洞

利用领先经纪平台中的CSRF漏洞

几个月前,我在一个拥有超过1400万活跃用户的领先经纪平台中发现了一个漏洞。这是一个CSRF(跨站请求伪造)问题。众所周知,CSRF的影响完全取决于攻击者可以触发的操作的关键性和敏感性

当时,我正在随机观看一个YouTube视频,视频中有人演示了如何使用该经纪商的API来构建一个用于算法交易的自动买卖订单机器人。观看过程中,我对身份验证流程,特别是第三方应用程序如何连接到经纪商的平台并获得代表用户进行交易的权限,产生了浓厚的兴趣。就在这时,情况开始显得可疑。

是时候深入研究并启动“猎犬模式”了:

为了理解背景:这个经纪应用程序允许用户连接他们自己定制的应用程序或其他第三方应用程序。因此,这些应用程序可以代表用户下达交易订单。

预期流程:

表面上看,这个身份验证流程很简单,但一旦你从安全角度审视它,情况就不同了。该网站在几乎所有经过身份验证的POST请求上都实现了Anti-CSRF令牌和其他控制措施——但这些保护措施在第三方应用身份验证流程中完全不存在

以下是该流程的工作原理:

  1. 第三方应用程序向经纪商的后端API发送一个包含其application_id的初始请求。
  2. 经纪商的后端生成一个session_id并将其返回给客户端,同时返回一个“允许/拒绝”的同意页面。
  3. 当用户点击允许时,客户端会向后端发送另一个请求,其中包含:
    • session_id
    • 指示允许/拒绝的参数
    • 用户的cookie
  4. 这个请求缺失了CSRF验证

目标:通过利用这个缺失的CSRF验证,将我自己的恶意第三方应用程序连接到受害者的账户。

为了测试,我使用从我自己的攻击者账户生成的session_id创建了一个简单的CSRF表单。我将这个表单发送到我的第二个账户(扮演受害者)并提交。

结果呢?
我的恶意第三方应用程序在未经受害者任何同意的情况下,自动连接到了受害者的账户。
这证实了攻击者可以简单地发送一个CSRF链接或自动提交表单,如果受害者点击了它,攻击者的应用程序将获得完全授权,可以进行交易和其他敏感操作。

我向他们报告了这个问题,得到的严重性评级是:
他们的回应:接受了问题,但将其标记为低严重性,因为生成的session_id5分钟后过期

因此,攻击需要:

  • 生成一个新的session_id
  • 将其嵌入CSRF表单
  • 发送给受害者
  • 并希望受害者在5分钟内点击

那么,我们能否让漏洞利用更快、更容易、更具可扩展性

目标更新:让漏洞利用更快、更容易、完全可扩展

如果受害者打开一个攻击者控制的网站,攻击者的第三方应用程序应该自动连接到受害者的账户——无需点击、无需手动交互,并且它应该对任何访问用户都有效,而不仅仅是一个。

要实现这一点,我们需要两样东西:

  1. 一个有效的session_id
  2. 一种自动将其嵌入CSRF流程的方法

我的第一个想法很简单:
直接代表受害者发送请求以生成一个新的session_id,获取它,然后自动提交CSRF流程。
但这行不通——因为向经纪商后端发送的请求被浏览器的同源策略(SOP)阻止了。

因此,我创建了一个概念验证(PoC),它:

  1. 启动一个恶意服务器,监听路由 (/)。
  2. 当有人访问该路由时,服务器从服务器端(而不是受害者端)向经纪平台的合法登录端点发出后端请求,以获取生成的session_id
  3. 它捕获登录重定向响应,专门寻找会话ID
  4. 一旦找到会话ID,服务器会自动构建一个隐藏的HTML表单,伪装成交易平台的“授权”步骤。
  5. 受害者的浏览器被欺骗,从而:
    • 加载此表单
    • 使用 JavaScript自动提交

这导致了一次跨站请求伪造(CSRF)攻击,该攻击:

  • 迫使受害者的浏览器在用户不知情或未同意的情况下,授权一个攻击者控制的应用程序。

通过这种设置,任何访问攻击者控制网站的新用户都会被自动利用,攻击者的第三方应用程序将在不需要任何交互的情况下,持续累积新的受害者账户。每一次页面加载都意味着又一个交易账户被攻陷。

影响

一旦恶意应用程序获得授权,攻击者可以:

  • 下达买卖订单,
  • 滥用用户资金,
  • 并可能引发大规模的财务损失。

例如,攻击者可以强制所有被攻陷的账户购买同一只股票,制造人为需求并操纵市场。如果有足够多的受感染账户,这将变得极其危险。

最终,在提供了完整可用的PoC后,严重性等级得到了提升。

他们如何修复了该漏洞

为了修复这个问题,经纪商增加了一个额外的安全检查:

  • 当后端生成session_id时,会返回一个唯一的令牌
  • 该唯一令牌专门映射到发起身份验证流程的用户
  • 在“允许”请求期间,此令牌必须匹配。

由于这种绑定关系,攻击者无法再预先生成一个session_id并在CSRF攻击中重用它。攻击者无法获知特定于受害者的令牌,因此恶意应用程序的自动链接不再可能实现。
CSD0tFqvECLokhw9aBeRqtXyRn0lX+xpHdlLhI/WOecAJbuabhGDzexX6HlErYgcV9KrBOYn6zUXLDaBwk3e9PQ04eMbh3+JhiGsfpEC8GTdAzXD1c1nw3M953/SmUSKPHMcswbLTw6cmyCnMXDIQA==
更多精彩内容 请关注我的个人公众号 公众号(办公AI智能小助手)
对网络安全、黑客技术感兴趣的朋友可以关注我的安全公众号(网络安全技术点滴分享)

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/10 4:15:27

音频编辑神器,免费好用

今天给大家推荐一款音频编辑工具,免费好用,有需要的小伙伴及时下载收藏! 软件介绍 今天介绍的这款软件ocenaudio是由巴西团队开发的一款音频编辑工具,软件支持多端,支持Windows、Mac和Linux。 Windows有安装版也有绿色…

作者头像 李华
网站建设 2026/9/10 13:48:47

病理IHC抗体原料:从基础筛选到精准诊断的核心引擎

一、什么是IHC抗体原料?为何它在免疫组化技术中具有不可替代的地位?免疫组织化学(Immunohistochemistry, IHC)是病理诊断和生物医学研究中一项 cornerstone 技术,它利用抗原与抗体特异性结合的原理,通过显色…

作者头像 李华
网站建设 2026/9/9 9:35:55

百考通:AI赋能学术创作,开启论文写作新范式

在学术研究与论文写作的漫漫长路上,你是否也曾陷入灵感枯竭的困境?面对繁杂的文献不知如何梳理?为重复率过高而焦虑不已?如今,百考通(https://www.baikaotongai.com)以“安全、专业、权威”为核…

作者头像 李华
网站建设 2026/9/3 15:37:43

HyperWorks HPC并行许可证计费模式优化

HyperWorks HPC并行许可证计费模式优化:企业客户的真正需求与创新路径对于企业客户选择一款能够满足高性能计算需求的软件工具,不仅关乎技术性能,更直接影响到成本控制与业务扩展。以HyperWorks HPC并行为例,当前它的许可证计费模…

作者头像 李华
网站建设 2026/9/8 0:26:13

SQLite3学习笔记6:UPDATE(改)+ DELETE(删)数据(C API)

核心知识点 实现方式:UPDATE 和 DELETE 依然用sqlite3_exec执行,语法和命令行完全一致,无需回调函数(因为不返回查询结果);核心规范: 必须在 SQL 语句中加 WHERE 条件,避免全表修改…

作者头像 李华
网站建设 2026/9/9 9:35:54

HoRain云--IntelliJ IDEA搭建PHP环境全攻略

🎬 HoRain 云小助手:个人主页 ⛺️生活的理想,就是为了理想的生活! ⛳️ 推荐 前些天发现了一个超棒的服务器购买网站,性价比超高,大内存超划算!忍不住分享一下给大家。点击跳转到网站。 目录 ⛳️ 推荐 …

作者头像 李华