W aplikacji Gogs (open source Git service) w wersjach przed 0.14.2 możliwe jest złośliwe nadpisanie obiektów LFS (Large File Storage) należących do innych repozytoriów. Podatność umożliwia przeprowadzenie ataku na łańcuch dostaw poprzez podmianę plików binarnych lub innych zasobów przechowywanych w LFS.
▸ Pokaż oryginał (EN)
Gogs is an open source self-hosted Git service. Prior to version 0.14.2, overwritable LFS object across different repos leads to supply-chain attack, all LFS objects are vulnerable to be maliciously overwritten by malicious attackers. This issue has been patched in version 0.14.2.
Gogs nie weryfikuje w wystarczający sposób, czy przesyłany obiekt LFS należy do repozytorium, do którego jest wysyłany (CWE-345: brak weryfikacji autentyczności danych). Atakujący, przesyłając obiekt LFS o odpowiednio dobranym skrócie (hash), może nadpisać istniejący obiekt LFS przypisany do innego repozytorium. Ponieważ obiekty LFS są współdzielone w nieizolowany sposób, modyfikacja jednego obiektu wpływa na wszystkie repozytoria korzystające z danego zasobu. Skutkuje to możliwością podmiany np. plików binarnych lub bibliotek pobieranych przez użytkowników innych projektów.
Atakujący może złośliwie nadpisać dowolny obiekt LFS w ramach instancji Gogs, co prowadzi do ataku na łańcuch dostaw — użytkownicy pobierający zasoby z innych repozytoriów mogą nieświadomie otrzymać zmodyfikowane, potencjalnie szkodliwe pliki. Integralność przechowywanych artefaktów jest zagrożona na poziomie całej instancji.
Należy zaktualizować Gogs do wersji 0.14.2 lub nowszej, w której problem został naprawiony. Patch dostępny jest w oficjalnym wydaniu v0.14.2 oraz jako commit 81ee8836445ac888d99da8b652be7d5cbc5c4d5c w repozytorium producenta.
Gogs w wersjach przed 0.14.2 — wszystkie instancje korzystające z funkcji Git LFS
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:H/A:LGogs
APPGogs< 0.14.2
Powiązane podatności
Gogs: ominięcie patcha CVE-2024-56731 umożliwia RCE przez .git
Gogs: RCE przez usuwanie plików w katalogu .git (bypass patcha CVE-2024-39931)
RCE w Gogs poprzez command injection w parametrze tree_path (Windows)
Argument injection w serwerze SSH Gogs prowadzący do RCE
Gogs – nieautoryzowane usuwanie plików wewnętrznych (CWE-552)