<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
  <id>https://vulnerability.circl.lu/rss/recent/all/10</id>
  <title>Most recent entries from all</title>
  <updated>2026-09-30T15:33:27.960944+00:00</updated>
  <author>
    <name>Vulnerability-Lookup</name>
    <email>info@circl.lu</email>
  </author>
  <link href="https://vulnerability.circl.lu" rel="alternate"/>
  <generator uri="https://lkiesow.github.io/python-feedgen" version="1.0.0">python-feedgen</generator>
  <subtitle>Contains only the most 10 recent entries.</subtitle>
  <entry>
    <id>https://vulnerability.circl.lu/vuln/fkie_cve-2026-75526</id>
    <title>fkie_cve-2026-75526</title>
    <updated>2026-09-30T15:33:27.963073+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>django CMS is an easy-to-use and developer-friendly enterprise content management system powered by Django. From 5.0.8 until 5.0.9, ContentRenderer.render_placeholder in cms/plugin_rendering.py can pass stored, attacker-controlled values to ContentRenderer.render_exception when plugin rendering fails in edit mode. Values from get_short_description(), the exception message, the placeholder, or placeholder.source are interpolated into a cms-rendering-exception heading and later returned through mark_safe. Because the heading is not escaped, stored HTML executes in an editor’s browser, and settings.DEBUG does not prevent the custom heading from rendering. The fix uses format_html to escape the message before safe placeholder output is returned. This issue is fixed in versions 5.0.9.</p>
      </div>
    </content>
    <link href="https://vulnerability.circl.lu/vuln/fkie_cve-2026-75526"/>
  </entry>
  <entry>
    <id>https://vulnerability.circl.lu/vuln/ghsa-hvq6-2r72-p2x7</id>
    <title>GHSA-hvq6-2r72-p2x7 — django CMS: Stored XSS in edit-mode plugin exception rendering</title>
    <updated>2026-09-30T15:33:27.963176+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> PyPI: django-cms</p>
<p>## Summary</p>
<p>When plugin rendering fails in edit mode, django CMS renders a `cms-rendering-exception` block so editors can see that a placeholder could not be rendered. Older code built that block's heading by interpolating the exception message, placeholder/source strings, and the failing plugin's short description directly into an HTML string, then returned the placeholder output as safe markup.</p>
<p>If an editor could store HTML in data used by a plugin's `get_short_description()` (or in other values interpolated into the exception message), and that plugin later raised during edit-mode rendering, the payload was parsed as HTML in the staff user's browser. This is a stored XSS condition in the CMS editing context.</p>
<p>## Impact</p>
<p>The vulnerable path is only reached when placeholder rendering catches a plugin rendering exception:</p>
<p>```python
try:
    placeholder_content = "".join(plugin_content)
except Exception as e:
    context["exc_info"] = sys.exc_info()
    placeholder_content = self.render_exception("rendering placeholder", context, placeholder, editable)
```</p>
<p>`render_exception()` constructs a `message` from values that can include stored content:</p>
<p>- `value` - the exception message.
- `placeholder` - the placeholder string representation.
- `placeholder.source` - the source object string representation, such as page content.
- `instance.get_short_description()` - plugin-provided summary text, often derived from plugin model fields.</p>
<p>In the vulnerable implementation, that messa…</p></div>
    </content>
    <link href="https://vulnerability.circl.lu/vuln/ghsa-hvq6-2r72-p2x7"/>
  </entry>
  <entry>
    <id>https://vulnerability.circl.lu/vuln/pysec-2026-3825</id>
    <title>PYSEC-2026-3825 — django CMS: Stored XSS in edit-mode plugin exception rendering</title>
    <updated>2026-09-30T15:33:27.963247+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> PyPI: django-cms</p>
<p>## Summary</p>
<p>When plugin rendering fails in edit mode, django CMS renders a `cms-rendering-exception` block so editors can see that a placeholder could not be rendered. Older code built that block's heading by interpolating the exception message, placeholder/source strings, and the failing plugin's short description directly into an HTML string, then returned the placeholder output as safe markup.</p>
<p>If an editor could store HTML in data used by a plugin's `get_short_description()` (or in other values interpolated into the exception message), and that plugin later raised during edit-mode rendering, the payload was parsed as HTML in the staff user's browser. This is a stored XSS condition in the CMS editing context.</p>
<p>## Impact</p>
<p>The vulnerable path is only reached when placeholder rendering catches a plugin rendering exception:</p>
<p>```python
try:
    placeholder_content = "".join(plugin_content)
except Exception as e:
    context["exc_info"] = sys.exc_info()
    placeholder_content = self.render_exception("rendering placeholder", context, placeholder, editable)
```</p>
<p>`render_exception()` constructs a `message` from values that can include stored content:</p>
<p>- `value` - the exception message.
- `placeholder` - the placeholder string representation.
- `placeholder.source` - the source object string representation, such as page content.
- `instance.get_short_description()` - plugin-provided summary text, often derived from plugin model fields.</p>
<p>In the vulnerable implementation, that messa…</p></div>
    </content>
    <link href="https://vulnerability.circl.lu/vuln/pysec-2026-3825"/>
  </entry>
</feed>
