CVE-2023-6680

7.4 HIGH

📋 TL;DR

An improper certificate validation vulnerability in GitLab EE's experimental Smartcard authentication feature allows attackers to impersonate other users if they have the target's public key. This affects GitLab EE versions 11.6 through 16.6.1 when Smartcard authentication is manually enabled by administrators.

💻 Affected Systems

Products:
  • GitLab Enterprise Edition
Versions: 11.6 to 16.4.3, 16.5 to 16.5.3, 16.6 to 16.6.1
Operating Systems: All
Default Config Vulnerable: ✅ No
Notes: Only vulnerable when experimental Smartcard authentication is manually enabled by administrators. GitLab Community Edition is not affected.

📦 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 could gain unauthorized access to sensitive repositories, pipelines, and user data by impersonating any user with Smartcard authentication enabled, potentially leading to data theft, code manipulation, or privilege escalation.

🟠

Likely Case

Targeted attacks against specific users in organizations using Smartcard authentication, resulting in unauthorized access to their GitLab accounts and associated resources.

🟢

If Mitigated

No impact if Smartcard authentication is disabled (default configuration) or if proper network segmentation and access controls prevent attacker access.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ✅ No
Complexity: MEDIUM

Requires attacker to obtain target's public key and access to GitLab instance with Smartcard authentication enabled.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 16.4.4, 16.5.4, 16.6.2

Vendor Advisory: https://gitlab.com/gitlab-org/gitlab/-/issues/421607

Restart Required: Yes

Instructions:

1. Backup GitLab instance. 2. Update to patched version (16.4.4, 16.5.4, or 16.6.2). 3. Restart GitLab services. 4. Verify update with version check.

🔧 Temporary Workarounds

Disable Smartcard Authentication

all

Disable the experimental Smartcard authentication feature since it's not enabled by default.

gitlab_rails['smartcard_enabled'] = false
gitlab-ctl reconfigure

🧯 If You Can't Patch

  • Disable Smartcard authentication immediately via configuration change
  • Implement network segmentation to restrict access to GitLab instances

🔍 How to Verify

Check if Vulnerable:

Check GitLab version and Smartcard authentication status in configuration files.

Check Version:

sudo gitlab-rake gitlab:env:info | grep 'Version:'

Verify Fix Applied:

Confirm GitLab version is 16.4.4, 16.5.4, or 16.6.2 or higher.

📡 Detection & Monitoring

Log Indicators:

  • Unusual Smartcard authentication attempts
  • Multiple failed authentication attempts followed by successful login from same IP

Network Indicators:

  • Unexpected authentication traffic to GitLab Smartcard endpoints

SIEM Query:

source="gitlab" AND (event="smartcard_auth" OR auth_method="smartcard")

🔗 References

📤 Share & Export