CVE-2020-13292
📋 TL;DR
This vulnerability allows attackers to bypass email verification requirements in GitLab's OAuth flow, enabling unauthorized account access. It affects GitLab instances before versions 13.0.12, 13.1.6, and 13.2.3 where OAuth authentication is enabled.
💻 Affected Systems
- GitLab Community Edition
- GitLab Enterprise Edition
📦 What is this software?
Gitlab by Gitlab
GitLab is a complete DevOps platform providing source code management, CI/CD pipelines, security scanning, container registry, and collaboration tools used by millions of developers and thousands of enterprises worldwide. As both a cloud-hosted SaaS offering (GitLab.com) and self-managed software, G...
Learn more about Gitlab →Gitlab by Gitlab
GitLab is a complete DevOps platform providing source code management, CI/CD pipelines, security scanning, container registry, and collaboration tools used by millions of developers and thousands of enterprises worldwide. As both a cloud-hosted SaaS offering (GitLab.com) and self-managed software, G...
Learn more about Gitlab →Gitlab by Gitlab
GitLab is a complete DevOps platform providing source code management, CI/CD pipelines, security scanning, container registry, and collaboration tools used by millions of developers and thousands of enterprises worldwide. As both a cloud-hosted SaaS offering (GitLab.com) and self-managed software, G...
Learn more about Gitlab →⚠️ Risk & Real-World Impact
Worst Case
Attackers gain unauthorized access to user accounts, potentially compromising sensitive data, performing privilege escalation, or taking over administrative accounts.
Likely Case
Unauthorized access to user accounts through OAuth providers, leading to data exposure and potential lateral movement within the GitLab instance.
If Mitigated
With proper email verification enforcement, impact is limited to attempted attacks that fail due to verification requirements.
🎯 Exploit Status
Exploitation requires access to an OAuth provider account but bypasses GitLab's email verification check. Public HackerOne report details the bypass technique.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 13.0.12, 13.1.6, or 13.2.3
Vendor Advisory: https://gitlab.com/gitlab-org/cves/-/blob/master/2020/CVE-2020-13292.json
Restart Required: Yes
Instructions:
1. Backup your GitLab instance. 2. Update to GitLab 13.0.12, 13.1.6, or 13.2.3 using your package manager. 3. Restart GitLab services. 4. Verify the update completed successfully.
🔧 Temporary Workarounds
Disable OAuth Authentication
linuxTemporarily disable OAuth authentication until patching is possible
Edit /etc/gitlab/gitlab.rb and set gitlab_rails['omniauth_enabled'] = false
Run gitlab-ctl reconfigure
🧯 If You Can't Patch
- Implement network segmentation to restrict access to GitLab instance
- Enable enhanced logging and monitoring for OAuth authentication attempts
🔍 How to Verify
Check if Vulnerable:
Check GitLab version with: sudo gitlab-rake gitlab:env:info | grep 'GitLab version'
Check Version:
sudo gitlab-rake gitlab:env:info | grep 'GitLab version'
Verify Fix Applied:
Confirm version is 13.0.12, 13.1.6, 13.2.3 or later using version check command
📡 Detection & Monitoring
Log Indicators:
- Unusual OAuth authentication patterns
- Successful OAuth logins without corresponding email verification events
Network Indicators:
- Unexpected OAuth provider callbacks to GitLab instance
SIEM Query:
source="gitlab" AND (event="oauth" OR event="authentication") AND result="success" | stats count by user, source_ip
🔗 References
- https://gitlab.com/gitlab-org/cves/-/blob/master/2020/CVE-2020-13292.json
- https://gitlab.com/gitlab-org/gitlab/-/issues/228629
- https://hackerone.com/reports/922456
- https://gitlab.com/gitlab-org/cves/-/blob/master/2020/CVE-2020-13292.json
- https://gitlab.com/gitlab-org/gitlab/-/issues/228629
- https://hackerone.com/reports/922456