The SentinelOne Annual Threat Report - A Defenders Guide from the FrontlinesThe SentinelOne Annual Threat ReportGet the Report
Experiencing a Breach?Blog
Get StartedContact Us
SentinelOne
  • Platform
    Platform Overview
    • Singularity Platform
      Welcome to Integrated Enterprise Security
    • AI for Security
      Leading the Way in AI-Powered Security Solutions
    • Securing AI
      Accelerate AI Adoption with Secure AI Tools, Apps, and Agents.
    • How It Works
      The Singularity XDR Difference
    • Singularity Marketplace
      One-Click Integrations to Unlock the Power of XDR
    • Pricing & Packaging
      Comparisons and Guidance at a Glance
    Data & AI
    • Purple AI
      Accelerate SecOps with Generative AI
    • Singularity Hyperautomation
      Easily Automate Security Processes
    • AI-SIEM
      The AI SIEM for the Autonomous SOC
    • Data Pipelines
      Security Data Pipeline for AI SIEM and Data Optimization
    • Singularity Data Lake
      AI-Powered, Unified Data Lake
    • Singularity Data Lake for Log Analytics
      Seamlessly Ingest Data from On-Prem, Cloud or Hybrid Environments
    Endpoint Security
    • Singularity Endpoint
      Autonomous Prevention, Detection, and Response
    • Singularity XDR
      Native & Open Protection, Detection, and Response
    • Singularity RemoteOps Forensics
      Orchestrate Forensics at Scale
    • Singularity Threat Intelligence
      Comprehensive Adversary Intelligence
    • Singularity Vulnerability Management
      Application & OS Vulnerability Management
    • Singularity Identity
      Identity Threat Detection and Response
    Cloud Security
    • Singularity Cloud Security
      Block Attacks with an AI-Powered CNAPP
    • Singularity Cloud Native Security
      Secure Cloud and Development Resources
    • Singularity Cloud Workload Security
      Real-Time Cloud Workload Protection Platform
    • Singularity Cloud Data Security
      AI-Powered Threat Detection for Cloud Storage
    • Singularity Cloud Security Posture Management
      Detect and Remediate Cloud Misconfigurations
    Securing AI
    • Prompt Security
      Secure AI Tools Across Your Enterprise
  • Why SentinelOne?
    Why SentinelOne?
    • Why SentinelOne?
      Cybersecurity Built for What’s Next
    • Our Customers
      Trusted by the World’s Leading Enterprises
    • Industry Recognition
      Tested and Proven by the Experts
    • About Us
      The Industry Leader in Autonomous Cybersecurity
    Compare SentinelOne
    • Arctic Wolf
    • Broadcom
    • CrowdStrike
    • Cybereason
    • Microsoft
    • Palo Alto Networks
    • Sophos
    • Splunk
    • Trellix
    • Trend Micro
    • Wiz
    Verticals
    • Energy
    • Federal Government
    • Finance
    • Healthcare
    • Higher Education
    • K-12 Education
    • Manufacturing
    • Retail
    • State and Local Government
  • Services
    Managed Services
    • Managed Services Overview
      Wayfinder Threat Detection & Response
    • Threat Hunting
      World-Class Expertise and Threat Intelligence
    • Managed Detection & Response
      24/7/365 Expert MDR Across Your Entire Environment
    • Incident Readiness & Response
      DFIR, Breach Readiness, & Compromise Assessments
    Support, Deployment, & Health
    • Technical Account Management
      Customer Success with Personalized Service
    • SentinelOne GO
      Guided Onboarding & Deployment Advisory
    • SentinelOne University
      Live and On-Demand Training
    • Services Overview
      Comprehensive Solutions for Seamless Security Operations
    • SentinelOne Community
      Community Login
  • Partners
    Our Network
    • MSSP Partners
      Succeed Faster with SentinelOne
    • Singularity Marketplace
      Extend the Power of S1 Technology
    • Cyber Risk Partners
      Enlist Pro Response and Advisory Teams
    • Technology Alliances
      Integrated, Enterprise-Scale Solutions
    • SentinelOne for AWS
      Hosted in AWS Regions Around the World
    • Channel Partners
      Deliver the Right Solutions, Together
    • SentinelOne for Google Cloud
      Unified, Autonomous Security Giving Defenders the Advantage at Global Scale
    • Partner Locator
      Your Go-to Source for Our Top Partners in Your Region
    Partner Portal→
  • Resources
    Resource Center
    • Case Studies
    • Data Sheets
    • eBooks
    • Reports
    • Videos
    • Webinars
    • Whitepapers
    • Events
    View All Resources→
    Blog
    • Feature Spotlight
    • For CISO/CIO
    • From the Front Lines
    • Identity
    • Cloud
    • macOS
    • SentinelOne Blog
    Blog→
    Tech Resources
    • SentinelLABS
    • Ransomware Anthology
    • Cybersecurity 101
  • About
    About SentinelOne
    • About SentinelOne
      The Industry Leader in Cybersecurity
    • Investor Relations
      Financial Information & Events
    • SentinelLABS
      Threat Research for the Modern Threat Hunter
    • Careers
      The Latest Job Opportunities
    • Press & News
      Company Announcements
    • Cybersecurity Blog
      The Latest Cybersecurity Threats, News, & More
    • FAQ
      Get Answers to Our Most Frequently Asked Questions
    • DataSet
      The Live Data Platform
    • S Foundation
      Securing a Safer Future for All
    • S Ventures
      Investing in the Next Generation of Security, Data and AI
  • Pricing
