Gitea nieprawidłowo weryfikuje właściciela repozytorium podczas usuwania blokad Git LFS (Large File Storage). Podatność umożliwia użytkownikowi posiadającemu uprawnienia zapisu do jednego repozytorium usuwanie blokad LFS należących do innych repozytoriów.
▸ Pokaż oryginał (EN)
Gitea does not properly validate repository ownership when deleting Git LFS locks. A user with write access to one repository may be able to delete LFS locks belonging to other repositories.
Błąd wynika z nieprawidłowej kontroli dostępu (CWE-284) oraz niewystarczającej walidacji identyfikatorów obiektów (CWE-639). Podczas operacji usuwania blokady Git LFS aplikacja nie sprawdza poprawnie, czy dana blokada faktycznie należy do repozytorium, w kontekście którego działa żądający użytkownik. W efekcie uwierzytelniony użytkownik z uprawnieniami zapisu do dowolnego repozytorium może skonstruować odpowiednie żądanie i usunąć blokadę LFS z innego, niezwiązanego repozytorium.
Atakujący może usuwać blokady Git LFS w repozytoriach, do których nie powinien mieć dostępu, co prowadzi do naruszenia integralności procesu zarządzania plikami LFS oraz potencjalnego zakłócenia pracy innych użytkowników i zespołów korzystających z dotkniętych repozytoriów.
Należy zaktualizować Gitea do wersji 1.25.4 lub nowszej, która zawiera poprawki opisane w pull requestach #36344 i #36349. Szczegóły dostępne w oficjalnym komunikacie producenta pod adresem https://blog.gitea.com/release-of-1.25.4/
Gitea w wersjach poprzedzających 1.25.4 (na podstawie referencji producenta)
Poprawka dostępna w wersji 1.25.4, udostępnionej pod tagiem v1.25.4 w repozytorium GitHub. Szczegóły podatności opublikowano w security advisory GHSA-rrq5-r9h5-pc7c.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:NGitea
APPGitea< 1.25.4
Powiązane podatności
Gitea before 1.27.1 allows remote code execution via the diffpatch API through Git hook installation.
Gitea: nieprawidłowa walidacja własności projektów organizacji
Gitea: nieautoryzowany dostęp do załączników z prywatnych repozytoriów
Gitea: brak sanityzacji refs prowadzący do wstrzyknięcia argumentów git
Gitea: nieprawidłowe unieważnianie sesji umożliwia przejęcie uprawnień