Podatność w GitLab Enterprise Edition pozwala uwierzytelnionemu użytkownikowi na uruchamianie pipeline CI/CD na dowolnych gałęziach repozytorium, omijając mechanizmy kontroli dostępu. Ocena CVSS 9.6 wskazuje na krytyczny poziom zagrożenia ze względu na potencjalne przejęcie kontroli nad procesem wytwarzania oprogramowania.
▸ Pokaż oryginał (EN)
An issue was discovered in GitLab EE affecting all versions starting from 12.5 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 running pipelines on arbitrary branches.
Błąd wynika z braku odpowiedniej weryfikacji uprawnień (CWE-306 — brak uwierzytelnienia dla funkcji krytycznej) przed uruchomieniem pipeline na wskazanej gałęzi. Atakujący z podstawowym dostępem do instancji GitLab EE może wywołać pipeline na dowolnej gałęzi repozytorium, do której normalnie nie powinien mieć uprawnień wykonawczych. Wektor ataku jest sieciowy, nie wymaga interakcji ofiary ani wysokich uprawnień, a zakres oddziaływania wykracza poza komponent źródłowy (Scope: Changed).
Atakujący może uruchamiać pipeline CI/CD na dowolnych gałęziach, co może prowadzić do ujawnienia poufnych sekretów i zmiennych środowiskowych osadzonych w pipeline, a także do naruszenia integralności procesu budowania i wdrażania oprogramowania.
Należy zaktualizować GitLab EE do wersji 17.2.9, 17.3.5 lub 17.4.2 (lub nowszych). Producent udostępnił patche eliminujące podatność we wszystkich wymienionych gałęziach wydań. Do czasu aktualizacji zaleca się ograniczenie dostępu do repozytoriów oraz monitorowanie nieautoryzowanych uruchomień pipeline.
GitLab Enterprise Edition (EE) we wszystkich wersjach od 12.5 do 17.2.8 włącznie, od 17.3.0 do 17.3.4 włącznie oraz od 17.4.0 do 17.4.1 włącznie.
Podatność zgłoszona przez program bug bounty HackerOne (raport #2711204). Dotyczy wyłącznie wariantu Enterprise Edition (EE) — wersja Community Edition (CE) nie jest wymieniona jako podatna.
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:NGitLab
APPGitlab12.5.0 – 17.2.9 (bez)17.3.0 – 17.3.5 (bez)17.4.0 – 17.4.2 (bez)
Powiązane podatności
GitLab: Przejęcie konta przez reset hasła na niezweryfikowany e-mail
An issue has been discovered in GitLab CE/EE affecting all versions starting from 11.9. GitLab was not properl...
GitLab CE/EE: uruchomienie pipeline jako inny użytkownik (privilege escalation)
GitLab CE/EE — uruchomienie pipeline jako dowolny użytkownik (CWE-290)
Ruby-SAML: pominięcie weryfikacji podpisu odpowiedzi SAML — Auth Bypass