<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
  <channel>
    <title>Most recent entries from all</title>
    <link>https://cve.radiocsirt.org</link>
    <description>Contains only the most 10 recent entries.</description>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>python-feedgen</generator>
    <language>en</language>
    <lastBuildDate>Thu, 15 Oct 2026 15:25:55 +0000</lastBuildDate>
    <item>
      <title>EUVD-2026-322097</title>
      <link>https://cve.radiocsirt.org/vuln/euvd-2026-322097</link>
      <description>EUVD-2026-322097</description>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/euvd-2026-322097</guid>
    </item>
    <item>
      <title>fkie_cve-2026-8467</title>
      <link>https://cve.radiocsirt.org/vuln/fkie_cve-2026-8467</link>
      <description>&lt;p&gt;Code Injection vulnerability in phenixdigital phoenix_storybook allows unauthenticated remote code execution via unsanitized attribute value interpolation in HEEx template generation.&lt;/p&gt;
&lt;p&gt;The psb-assign WebSocket event handler in &amp;#39;Elixir.PhoenixStorybook.Story.PlaygroundPreviewLive&amp;#39;:handle_event/3 accepts arbitrary attribute names and values from unauthenticated clients. These values are passed to &amp;#39;Elixir.PhoenixStorybook.Helpers.ExtraAssignsHelpers&amp;#39;:handle_set_variation_assign/3, which stores them verbatim. When rendering, &amp;#39;Elixir.PhoenixStorybook.Rendering.ComponentRenderer&amp;#39;:attributes_markup/1 interpolates binary attribute values directly into a HEEx template string as name=&amp;#34;&amp;lt;val&amp;gt;&amp;#34; 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&amp;#34; injected={EXPR} bar=&amp;#34;), which causes EXPR to be treated as an inline Elixir expression. The resulting template is compiled via EEx.compile_string/2 and executed via Code.eval_quoted_with_env/3 with full Kernel imports and no sandbox, giving the attacker arbitrary code execution on the server.&lt;/p&gt;
&lt;p&gt;This issue affects phoenix_storybook from 0.5.0 before 1.1.0.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;Code Injection vulnerability in phenixdigital phoenix_storybook allows unauthenticated remote code execution via unsanitized attribute value interpolation in HEEx template generation.&lt;/p&gt;
&lt;p&gt;The psb-assign WebSocket event handler in &amp;#39;Elixir.PhoenixStorybook.Story.PlaygroundPreviewLive&amp;#39;:handle_event/3 accepts arbitrary attribute names and values from unauthenticated clients. These values are passed to &amp;#39;Elixir.PhoenixStorybook.Helpers.ExtraAssignsHelpers&amp;#39;:handle_set_variation_assign/3, which stores them verbatim. When rendering, &amp;#39;Elixir.PhoenixStorybook.Rendering.ComponentRenderer&amp;#39;:attributes_markup/1 interpolates binary attribute values directly into a HEEx template string as name=&amp;#34;&amp;lt;val&amp;gt;&amp;#34; 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&amp;#34; injected={EXPR} bar=&amp;#34;), which causes EXPR to be treated as an inline Elixir expression. The resulting template is compiled via EEx.compile_string/2 and executed via Code.eval_quoted_with_env/3 with full Kernel imports and no sandbox, giving the attacker arbitrary code execution on the server.&lt;/p&gt;
&lt;p&gt;This issue affects phoenix_storybook from 0.5.0 before 1.1.0.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/fkie_cve-2026-8467</guid>
    </item>
    <item>
      <title>GHSA-55hg-8qxv-qj4p — PhoenixStorybook: Unauthenticated remote code execution via HEEx template injection in phoenix_storybook playground</title>
      <link>https://cve.radiocsirt.org/vuln/ghsa-55hg-8qxv-qj4p</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Hex: phoenix_storybook&lt;/p&gt;
&lt;p&gt;### Summary
An unsafe HEEx template generation vulnerability allows any unauthenticated user to execute arbitrary code on the server. The phoenix_storybook playground accepts user-controlled attribute values over WebSocket and interpolates them unsanitized into a HEEx template that is subsequently compiled and evaluated with full Elixir `Kernel` access.&lt;/p&gt;
&lt;p&gt;### Details
The vulnerability is a three-step chain:&lt;/p&gt;
&lt;p&gt;**1. Unsanitized WebSocket input (`extra_assigns_helpers.ex`)**
The `psb-assign` event handler in `PhoenixStorybook.Story.PlaygroundPreviewLive` accepts arbitrary attribute names and values from unauthenticated WebSocket clients and  stores them verbatim via `ExtraAssignsHelpers.handle_set_variation_assign/3`.&lt;/p&gt;
&lt;p&gt;**2. Unescaped interpolation into HEEx (`component_renderer.ex`)**
`ComponentRenderer.attributes_markup/1` builds a HEEx template string by interpolating binary attribute values directly:
```elixir
{name, val} when is_binary(val) -&amp;gt;
  ~s|#{name}=&amp;#34;#{val}&amp;#34;|
```
No escaping of `&amp;#34;` or `{` is performed. A value such as `foo&amp;#34; injected={EXPR} bar=&amp;#34;` breaks out of the attribute string and injects `EXPR` as an inline HEEx expression.&lt;/p&gt;
&lt;p&gt;**3. Unsandboxed evaluation (`component_renderer.ex`)**
The resulting HEEx string is compiled via `EEx.compile_string/2` and evaluated via `Code.eval_quoted_with_env/3` with full `Kernel` imports and no sandbox. The injected expression executes on the server even if it causes a rendering error.&lt;/p&gt;
&lt;p&gt;### PoC
1. Identify any story URL with a Playgro…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Hex: phoenix_storybook&lt;/p&gt;
&lt;p&gt;### Summary
An unsafe HEEx template generation vulnerability allows any unauthenticated user to execute arbitrary code on the server. The phoenix_storybook playground accepts user-controlled attribute values over WebSocket and interpolates them unsanitized into a HEEx template that is subsequently compiled and evaluated with full Elixir `Kernel` access.&lt;/p&gt;
&lt;p&gt;### Details
The vulnerability is a three-step chain:&lt;/p&gt;
&lt;p&gt;**1. Unsanitized WebSocket input (`extra_assigns_helpers.ex`)**
The `psb-assign` event handler in `PhoenixStorybook.Story.PlaygroundPreviewLive` accepts arbitrary attribute names and values from unauthenticated WebSocket clients and  stores them verbatim via `ExtraAssignsHelpers.handle_set_variation_assign/3`.&lt;/p&gt;
&lt;p&gt;**2. Unescaped interpolation into HEEx (`component_renderer.ex`)**
`ComponentRenderer.attributes_markup/1` builds a HEEx template string by interpolating binary attribute values directly:
```elixir
{name, val} when is_binary(val) -&amp;gt;
  ~s|#{name}=&amp;#34;#{val}&amp;#34;|
```
No escaping of `&amp;#34;` or `{` is performed. A value such as `foo&amp;#34; injected={EXPR} bar=&amp;#34;` breaks out of the attribute string and injects `EXPR` as an inline HEEx expression.&lt;/p&gt;
&lt;p&gt;**3. Unsandboxed evaluation (`component_renderer.ex`)**
The resulting HEEx string is compiled via `EEx.compile_string/2` and evaluated via `Code.eval_quoted_with_env/3` with full `Kernel` imports and no sandbox. The injected expression executes on the server even if it causes a rendering error.&lt;/p&gt;
&lt;p&gt;### PoC
1. Identify any story URL with a Playgro…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/ghsa-55hg-8qxv-qj4p</guid>
    </item>
  </channel>
</rss>
