Gitlab OAuth注册默认口令漏洞分析(CVE-2022-1162)

admin 2022年4月7日20:17:50评论415 views字数 1776阅读5分55秒阅读模式


01

漏洞简述


3月30日,GitLab 官方修复了CE/EE版本产品中硬编码密码导致的接管用户账户的安全问题。

由于使用 OmniAuth 注册的代码逻辑中存在硬编码密码,导致账号可被攻击者直接登录。该漏洞受影响版本为 14.7.0 ~ 14.7.6,14.8.0 ~ 14.8.4,14.9.0 ~ 14.9.1,均为较高版本,且该漏洞依赖于开启 OmniAuth 注册登录(用于CAS等三方登录场景),整体对企业实际影响较小。


02

漏洞时间线


  • 3月22日,GitLab 表示到当天还未有用户帐户遭到破坏。

  • 3月30日,GitLab 修复了硬编码密码的问题。

  • 3月31日,GitLab 推出 14.9.2,14.8.5,14.7.7 三个安全版本。


03

漏洞分析


针对此次安全问题的修复 commit 将多处对Password.test_default 的调用修改为固定字符串,还删除了定义 test_default 方法的 lib/gitlab/password.rb 文件。


可见漏洞根源是 Password.test_default,这是在两个月前为了增加密码强度而引入的。从 password.rb 的注释得知其本意是为了测试构造出的强密码,但可能被误用于正常业务逻辑当中。


Gitlab OAuth注册默认口令漏洞分析(CVE-2022-1162)


通过 test_default 的引用分析可以发现,lib/gitlab/auth/o_auth/user.rb 中通过 OAuth 方式创建用户时设置了 21 位的默认密码,即“123qweQWE!@#000000000”。


Gitlab OAuth注册默认口令漏洞分析(CVE-2022-1162)


04

漏洞验证


1、拉取 gitlab-ce 受影响版本的 docker 镜像

2、注册 Github App,callback 链接设置为:

http://your-ip/users/auth/github/callback

3、开启 gitlab 中 OmniAuth相关配置

gitlab_rails['omniauth_enabled'] = truegitlab_rails['omniauth_allow_single_sign_on'] = ['github']gitlab_rails['omniauth_block_auto_created_users'] = falsegitlab_rails['omniauth_providers'] = [{"name" => "github","app_id" => "github_app_id","app_secret" => "github_app_secret","args" => { "scope" => "user:email" }}]


4、通过 OAuth github 登录(开启了 Github 和 Twitter 的 OAuth 登录如图)

Gitlab OAuth注册默认口令漏洞分析(CVE-2022-1162)


5、用户被自动注册成功后,可以通过用户名和硬编码密码直接登录

Gitlab OAuth注册默认口令漏洞分析(CVE-2022-1162)



Gitlab OAuth注册默认口令漏洞分析(CVE-2022-1162)



05

参考链接


https://gitlab.com/gitlab-org/gitlab/-/commit/a5a3a41a50e3f47f49d8ca48c6cc2bcb667f6050

https://gitlab.com/gitlab-org/gitlab/-/commit/e2fb87ec5d4e235d6b83454980cec9c049849a1c

https://docs.gitlab.com/ee/integration/omniauth.html

https://docs.gitlab.com/ee/integration/github.html


06

关于墨菲安全


墨菲安全是一家为您提供专业的软件供应链安全管理的科技公司,能力包括代码安全检测、开源组件许可证合规管理、云原生容器安全检测、软件成分分析(SCA)等,丰富的安全工具助您打造完备的软件开发安全能力(DevSecOps)。产品支持SaaS、私有化部署。公司核心团队来自百度、华为等企业,拥有超过十年的企业安全建设、安全产品研发及安全攻防经验。


产品官网:

https://murphysec.com

开源地址:

https://github.com/murphysecurity/


07

关于墨菲安全实验室

墨菲安全实验室是墨菲未来科技旗下的安全研究团队,专注于软件供应链安全相关领域的技术研究,关注的方向包括:开源软件安全、程序分析、威胁情报分析、企业安全治理等。


Gitlab OAuth注册默认口令漏洞分析(CVE-2022-1162)


Gitlab OAuth注册默认口令漏洞分析(CVE-2022-1162)



原文始发于微信公众号(墨菲安全实验室):Gitlab OAuth注册默认口令漏洞分析(CVE-2022-1162)

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年4月7日20:17:50
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Gitlab OAuth注册默认口令漏洞分析(CVE-2022-1162)http://cn-sec.com/archives/887202.html

发表评论

匿名网友 填写信息