CVE-2026-82755
ŚrednieCVSS 6.3Streszczenie
Podatność w ash_authentication_oauth2_server pozwala współdzielonej pamięci podręcznej HTTP na serwowanie metadanych OAuth jednego dzierżawcy klientom innego dzierżawcy. Odpowiedzi z metadanymi są oznaczone jako Cache-Control: public bez nagłówka Vary, co powoduje, że odpowiedzi są przechowywane i serwowane innym dzierżawcom.
Ocena ryzyka
Klienci mogą otrzymać błędne metadane, co może prowadzić do wysyłania kodów autoryzacyjnych i sekretów do niewłaściwego punktu końcowego tokena oraz walidacji tokenów przy użyciu niewłaściwych kluczy.
Rekomendacja
Zaktualizuj ash_authentication_oauth2_server do wersji 0.3.1 lub nowszej, która zawiera poprawkę dodającą nagłówek Vary lub odpowiednie dyrektywy cache.
Inne podatności w ash_authentication_oauth2_server
Zobacz wszystkie- CVE-2026-82758Średnie
Podatność w ash_authentication_oauth2_server pozwala nieuwierzytelnionemu atakującemu na rejestrację klientów OAuth nawet gdy Dynamic Client Registration jest zabezpieczony tokenem początkowym. Funkcja resolve_secret/3 traktuje każdą wartość inną niż {:ok, _} lub :error jako prawidłowy sekret, co pozwala na pominięcie zabezpieczeń.
- CVE-2026-82757Średnie
Podatność typu SSRF w ash_authentication_oauth2_server pozwala atakującemu kontrolującemu adres URL metadanych klienta i jego DNS na zmuszenie serwera do połączenia z adresami wewnętrznymi lub pętli zwrotnej. Funkcja public_ip?/1 błędnie klasyfikuje pewne zakresy adresów jako publiczne, umożliwiając ominięcie polityki.
- CVE-2026-82756Średnie
Podatność w ash_authentication_oauth2_server pozwala nieuwierzytelnionemu atakującemu na wstrzyknięcie dowolnych parametrów uwierzytelniania do nagłówka WWW-Authenticate. Wartość resource_metadata jest interpolowana bez odpowiedniego escapowania, co umożliwia modyfikację nagłówka i przekierowanie klientów do złośliwego serwera autoryzacji.
- CVE-2026-82754Średnie
Podatność w ash_authentication_oauth2_server powoduje, że punkty końcowe OAuth zmieniające stan są dostępne pod niezamierzonym prefiksem URL, co pozwala ominąć kontrolę skonfigurowaną dla kanonicznego prefiksu. Trasy są montowane zarówno pod /oauth, jak i /.well-known, co umożliwia dostęp do /register, /token i /revoke przez alternatywne ścieżki.
- CVE-2026-82753Wysokie
Podatność polegająca na nieograniczonym przydzielaniu zasobów w ash_authentication_oauth2_server. Nieuwierzytelniony atakujący może wyczerpać pamięć i przestrzeń dyskową bazy danych poprzez wysyłanie żądań do punktu końcowego /authorize z wieloma różnymi adresami URL client_id, co powoduje tworzenie trwałych rekordów klientów i przechowywanie dokumentów w pamięci podręcznej bez limitów.
Oryginalny opis (angielski, źródło NVD)
Use of Cache Containing Sensitive Information vulnerability in ash-project ash_authentication_oauth2_server allows a shared HTTP cache to serve one tenant's OAuth discovery metadata to another tenant's clients. The RFC 8414 and RFC 9728 metadata endpoints in AshAuthentication.Phoenix.Oauth2Server.ProtocolRouter return tenant-specific values (issuer, authorization_endpoint, token_endpoint, jwks_uri) when a tenant is set, but sent them with Cache-Control: public, max-age=3600 and no Vary. When the tenant is derived from something other than the URL (a header or the Host) and a shared cache sits in front, the cache key is the URL alone, so a stored response for one tenant is served to another for up to an hour. Affected clients may then send authorization codes and secrets to the wrong tenant's token endpoint and validate tokens against the wrong keys. This issue affects ash_authentication_oauth2_server: from 0.1.3 before 0.3.1.

