gitlab漏洞系列-未经授权的用户可以解锁项目的锁定文件

admin 2022年5月12日23:34:28评论132 views字数 814阅读2分42秒阅读模式


  • 背景

  • 复现步骤


gitlab漏洞系列-未经授权的用户可以解锁项目的锁定文件

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

背景

vaib25vicky小哥于2020年10月份提交了这个漏洞:(这哥们是gitlab和github榜单上面排名前3和前10的选手): 关于文件锁定的权限模型如下: 1.任何对存储库拥有至少Developer权限的人都可以创建> lock。

2.只有锁定文件或目录的用户才能编辑被锁定的文件。

但是如果锁定文件的用户从项目中删除了该文件呢? 从项目中移除的当前用户无法从文件页面解锁文件https://gitlab.com/<owner>/<project>/-/blob/master/<file>此时会获取一个错误信息:

gitlab漏洞系列-未经授权的用户可以解锁项目的锁定文件

是从项目中删除的用户仍然可以通过浏览项目锁定文件(ie https://gitlab.com/<owner>/<project>/path_locks)的方式来解锁文件;

gitlab漏洞系列-未经授权的用户可以解锁项目的锁定文件

复现步骤

1.创建一个公共测试项目和一个名为test_file的文件

2.邀请一个测试用户Vicky,使得其具有开发者权限

3.Vicky锁定test_file

4.作为项目的所有者,将Vicky用户从项目中移除

5.此时,Vicky不能解锁文件,因为他不是项目的成员,如果他试图通过test_file删除文件,他将得到一个错误信息。

6.Vicky跳转至项目path_locks  https://gitlab.com/<owner>/<project>/path_locks

7.通过选择“Unlock”来解除锁定

结果,被锁定的文件被未经授权的用户删除了


原文始发于微信公众号(迪哥讲事):gitlab漏洞系列-未经授权的用户可以解锁项目的锁定文件

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年5月12日23:34:28
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   gitlab漏洞系列-未经授权的用户可以解锁项目的锁定文件https://cn-sec.com/archives/998141.html

发表评论

匿名网友 填写信息