CVE-2026-47068
NiskieCVSS 2.3Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 37 - wyżej niż 37% wszystkich znanych CVE
Streszczenie
PhoenixStorybook przed wersją 1.1.0 ma podatność na ominięcie autoryzacji przez klucz kontrolowany przez użytkownika, umożliwiającą wstrzyknięcie tematu PubSub między sesjami za pomocą parametru URL. Atakujący może przejąć komunikację między widokami LiveView a iframe.
Ocena ryzyka
Ryzyko polega na możliwości przechwycenia lub podsłuchania komunikacji między sesjami przez atakującego, co może prowadzić do naruszenia poufności i integralności danych.
Rekomendacja
Zaleca się aktualizację PhoenixStorybook do wersji 1.1.0 lub nowszej oraz walidację parametrów URL przed użyciem w PubSub.
Oryginalny opis (angielski, źródło NVD)
Authorization Bypass Through User-Controlled Key vulnerability in phenixdigital phoenix_storybook allows cross-session PubSub topic injection via a URL query parameter. 'Elixir.PhoenixStorybook.Story.ComponentIframeLive':handle_params/3 in lib/phoenix_storybook/live/story/component_iframe_live.ex reads a PubSub topic directly from params["topic"] and broadcasts {:component_iframe_pid, self()} on it with no check that the topic belongs to the requesting session. The shared PhoenixStorybook.PubSub is used to coordinate playground LiveViews with their iframes: a playground subscribes to a session-specific topic and uses the received iframe pid to direct subsequent control messages (variation state, theme switches, extra-assign payloads) via send/2. Because the iframe trusts the query parameter, an attacker who loads /storybook/iframe/<story>?topic=<victim_topic> causes their iframe process pid to be announced on the victim's topic. The victim's playground then addresses its private messages to the attacker's iframe process. This issue affects phoenix_storybook from 0.4.0 before 1.1.0.

