<?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>Wed, 07 Oct 2026 20:29:06 +0000</lastBuildDate>
    <item>
      <title>cnvd-2026-18151</title>
      <link>https://cve.radiocsirt.org/vuln/cnvd-2026-18151</link>
      <description>cnvd-2026-18151</description>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/cnvd-2026-18151</guid>
    </item>
    <item>
      <title>EUVD-2026-275868</title>
      <link>https://cve.radiocsirt.org/vuln/euvd-2026-275868</link>
      <description>EUVD-2026-275868</description>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/euvd-2026-275868</guid>
    </item>
    <item>
      <title>fkie_cve-2026-32106</title>
      <link>https://cve.radiocsirt.org/vuln/fkie_cve-2026-32106</link>
      <description>&lt;p&gt;StudioCMS is a server-side-rendered, Astro native, headless content management system. Prior to 0.4.3, the REST API createUser endpoint uses string-based rank checks that only block creating owner accounts, while the Dashboard API uses indexOf-based rank comparison that prevents creating users at or above your own rank. This inconsistency allows an admin to create additional admin accounts via the REST API, enabling privilege proliferation and persistence. This vulnerability is fixed in 0.4.3.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;StudioCMS is a server-side-rendered, Astro native, headless content management system. Prior to 0.4.3, the REST API createUser endpoint uses string-based rank checks that only block creating owner accounts, while the Dashboard API uses indexOf-based rank comparison that prevents creating users at or above your own rank. This inconsistency allows an admin to create additional admin accounts via the REST API, enabling privilege proliferation and persistence. This vulnerability is fixed in 0.4.3.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/fkie_cve-2026-32106</guid>
    </item>
    <item>
      <title>GHSA-wj56-g96r-673q — StudioCMS: REST API Missing Rank Check Allows Admin to Create Peer Admin Accounts</title>
      <link>https://cve.radiocsirt.org/vuln/ghsa-wj56-g96r-673q</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; npm: studiocms&lt;/p&gt;
&lt;p&gt;## Summary&lt;/p&gt;
&lt;p&gt;The REST API `createUser` endpoint uses string-based rank checks that only block creating `owner` accounts, while the Dashboard API uses `indexOf`-based rank comparison that prevents creating users at or above your own rank. This inconsistency allows an admin to create additional admin accounts via the REST API, enabling privilege proliferation and persistence.&lt;/p&gt;
&lt;p&gt;## Details&lt;/p&gt;
&lt;p&gt;The REST API handler in `packages/studiocms/frontend/pages/studiocms_api/_handlers/rest-api/v1/secure.ts:1365-1378`:&lt;/p&gt;
&lt;p&gt;```typescript
// REST API — only blocks creating &amp;#39;owner&amp;#39;
if (newUserRank === &amp;#39;owner&amp;#39; &amp;amp;&amp;amp; rank !== &amp;#39;owner&amp;#39;) {
    return yield* new RestAPIError({
        error: &amp;#39;Unauthorized to create user with owner rank&amp;#39;,
    });
}&lt;/p&gt;
&lt;p&gt;if (rank === &amp;#39;admin&amp;#39; &amp;amp;&amp;amp; newUserRank === &amp;#39;owner&amp;#39;) {
    return yield* new RestAPIError({
        error: &amp;#39;Unauthorized to create user with owner rank&amp;#39;,
    });
}&lt;/p&gt;
&lt;p&gt;// Missing: no check preventing admin from creating admin
// newUserRank=&amp;#39;admin&amp;#39; passes all checks
```&lt;/p&gt;
&lt;p&gt;The Dashboard API handler in `_handlers/dashboard/create.ts` uses the correct approach:&lt;/p&gt;
&lt;p&gt;```typescript
// Dashboard API — blocks creating users at or above own rank
const callerPerm = availablePermissionRanks.indexOf(userData.permissionLevel);
const targetPerm = availablePermissionRanks.indexOf(rank);&lt;/p&gt;
&lt;p&gt;if (targetPerm &amp;gt;= callerPerm) {
    return yield* new DashboardAPIError({
        error: &amp;#39;Unauthorized: insufficient permissions to assign target rank&amp;#39;,
    });
}
```&lt;/p&gt;
&lt;p&gt;With `availablePermissionRanks = [&amp;#39;un…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; npm: studiocms&lt;/p&gt;
&lt;p&gt;## Summary&lt;/p&gt;
&lt;p&gt;The REST API `createUser` endpoint uses string-based rank checks that only block creating `owner` accounts, while the Dashboard API uses `indexOf`-based rank comparison that prevents creating users at or above your own rank. This inconsistency allows an admin to create additional admin accounts via the REST API, enabling privilege proliferation and persistence.&lt;/p&gt;
&lt;p&gt;## Details&lt;/p&gt;
&lt;p&gt;The REST API handler in `packages/studiocms/frontend/pages/studiocms_api/_handlers/rest-api/v1/secure.ts:1365-1378`:&lt;/p&gt;
&lt;p&gt;```typescript
// REST API — only blocks creating &amp;#39;owner&amp;#39;
if (newUserRank === &amp;#39;owner&amp;#39; &amp;amp;&amp;amp; rank !== &amp;#39;owner&amp;#39;) {
    return yield* new RestAPIError({
        error: &amp;#39;Unauthorized to create user with owner rank&amp;#39;,
    });
}&lt;/p&gt;
&lt;p&gt;if (rank === &amp;#39;admin&amp;#39; &amp;amp;&amp;amp; newUserRank === &amp;#39;owner&amp;#39;) {
    return yield* new RestAPIError({
        error: &amp;#39;Unauthorized to create user with owner rank&amp;#39;,
    });
}&lt;/p&gt;
&lt;p&gt;// Missing: no check preventing admin from creating admin
// newUserRank=&amp;#39;admin&amp;#39; passes all checks
```&lt;/p&gt;
&lt;p&gt;The Dashboard API handler in `_handlers/dashboard/create.ts` uses the correct approach:&lt;/p&gt;
&lt;p&gt;```typescript
// Dashboard API — blocks creating users at or above own rank
const callerPerm = availablePermissionRanks.indexOf(userData.permissionLevel);
const targetPerm = availablePermissionRanks.indexOf(rank);&lt;/p&gt;
&lt;p&gt;if (targetPerm &amp;gt;= callerPerm) {
    return yield* new DashboardAPIError({
        error: &amp;#39;Unauthorized: insufficient permissions to assign target rank&amp;#39;,
    });
}
```&lt;/p&gt;
&lt;p&gt;With `availablePermissionRanks = [&amp;#39;un…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/ghsa-wj56-g96r-673q</guid>
    </item>
  </channel>
</rss>
