CVE-2026-47068: CWE-639 Authorization Bypass Through User-Controlled Key in phenixdigital phoenix_storybook
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.
AI Analysis
Technical Summary
The vulnerability in phenixdigital phoenix_storybook (versions 0.4.0 before 1.1.0) arises from the 'Elixir.PhoenixStorybook.Story.ComponentIframeLive':handle_params/3 function reading a PubSub topic from the URL query parameter 'topic' without verifying that the topic belongs to the requesting session. This allows an attacker to load an iframe with a victim's topic, causing their iframe process ID to be announced on the victim's topic. Consequently, the victim's playground LiveView sends private control messages intended for itself to the attacker's iframe process, resulting in an authorization bypass through user-controlled key manipulation (CWE-639).
Potential Impact
An attacker can cause cross-session message interception by injecting a victim's PubSub topic into the iframe URL parameter, leading to unauthorized receipt of private control messages. The impact is limited by the low CVSS score (2.3), indicating low severity with partial attack complexity and limited impact on confidentiality and integrity. There are no known exploits in the wild. The vulnerability does not allow privilege escalation or remote code execution but can disrupt expected session isolation.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. No official fix or patch is currently documented. Until a patch is available, avoid exposing phoenix_storybook instances to untrusted users or networks. Review and restrict access to the affected versions (0.4.0 before 1.1.0). Consider implementing additional validation on PubSub topic parameters to ensure they belong to the requesting session if modifying the source code is feasible.
CVE-2026-47068: CWE-639 Authorization Bypass Through User-Controlled Key in phenixdigital phoenix_storybook
Description
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.
CVSS v4.0
Score 2.3low
Affected software
Weaknesses
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The vulnerability in phenixdigital phoenix_storybook (versions 0.4.0 before 1.1.0) arises from the 'Elixir.PhoenixStorybook.Story.ComponentIframeLive':handle_params/3 function reading a PubSub topic from the URL query parameter 'topic' without verifying that the topic belongs to the requesting session. This allows an attacker to load an iframe with a victim's topic, causing their iframe process ID to be announced on the victim's topic. Consequently, the victim's playground LiveView sends private control messages intended for itself to the attacker's iframe process, resulting in an authorization bypass through user-controlled key manipulation (CWE-639).
Potential Impact
An attacker can cause cross-session message interception by injecting a victim's PubSub topic into the iframe URL parameter, leading to unauthorized receipt of private control messages. The impact is limited by the low CVSS score (2.3), indicating low severity with partial attack complexity and limited impact on confidentiality and integrity. There are no known exploits in the wild. The vulnerability does not allow privilege escalation or remote code execution but can disrupt expected session isolation.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. No official fix or patch is currently documented. Until a patch is available, avoid exposing phoenix_storybook instances to untrusted users or networks. Review and restrict access to the affected versions (0.4.0 before 1.1.0). Consider implementing additional validation on PubSub topic parameters to ensure they belong to the requesting session if modifying the source code is feasible.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- EEF
- Date Reserved
- 2026-05-18T17:28:08.321Z
- Cvss Version
- 4.0
- State
- PUBLISHED
- Remediation Level
- null
Threat ID: 6a0dc2e7ba1db4736284c252
Added to database: 05/20/2026, 14:19:19 UTC
Last enriched: 05/27/2026, 20:07:17 UTC
Last updated: 07/31/2026, 19:22:59 UTC
Views: 67
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.