Get StartedContact Us
CVE Vulnerability Database
Vulnerability Database/CVE-2023-2478

CVE-2023-2478: GitLab Auth Bypass Vulnerability

CVE-2023-2478 is an authentication bypass vulnerability in GitLab CE/EE that allows unauthorized users to attach malicious runners to projects via GraphQL. This article covers technical details, affected versions, and mitigation.

Published: January 28, 2026

CVE-2023-2478 Overview

An authorization bypass vulnerability has been discovered in GitLab CE/EE that allows malicious unauthorized users to attach runners to arbitrary projects through a GraphQL endpoint. This vulnerability affects multiple versions of GitLab and represents a significant security concern for organizations relying on GitLab's CI/CD infrastructure, as it could allow attackers to execute malicious code within project pipelines.

Critical Impact

Unauthorized users can attach malicious runners to any project, potentially enabling code execution, data exfiltration, and supply chain attacks through compromised CI/CD pipelines.

Affected Products

  • GitLab Community Edition (CE) versions 15.4 before 15.9.7
  • GitLab Community Edition (CE) versions 15.10 before 15.10.6
  • GitLab Community Edition (CE) versions 15.11 before 15.11.2
  • GitLab Enterprise Edition (EE) versions 15.4 before 15.9.7
  • GitLab Enterprise Edition (EE) versions 15.10 before 15.10.6
  • GitLab Enterprise Edition (EE) versions 15.11 before 15.11.2

Discovery Timeline

  • 2023-05-08 - CVE-2023-2478 published to NVD
  • 2025-01-29 - Last updated in NVD database

Technical Details for CVE-2023-2478

Vulnerability Analysis

This vulnerability is classified under CWE-732 (Incorrect Permission Assignment for Critical Resource). The flaw exists within GitLab's GraphQL API implementation, specifically in the authorization logic for runner registration and attachment operations. Under certain conditions, the API fails to properly validate whether the requesting user has appropriate permissions to attach a runner to a target project.

The vulnerability enables a low-privileged, authenticated GitLab user to bypass authorization controls and attach a runner they control to projects where they should not have administrative access. This is particularly dangerous because runners execute CI/CD jobs, meaning an attacker could potentially intercept secrets, inject malicious code into build processes, or exfiltrate sensitive data from affected projects.

Root Cause

The root cause stems from improper permission assignment within GitLab's GraphQL endpoint handling runner attachments. The authorization check that should verify whether a user has project maintainer or owner privileges before allowing runner attachment was insufficient or missing under specific conditions. This allowed authenticated users to manipulate GraphQL mutations to attach runners to projects they do not own or maintain.

Attack Vector

The attack is network-based and requires low privileges (any authenticated GitLab user). The attacker exploits the vulnerable GraphQL endpoint to attach a malicious runner to a target project. Once attached, the rogue runner can pick up and execute CI/CD jobs for that project, potentially:

  1. Accessing environment variables and secrets configured for the project
  2. Modifying build artifacts and injecting malicious code
  3. Exfiltrating source code and sensitive data
  4. Compromising the software supply chain by tampering with releases

The attack does not require user interaction and can be performed remotely over the network. Additional technical details about the exploitation mechanism can be found in the HackerOne Report #1969599 and the GitLab Issue #409470.

Detection Methods for CVE-2023-2478

Indicators of Compromise

  • Unexpected runner registrations appearing in project CI/CD settings
  • New or unauthorized runners attached to projects without administrator approval
  • Anomalous GraphQL API requests targeting runner mutation endpoints
  • CI/CD jobs executing on unfamiliar or suspicious runners

