CVE-2020-13292

9.6 CRITICAL

📋 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

Products:
  • GitLab Community Edition
  • GitLab Enterprise Edition
Versions: All versions before 13.0.12, 13.1.6, and 13.2.3
Operating Systems: All platforms running GitLab
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects instances with OAuth authentication enabled. Self-managed GitLab instances are affected; GitLab.com was patched before disclosure.

📦 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.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ⚠️ Yes
Weaponized: LIKELY
Unauthenticated Exploit: ✅ No
Complexity: LOW

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

linux

Temporarily 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

📤 Share & Export