A recently discovered security vulnerability (CVE-2024-7102) has been identified in GitLab Community Edition (CE) and Enterprise Edition (EE) that affects all versions starting from 16.4 prior to 17.5.. The vulnerability allows an attacker to trigger a pipeline as another user under certain circumstances. This blog post aims to provide a detailed analysis of the vulnerability, the affected code snippet, and the disclosure of the exploit specifics.
Details
The vulnerability is a result of inadequate permissions validation when a user triggers a pipeline. This can be exploited if an attacker impersonates another user to trigger a pipeline, effectively bypassing the access controls and gaining unauthorized execution of the pipeline.
The issue is found in the app/models/project.rb file. The code snippet is shown below
`
def trigger_pipeline(user, ref, variables, ignore_skip_ci: false)
PipelineCreate::Chain.new(
self,
ref,
Timeline
Published on: 02/13/2025 01:15:24 UTC