Workflow GitHub Actions o nazwie code-quality.yml w repozytorium jellyfin/jellyfin-ios umożliwia wykonanie dowolnego kodu poprzez pull requesty z forków zewnętrznych repozytoriów. Ze względu na niemal pełne uprawnienia zapisu workflow, podatność prowadzi do kompromitacji całej organizacji Jellyfin i łańcucha dostaw oprogramowania.
▸ Pokaż oryginał (EN)
Jellyfin is an open-source media system. The code-quality.yml GitHub Actions workflow in jellyfin/jellyfin-ios is vulnerable to arbitrary code execution via pull requests from forked repositories. Due to the workflow's elevated permissions (nearly all write permissions), this vulnerability enables full repository takeover of jellyfin/jellyfin-ios, exfiltration of highly privileged secrets, Apple App Store supply chain attack, GitHub Container Registry (ghcr.io) package poisoning, and full jellyfin organization compromise via cross-repository token usage. Note: This is not a code vulnerability, but a vulnerability in the GitHub Actions workflows. No new version is required for this GHSA and end users do not need to take any actions.
Podatność wynika z nieprawidłowego zarządzania uprawnieniami (CWE-269) w workflow CI/CD: kod-quality.yml posiada szeroko przyznane uprawnienia zapisu do repozytorium. Atakujący może wysłać pull request z repozytorium będącego forkiem, którego kod zostanie wykonany w kontekście uprzywilejowanego workflow. Umożliwia to dostęp do tajnych sekretów organizacji, modyfikację zawartości repozytorium, a także wstrzyknięcie złośliwego kodu do pakietów publikowanych w GitHub Container Registry (ghcr.io) oraz dystrybucji w Apple App Store.
Atakujący może przejąć pełną kontrolę nad repozytorium jellyfin/jellyfin-ios, wykraść wysoce uprzywilejowane sekrety, zainfekować paczki kontenerowe i skompromitować całą organizację Jellyfin poprzez wielokrotne użycie tokenów między repozytoriami, co stanowi atak na łańcuch dostaw.
Podatność dotyczy wyłącznie workflow GitHub Actions, a nie kodu aplikacji — użytkownicy końcowi nie muszą podejmować żadnych działań. Naprawa została wprowadzona przez twórców projektu w commicie 109217e75f38394b2f6e46e25dfe5a721203d3c8 w repozytorium jellyfin/jellyfin-ios. Administratorzy podobnych projektów powinni zweryfikować uprawnienia własnych workflow CI/CD oraz ograniczyć wykonywanie kodu z pull requestów zewnętrznych forków.
Repozytorium jellyfin/jellyfin-ios — workflow GitHub Actions code-quality.yml; dotyczy infrastruktury CI/CD projektu, a nie oprogramowania końcowego instalowanego przez użytkowników.
Zgodnie z opisem producenta podatność nie dotyczy kodu aplikacji, lecz wyłącznie konfiguracji pipeline'u GitHub Actions. Użytkownicy końcowi aplikacji Jellyfin nie są bezpośrednio narażeni i nie muszą instalować żadnych aktualizacji. Ryzyko dotyczy przede wszystkim integralności łańcucha dostaw oprogramowania.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:HJellyfin
APPJellyfinwszystkie wersje
Powiązane podatności
Jellyfin: RCE jako root przez path traversal w endpoincie przesyłania napisów
Jellyfin: odczyt dowolnych plików przez command injection w ffmpeg
jellyfin-web is the web client for Jellyfin, a free-software media system. Starting in version 10.1.0 and prio...
Jellyfin is an open source self hosted media server. Versions prior to 10.11.7 contain a vulnerability chain i...
Jellyfin is an open source self hosted media server. Versions before 10.10.7 are vulnerable to argument inject...