Detection Strategies

  • Monitor GitLab audit logs for runner registration and attachment events, especially those initiated by non-admin users
  • Implement alerting on GraphQL API calls to runner-related mutations from unexpected user accounts
  • Review runner configurations across projects to identify any unauthorized runner attachments
  • Correlate runner activity with user authorization levels to detect privilege violations

Monitoring Recommendations

  • Enable comprehensive audit logging for GitLab CI/CD operations
  • Configure SIEM rules to alert on runner attachment events that don't match expected patterns
  • Regularly audit the list of registered runners across all projects and groups
  • Monitor for unusual CI/CD job execution patterns that may indicate rogue runner activity

How to Mitigate CVE-2023-2478

Immediate Actions Required

  • Upgrade GitLab CE/EE to version 15.9.7, 15.10.6, or 15.11.2 or later immediately
  • Audit all registered runners across your GitLab instance to identify any unauthorized attachments
  • Review CI/CD job history for any suspicious executions on unrecognized runners
  • Temporarily restrict runner registration permissions while investigating potential compromise

Patch Information

GitLab has released security patches addressing this vulnerability. Organizations should upgrade to the following patched versions:

  • Version 15.9.7 for the 15.9.x branch
  • Version 15.10.6 for the 15.10.x branch
  • Version 15.11.2 for the 15.11.x branch

Detailed patch information is available in the GitLab CVE-2023-2478 advisory.

Workarounds

  • Restrict GraphQL API access to trusted users and IP ranges where possible
  • Implement network segmentation to limit access to GitLab's internal APIs
  • Enable additional authentication requirements for sensitive API operations
  • Review and tighten runner registration tokens and shared runner configurations
bash
# Audit registered runners via GitLab Rails console
gitlab-rails runner "Ci::Runner.all.each { |r| puts \"#{r.id}: #{r.description} - Projects: #{r.projects.pluck(:full_path).join(', ')}\" }"

# Check runner registration events in audit logs
grep -i "runner" /var/log/gitlab/gitlab-rails/audit_json.log | jq '.entity_type, .author_name, .action'

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

  • Vulnerability Details
  • TypeAuth Bypass

  • Vendor/TechGitlab

  • SeverityMEDIUM

  • CVSS Score6.5

  • EPSS Probability0.36%

  • Known ExploitedNo
  • CVSS Vector
  • CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N
  • Impact Assessment
  • ConfidentialityLow
  • IntegrityNone
  • AvailabilityNone
  • CWE References
  • CWE-732
  • Technical References
  • GitLab Issue #409470

  • HackerOne Report #1969599
  • Vendor Resources
  • GitLab CVE-2023-2478 Details
  • Related CVEs
  • CVE-2026-5173: GitLab Auth Bypass Vulnerability

  • CVE-2026-2619: GitLab EE Auth Bypass Vulnerability

  • CVE-2026-2104: GitLab Auth Bypass Vulnerability

  • CVE-2026-1752: GitLab EE Auth Bypass Vulnerability
Default Legacy - Prefooter | Experience the World’s Most Advanced Cybersecurity Platform

Experience the World’s Most Advanced Cybersecurity Platform

See how our intelligent, autonomous cybersecurity platform can protect your organization now and into the future.

Try SentinelOne
  • Get Started
  • Get a Demo
  • Product Tour
  • Why SentinelOne
  • Pricing & Packaging
  • FAQ
  • Contact
  • Contact Us
  • Customer Support
  • SentinelOne Status
  • Language
  • Platform
  • Singularity Platform
  • Singularity Endpoint
  • Singularity Cloud
  • Singularity AI-SIEM
  • Singularity Identity
  • Singularity Marketplace
  • Purple AI
  • Services
  • Wayfinder TDR
  • SentinelOne GO
  • Technical Account Management
  • Support Services
  • Verticals
  • Energy
  • Federal Government
  • Finance
  • Healthcare
  • Higher Education
  • K-12 Education
  • Manufacturing
  • Retail
  • State and Local Government
  • Cybersecurity for SMB
  • Resources
  • Blog
  • Labs
  • Case Studies
  • Videos
  • Product Tours
  • Events
  • Cybersecurity 101
  • eBooks
  • Webinars
  • Whitepapers
  • Press
  • News
  • Ransomware Anthology
  • Company
  • About Us
  • Our Customers
  • Careers
  • Partners
  • Legal & Compliance
  • Security & Compliance
  • Investor Relations
  • S Foundation
  • S Ventures

©2026 SentinelOne, All Rights Reserved.

Privacy Notice Terms of Use

English