gitlab漏洞-未经授权的用户可以访问管道数据

admin 2022年5月16日00:06:59评论203 views字数 1000阅读3分20秒阅读模式


  • 背景

  • POC

  • 复现步骤


gitlab漏洞-未经授权的用户可以访问管道数据

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

背景

vaib25vicky小哥于2020年8月提交了这个漏洞: 根据 https://gitlab.com/gitlab-org/gitlab-foss/-/issues/32568 当前的安全模型:

如果你是schedule的所有者(开发者)或master =>,你可以读取,修改和删除, 如果你是developer =>,你只需要列出,而不是读取;

只允许所有者和master读取分配给调度的变量。它可以防止其他开发人员劫持schedule,但允许master完全控制它们。Master已经有访问私有变量的权限。

但是,即使用户不是项目的一部分,api端点也会清楚地向所有人展现。https://docs.gitlab.com/ee/api/pipeline_schedules.html#get-a-single-pipeline-schedule

POC

这是我的测试项目https://gitlab.com/thevicc/trigg与时间表管道的自定义变量,你是没有读的权限的。 但是现在,运行这个来读取变量及其值

curl --header "Private-Token: <your_access_token>" https://gitlab.com/api/v4/projects/20618145/pipeline_schedules/69918

响应如下:

gitlab漏洞-未经授权的用户可以访问管道数据

复现步骤

1.创建项目并添加带有自定义变量的进度管道

2.只有你自己或所有者可以读取变量

3.使用第二个帐户,使用api 来访问: https://docs.gitlab.com/ee/api/pipeline_schedules.html#get-a-single-pipeline-schedule

curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/29/pipeline_schedules/13"


原文始发于微信公众号(迪哥讲事):gitlab漏洞-未经授权的用户可以访问管道数据

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年5月16日00:06:59
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   gitlab漏洞-未经授权的用户可以访问管道数据http://cn-sec.com/archives/1008881.html

发表评论

匿名网友 填写信息