CVE-2026-8467
KrytyczneStreszczenie
W podatności CVE-2026-8467 występuje możliwość zdalnego wykonania kodu przez nieautoryzowanych użytkowników w aplikacji phenixdigital phoenix_storybook. Problem wynika z interpolacji niesanitizowanych wartości atrybutów w generowaniu szablonów HEEx.
Ocena ryzyka
Organizacje mogą być narażone na zdalne wykonanie kodu, co może prowadzić do przejęcia kontroli nad systemem lub wycieku danych. Atakujący może wykorzystać tę podatność do wstrzykiwania złośliwego kodu.
Rekomendacja
Zaleca się aktualizację do najnowszej wersji phoenix_storybook oraz wprowadzenie odpowiednich filtrów sanitizujących wartości atrybutów przed ich użyciem w szablonach. Należy również ograniczyć dostęp do WebSocket dla nieautoryzowanych użytkowników.
Oryginalny opis (angielski, źródło NVD)
Code Injection vulnerability in phenixdigital phoenix_storybook allows unauthenticated remote code execution via unsanitized attribute value interpolation in HEEx template generation. The psb-assign WebSocket event handler in 'Elixir.PhoenixStorybook.Story.PlaygroundPreviewLive':handle_event/3 accepts arbitrary attribute names and values from unauthenticated clients. These values are passed to 'Elixir.PhoenixStorybook.Helpers.ExtraAssignsHelpers':handle_set_variation_assign/3, which stores them verbatim. When rendering, 'Elixir.PhoenixStorybook.Rendering.ComponentRenderer':attributes_markup/1 interpolates binary attribute values directly into a HEEx template string as name="<val>" without escaping double quotes or HEEx expression delimiters. An attacker can supply a value containing a closing quote followed by a HEEx expression block (e.g. foo" injected={EXPR} bar="), which causes EXPR to be treated as an inline Elixir expression. The resulting template is compiled via EEx.compile_str

