<?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://cve.radiocsirt.org/rss/recent/all/10</id>
  <title>Most recent entries from all</title>
  <updated>2026-10-07T15:49:59.179627+00:00</updated>
  <author>
    <name>Vulnerability-Lookup</name>
    <email>csirt@opendfir.org</email>
  </author>
  <link href="https://cve.radiocsirt.org" 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://cve.radiocsirt.org/vuln/euvd-2026-354740</id>
    <title>EUVD-2026-354740</title>
    <updated>2026-10-07T15:49:59.226643+00:00</updated>
    <content>EUVD-2026-354740</content>
    <link href="https://cve.radiocsirt.org/vuln/euvd-2026-354740"/>
  </entry>
  <entry>
    <id>https://cve.radiocsirt.org/vuln/fkie_cve-2026-63669</id>
    <title>fkie_cve-2026-63669</title>
    <updated>2026-10-07T15:49:59.226679+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>ApostropheCMS is an open-source Node.js content management system. Prior to 4.32.0, the page module's move() operation fails to enforce the destination parent's _create permission because its oldParent archive condition disables the check for ordinary moves, allowing an authenticated editor or contributor to use _targetId and _position through the page REST update endpoint to move a controlled page into a restricted subtree and make nudgeNewPeers() updateMany re-rank protected sibling pages. This issue is fixed in version 4.32.0.</p>
      </div>
    </content>
    <link href="https://cve.radiocsirt.org/vuln/fkie_cve-2026-63669"/>
  </entry>
  <entry>
    <id>https://cve.radiocsirt.org/vuln/ghsa-wr5r-wqp2-x4fh</id>
    <title>GHSA-wr5r-wqp2-x4fh — ApostropheCMS: Missing destination-parent authorization in page `move()` allows a low-privileged editor to move and re-…</title>
    <updated>2026-10-07T15:49:59.226715+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> npm: apostrophe</p>
<p>## Summary
ApostropheCMS enforces per-type authorization on pages: a page type may declare `editRole` / `publishRole` (and the core `@apostrophecms/archive-page` does), so a project can have page-type subtrees that only higher-privileged roles are allowed to create or edit within. The `move()` operation is supposed to enforce that a page may only be moved *into* a parent the actor has **create** rights over — this is the same boundary the page-insert route enforces (the insert target is fetched with `.permission('create')`).</p>
<p>A regression in the move authorization guard silently disabled that destination check for every normal move. The guard now reads `(oldParent._id !== parent._id) &amp;&amp; (parent.type !== '@apostrophecms/archive-page') &amp;&amp; (!parent._create) &amp;&amp; (oldParent.type === '@apostrophecms/archive-page' &amp;&amp; !parent._edit)`. Because the final `&amp;&amp;` clause requires `oldParent.type === '@apostrophecms/archive-page'`, the whole conjunction can only be true while restoring a page *out of the archive*. For any ordinary move (the source page's old parent is a normal page), that clause is `false`, the entire condition is `false`, and `!parent._create` is never evaluated. The only surviving gate in the whole path is `moved._edit` — i.e. "can the actor edit the page being moved", which a low-privileged editor legitimately holds for their own ordinary pages.</p>
<p>The result is that any authenticated user who can edit at least one page can relocate that page **under a parent of a restricte…</p></div>
    </content>
    <link href="https://cve.radiocsirt.org/vuln/ghsa-wr5r-wqp2-x4fh"/>
  </entry>
</feed>
