CVE-2026-47068 PUBLISHED

Cross-session PubSub topic injection via URL parameter in phoenix_storybook

Assigner: EEF
Reserved: 18.05.2026 Published: 20.05.2026 Updated: 20.05.2026

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.

Metrics

CVSS Vector: CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N
CVSS Score: 2.3

Product Status

Vendor phenixdigital
Product phoenix_storybook
Versions Default: unaffected
  • affected from 0.4.0 to 1.1.0 (excl.)
Vendor phenixdigital
Product phoenix_storybook
Versions Default: unaffected
  • affected from 8c2c97b0f505780fee4069988bf86736f51d35d7 to 6ee03f1c738d4436dde1b066cf65c80663d489f5 (excl.)

Credits

  • Peter Ullrich finder
  • Christian Blavier remediation developer
  • Jonatan Männchen analyst

References

Problem Types

  • CWE-639 Authorization Bypass Through User-Controlled Key CWE

Impacts

  • CAPEC-12 Choosing Message Identifier