CVE-2026-82724
WysokieCVSS 7.6Streszczenie
W bibliotece ash_phoenix projektu ash-project wykryto podatność polegającą na nieprawidłowej autoryzacji. Wywołanie zwrotne SubdomainHook jest wywoływane z wartością nil dla dzierżawy (tenant), przez co kontrole dostępu oparte na dzierżawie nie sprawdzają właściwej dzierżawy. Problem dotyczy wersji od 2.1.26 przed 2.3.25.
Ocena ryzyka
Atakujący może ominąć mechanizmy autoryzacji oparte na dzierżawie, uzyskując dostęp do zasobów innych dzierżawców lub wykonując operacje bez odpowiednich uprawnień, co może prowadzić do naruszenia izolacji danych.
Rekomendacja
Należy natychmiast zaktualizować bibliotekę ash_phoenix do wersji 2.3.25 lub nowszej, która zawiera poprawkę. Do czasu aktualizacji należy ręcznie sprawdzać dzierżawę w hookach lub ograniczyć dostęp do funkcji wykorzystujących SubdomainHook.
Inne podatności w ash_phoenix
Zobacz wszystkie- CVE-2026-82727Niskie
W bibliotece ash_phoenix (wersje od 1.2.17 przed 2.3.25) wykryto podatność na ujawnianie wrażliwych informacji w komunikatach błędów. Cała mapa parametrów żądania jest zapisywana w komunikacie wyjątku, co może ujawnić sekrety w logach i raportach błędów.
- CVE-2026-82726Średnie
W ash-project ash_phoenix wykryto podatność związaną z nadmiernie permisywnym wyrażeniem regularnym, która pozwala zdalnemu klientowi na wybór dzierżawcy (tenanta) używanego przez aplikację Ash lub na degradację żądania poprzez wysłanie spreparowanego nagłówka Host. Funkcja AshPhoenix.Helpers.get_subdomain/2 usuwała domenę główną za pomocą String.replace(host, ~r/.?#{root_host}/, ""), co powodowało, że każda kropka stawała się symbolem wieloznacznym, a porównanie było globalne i niezakotwiczone. Problem dotyczy wersji od 2.1.26 przed 2.3.25.
- CVE-2026-82725Niskie
W bibliotece ash_phoenix (wersje od 0.6.0-rc.1 przed 2.3.25) wykryto podatność na obejście autoryzacji przez kontrolowany przez użytkownika klucz. Atakujący może filtrować dane po relacjach, które nie są publiczne, co pozwala na uzyskanie informacji o prywatnych danych.
Oryginalny opis (angielski, źródło NVD)
Incorrect Authorization vulnerability in ash-project ash_phoenix invokes the SubdomainHook authorization callback with a nil tenant, so tenant-scoped access checks never see the tenant they are meant to enforce. AshPhoenix.LiveView.SubdomainHook.on_mount/4 attached a handle_params hook to assign the tenant and then immediately called handle_subdomain in the same on_mount. The tenant assign is only written when LiveView later runs handle_params, strictly after on_mount returns, so handle_subdomain read an unset assign and ran as apply(m, f, [socket, nil | a]). A consumer gate that halts when the user does not belong to the tenant instead evaluated nil, either crashing or taking a permissive branch, and it was never re-run once the real subdomain was assigned or on later navigations. The fix runs handle_subdomain inside the handle_params hook with the real tenant on every navigation. This issue affects ash_phoenix: from 2.1.26 before 2.3.25.

