Katalog CVE

CVE-2026-63476

ŚrednieCVSS 4.3
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.29%

Percentyl 21 - wyżej niż 21% wszystkich znanych CVE

Streszczenie

isomorphic-git to czysto javascriptowa implementacja Git dla Node.js i przeglądarek. W wersjach przed 1.38.6 isomorphic-git odczytuje kontrolowany przez serwer parametr targetSize podczas stosowania delty packfile w src/utils/applyDelta.js i przekazuje go bez ograniczenia do Buffer.alloc(targetSize). Złośliwy lub kontrolowany przez atakującego pośrednika zdalny serwer może wysłać jeden nagłówek delty, który spowoduje, że git.clone() lub git.fetch() przydzieli około 2 GB pamięci przed walidacją rzeczywistego wyniku delty. GitPackIndex.fromPack pomija późniejszy błąd niezgodności rozmiaru, więc host z wystarczającą pamięcią może zachować marnotrawstwo zasobów bez widocznego błędu, podczas gdy kontenery, funkcje serverless i małe maszyny wirtualne mogą zostać zakończone. Limity sterty Node.js nie łagodzą przydziału poza stertą (off-heap) przez Buffer. Problem naprawiono w wersji 1.38.6.

Ocena ryzyka

Złośliwy serwer zdalny może wymusić nadmierną alokację pamięci, powodując wyczerpanie zasobów lub zakończenie procesów w kontenerach i środowiskach serverless. Może to prowadzić do odmowy usługi i zakłócenia działania pipeline'ów.

Rekomendacja

Zaktualizuj isomorphic-git do wersji 1.38.6 lub nowszej. Unikaj operacji clone i fetch z niezaufanych zdalnych repozytoriów oraz ustaw limity zasobów dla procesów.

Inne podatności w isomorphic-git

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

isomorphic-git is a pure JavaScript implementation of Git for Node.js and browsers. Prior to 1.38.6, isomorphic-git reads a server-controlled targetSize while applying a packfile delta in src/utils/applyDelta.js and passes it without a bound to Buffer.alloc(targetSize). A malicious or man-in-the-middle-controlled remote can send one delta header that causes git.clone() or git.fetch() to allocate approximately 2 GB before validating the actual delta output. GitPackIndex.fromPack swallows the later size-mismatch error, so a host with sufficient memory may retain the resource waste without a visible failure, while containers, serverless functions, and small virtual machines may terminate. Node.js heap limits do not mitigate the off-heap Buffer allocation. This issue is fixed in version 1.38.6.

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