CVE-2026-33540
WysokieCVSS 7.5Streszczenie
W trybie pull-through cache narzędzia Distribution (przed wersją 3.1.0) punkty końcowe uwierzytelniania tokenami są odkrywane przez parsowanie wyzwań WWW-Authenticate zwracanych przez skonfigurowany rejestr nadrzędny. Adres URL realm z wyzwania bearer jest używany bez weryfikacji, czy odpowiada hostowi rejestru nadrzędnego, co pozwala atakującemu kontrolującemu rejestr nadrzędny (lub znajdującemu się na pozycji MitM) na spowodowanie wysłania skonfigurowanych poświadczeń rejestru nadrzędnego przez basic auth do adresu URL realm kontrolowanego przez atakującego. Podatność naprawiono w wersji 3.1.0.
Ocena ryzyka
Atakujący może przechwycić poświadczenia rejestru nadrzędnego, co umożliwia nieautoryzowany dostęp do prywatnych obrazów kontenerów i dalsze ataki na łańcuch dostaw. Ryzyko jest szczególnie istotne w środowiskach z niezaufanymi lub przejętymi rejestrami nadrzędnymi.
Rekomendacja
Zaktualizuj Distribution do wersji 3.1.0 lub nowszej. Zweryfikuj zaufanie do skonfigurowanych rejestrów nadrzędnych i rozważ stosowanie połączeń TLS z walidacją certyfikatów.
Inne podatności w Distribution
Zobacz wszystkie- CVE-2026-41888Średnie
W Distribution (toolkit do pakowania, wysyłania, przechowywania i dostarczania zawartości kontenerów) przed wersją 3.1.1 usuwanie tagów przez endpoint DELETE /v2/<name>/manifests/<tag> omija konfigurację storage.delete.enabled: false, pozwalając dowolnemu klientowi API na usuwanie tagów z repozytoriów, nawet gdy operator wyraźnie wyłączył usuwanie. Podatność została naprawiona w wersji 3.1.1.
- CVE-2026-85747Średnie
W bibliotece Distribution (registry/client) w wersjach przed 3.1.2 metoda Get() odczytuje manifest zwrócony dla żądania przypiętego do digestu i przekazuje go do distribution.UnmarshalManifest bez weryfikacji skrótu względem żądanego digestu. Umożliwia to złośliwej lub przechwyconej odpowiedzi rejestru podstawienie treści manifestu wybranej przez atakującego, nawet gdy nagłówek Docker-Content-Digest wskazuje żądaną wartość. Wbudowany proxy pull-through może dodatkowo buforować i ponownie serwować podstawiony manifest. Problem naprawiono w wersji 3.1.2.
- CVE-2026-35172Wysokie
W Distribution (narzędzie do pakowania i dystrybucji kontenerów) przed wersją 3.1.0, gdy włączone są opcje storage.cache.blobdescriptor: redis i storage.delete.enabled: true, usunięcie bloba z repozytorium a nie usuwa całkowicie wpisów w pamięci podręcznej Redis. Po późniejszym odczycie z repozytorium b, usunięty blob staje się ponownie dostępny w repozytorium a.
Oryginalny opis (angielski, źródło NVD)
Distribution is a toolkit to pack, ship, store, and deliver container content. Prior to 3.1.0, in pull-through cache mode, distribution discovers token auth endpoints by parsing WWW-Authenticate challenges returned by the configured upstream registry. The realm URL from a bearer challenge is used without validating that it matches the upstream registry host. As a result, an attacker-controlled upstream (or an attacker with MitM position to the upstream) can cause distribution to send the configured upstream credentials via basic auth to an attacker-controlled realm URL. This vulnerability is fixed in 3.1.0.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

