Katalog CVE

CVE-2026-52812

WysokieCVSS 7.1
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.24%

Percentyl 15 — wyżej niż 15% wszystkich znanych CVE

Streszczenie

W Gogs przed wersją 0.14.3, mechanizm przechowywania plików LFS używa wyłącznie identyfikatora OID do adresowania treści, ale autoryzacja dostępu do repozytorium jest sprawdzana na podstawie pary (repo_id, oid). Funkcja serveUpload pomija ponowne przesyłanie pliku, jeśli plik o danym OID już istnieje na dysku, i dodaje nowy rekord (repo_id, oid) wskazujący na ten plik bez weryfikacji, czy treść żądania faktycznie odpowiada deklarowanemu OID. Użytkownik z prawem zapisu do jednego repozytorium może powiązać swoje repozytorium z plikiem OID należącym do prywatnego repozytorium i pobrać oryginalne dane przez własny punkt końcowy.

Ocena ryzyka

Ryzyko polega na nieautoryzowanym dostępie do prywatnych plików LFS w innych repozytoriach, co może prowadzić do wycieku poufnych danych przechowywanych w repozytoriach Gogs.

Rekomendacja

Należy niezwłocznie zaktualizować Gogs do wersji 0.14.3 lub nowszej, która zawiera poprawkę usuwającą tę podatność.

Oryginalny opis (angielski, źródło NVD)

Gogs is an open source self-hosted Git service. Prior to 0.14.3, Git LFS storage is content-addressed by OID alone (<LFS-root>/<oid[0]>/<oid[1]>/<oid>) but per-repo authorization lives in the lfs_object table keyed (repo_id, oid). serveUpload skips re-uploading when the OID file already exists on disk and inserts a new (repo_id, oid) row pointing at it without verifying the request body hashes to the OID being claimed. Any user with write access to one repo can bind their repo to an OID owned by a private repo and download the original bytes via their own download endpoint. This vulnerability is fixed in 0.14.3.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS