CVE-2026-50221
ŚrednieCVSS 5.4Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 10 - wyżej niż 10% wszystkich znanych CVE
Streszczenie
W OpenStack Swift przed wersją 2.37.2 serwer proxy nie usuwa wewnętrznych nagłówków aktualizacji (X-Container-Host, X-Container-Device, X-Delete-At-Host, X-Delete-At-Device) z żądań klientów przed przekazaniem ich do serwerów obiektów. Uwierzytelniony użytkownik z dostępem do zapisu może wstrzyknąć te nagłówki, aby przekierować żądania aktualizacji kontenera na kontrolowany przez atakującego serwer, co umożliwia fałszowanie żądań po stronie serwera (SSRF).
Ocena ryzyka
Atak SSRF ujawnia wewnętrzne metadane klastra, w tym indeksy polityk przechowywania, mapowania partycji, nazwy urządzeń oraz, gdy włączone jest szyfrowanie w spoczynku, tekst zaszyfrowany i wektory inicjujące dla klucza szyfrowania na poziomie kontenera. Atakujący może również powodować „widmowe listy” w dowolnych kontenerach poprzez mechanizm przekierowania zakresu fragmentów.
Rekomendacja
Należy niezwłocznie zaktualizować OpenStack Swift do wersji 2.37.2 lub nowszej, która usuwa wewnętrzne nagłówki aktualizacji z żądań klientów. Jako środek tymczasowy można skonfigurować reguły zapory sieciowej blokujące wychodzące żądania do nieznanych serwerów.
Inne podatności w OpenStack Swift
Zobacz wszystkie- CVE-2026-71192Średnie
W OpenStack Swift do wersji 2.38.0, middleware S3API nie oczyszcza natywnych nagłówków kontrolnych Swift (X-Copy-From, X-Copy-From-Account) z żądań API S3, gdy włączona jest opcja s3_acl=true. Atakujący może wstrzyknąć te nagłówki do podpisanego żądania PUT skierowanego do własnego kontenera, co powoduje wykonanie kopii po stronie serwera z prywatnego obiektu innego dzierżawcy. Autoryzacja źródłowego obiektu jest pomijana, ponieważ middleware S3API już autoryzował żądanie względem miejsca docelowego.
- CVE-2026-71191Średnie
W OpenStack Swift do wersji 2.38.0 middleware S3API nie wymusza objęcia semantycznych nagłówków x-amz-* podpisem SigV4 w żądaniach z presigned URL. Atakujący, posiadając presigned PUT URL, może wstrzyknąć niepodpisany nagłówek X-Amz-Copy-Source, co powoduje wykonanie kopii po stronie serwera z dowolnego obiektu źródłowego w kontekście autoryzacji podpisującego. Umożliwia to odczyt dowolnego obiektu, do którego dostęp ma podpisujący, jeśli znane są project_id, nazwa kontenera i nazwa obiektu.
- CVE-2026-71190Wysokie
W OpenStack Swift do wersji 2.38.0 parser nagłówka Accept w serwerze proxy zawiera wyrażenie regularne podatne na katastrofalne cofanie (ReDoS). Wzorzec "qdtext" (?:[^"]|\\.)* pozwala nieuwierzytelnionemu zdalnemu atakującemu wysłać spreparowany nagłówek Accept, powodując wykładnicze zużycie CPU w procesie roboczym proxy. Ładunek 32 par znaków backslash przekracza 30 sekund czasu CPU. Powtarzane żądania mogą wyczerpać wszystkie wątki robocze proxy, powodując całkowitą odmowę usługi.
- CVE-2026-49017Wysokie
W OpenStack Swift przed wersjami 2.36.2 i 2.37.2, oprogramowanie pośredniczące s3api wchodzi w nieskończoną pętlę podczas przetwarzania obciętego żądania PUT z kodowaniem aws-chunked. Klasa StreamingInput wielokrotnie dołącza pusty bufor i ponownie odczytuje, powodując trwałe zawieszenie procesu roboczego proxy-server z rosnącym zużyciem CPU i pamięci. Uwierzytelniony atakujący może systematycznie wyczerpać wszystkie procesy robocze proxy-server, prowadząc do odmowy usługi. Błąd wprowadzono w Swift 2.36.0.
Oryginalny opis (angielski, źródło NVD)
In OpenStack Swift before 2.37.2, proxy-server does not strip internal update headers (X-Container-Host, X-Container-Device, X-Delete-At-Host, X-Delete-At-Device) from client requests before forwarding them to object-servers. An authenticated user with write access can inject these headers to redirect container update requests to an attacker-controlled server, enabling server-side request forgery. The SSRF requests expose internal cluster metadata including storage policy indexes, partition mappings, device names, and when at rest encryption is enabled, cipher text and initialization vectors for the container-level encryption key. The attacker can also cause "ghost listings" in arbitrary containers via the shard-range redirect mechanism.

