CVE-2024-8970
High · 8.8CVSS
8.8
EPSS
0.7%
Published
Oct 11, 2024
CISA due date
—
Cloudanix analysis
A problem in GitLab lets someone start automated build and deployment tasks while pretending to be another team member.
- Exploitation
- Remote Authenticated
- Attacker needs
- Low Privilege
- Complexity
- Moderate
- Impact
- Privilege Gain
- Component
- Application
- Class
- Authorization Bypass
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
The flaw bypasses authorization controls in the pipeline scheduling logic, allowing an authenticated user to initiate a CI/CD pipeline that executes with the identity and permissions of a different user.
Why it matters to the business
Attackers can execute arbitrary build, test, and deployment jobs under another user's context, potentially leading to unauthorized code changes, secret exposure, or supply-chain tampering in shared development environments.
How an attack unfolds
An attacker with limited GitLab access crafts a request that references another user's pipeline definition or merge request; due to missing ownership or permission checks, the pipeline is enqueued and runs using the victim's credentials and environment variables.
How to fix it
Upgrade GitLab CE/EE to 17.2.9, 17.3.5, or 17.4.2 (or later) depending on the installed branch; apply the patch commit 91146650fd2d7d080662a536b1d04a5c96f451be where available.
How to confirm the fix worked
After upgrade, verify the running GitLab version matches a fixed release, review pipeline audit logs for unexpected owner changes, and confirm that pipeline creation requests now enforce strict user ownership checks.
Typical attack path
- Obtain a low-privileged GitLab account in the target instance
- Identify a project or merge request owned by a higher-privileged user
- Craft and submit a pipeline trigger request that references the victim's context
- Observe successful pipeline execution under the victim's identity
- Leverage resulting artifacts, secrets, or deployment permissions
How to detect it
Search GitLab production logs and audit events for pipeline creation or scheduling requests where the initiating user differs from the pipeline owner or project maintainer; correlate with unusual deployment or secret-access activity.
What your security team should do
- Immediately schedule upgrade to the nearest fixed version for all GitLab instances
- Review CI/CD configuration to ensure pipelines do not rely on implicit user context
- Enable enhanced audit logging for pipeline creation events
- Monitor for any post-upgrade pipeline failures indicating misconfiguration
The record
An issue was discovered in GitLab CE/EE affecting all versions starting from 11.6 prior to 17.2.9, starting from 17.3 prior to 17.3.5, and starting from 17.4 prior to 17.4.2, which allows an attacker to trigger a pipeline as another user under certain circumstances.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Bitnami | gitlab | 11.6.0 | 17.2.9 |
| Ubuntu:16.04:LTS | gitlab | 0 | No fix |
| Ubuntu:Pro:16.04:LTS | gitlab | 0 | No fix |
Related vulnerabilities
- CVE-2026-1751 A vulnerability has been discovered in GitLab CE/EE affecting all versions starting with… Also affects gitlab
- CVE-2025-3950 Exposure of Private Personal Information to an Unauthorized Actor in GitLab Also affects gitlab
- CVE-2025-9222 Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') in… Also affects gitlab
- CVE-2025-10569 Allocation of Resources Without Limits or Throttling in GitLab Also affects gitlab
- CVE-2025-11246 Insufficient Granularity of Access Control in GitLab Also affects gitlab
- CVE-2025-13772 Missing Authorization in GitLab Also affects gitlab
- CVE-2025-13761 Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') in… Also affects gitlab
- CVE-2025-13781 Missing Authorization in GitLab Also affects gitlab