gitlab漏洞系列-任何用户在授权后都可以检索OAuth应用程序客户端敏感信息

admin 2025年2月15日22:29:23评论5 views字数 1238阅读4分7秒阅读模式
  • 背景

  • 复现步骤

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

背景

stefansundin于2020年提交了这个漏洞:

本报告中使用Gitter作为示例,在GitLab上的用户授权OAuth应用程序之后,用户就能够检索完整的应用程序数据库记录。这包括存储OAuth应用程序的所有数据库表中的列。在GitLab.com的例子中,这些数据:id、名称、uid、secret、redirect_uri、scopes、created_at、updated_at、owner_id、owner_type、trusted、confidential。

Doorkeeper提供了一个页面,让你看到你授权了哪些应用程序,它还提供了取消对这些应用程序访问的功能。

可以在/oauth/authorized_applications中找到。在GitLab上,这个列表可以在/oauth/applications上找到,但是/oauth/authorized_applications的路由仍然存在(但是在GitLab上返回一个5xx错误)。gem还为API客户端提供了路由(例如/oauth/authorized_applications.json),它不过滤应用程序返回的字段,这意味着它返回所有你授权的应用程序的属性。

复现步骤

1.拥有一个GitLab用户。

2.授权OAuth应用程序,例如Gitter (https://gitter.im/)。

3.打开https://gitlab.com/oauth/authorized_applications.json

4.见以下(敏感部分泄露):

[{"id":113598,"name":"Gitter.im","uid":"e2803ae4f09cebdcff56813a0bfbb1a4f0b187355b509eb6d5367a07ad523762","secret":"e08cdf64xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx","redirect_uri":"https://login.gitter.im/login/gitlab/callback","scopes":["api","read_user"],"created_at":"2018-03-27T21:43:32.100Z","updated_at":"2019-09-25T06:37:25.988Z","owner_id":1577466,"owner_type":"User","trusted":false,"confidential":false}] 

这个漏洞最后官方给了3000$

原文始发于微信公众号(迪哥讲事):gitlab漏洞系列-任何用户在授权后都可以检索OAuth应用程序客户端敏感信息

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年2月15日22:29:23
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   gitlab漏洞系列-任何用户在授权后都可以检索OAuth应用程序客户端敏感信息https://cn-sec.com/archives/1033676.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息