High

@saltcorn/data: Tenant user role is used for tenant creation role check

  • Disclosed: 22.04.2026
  • Updated: 11.10.2026 10:22

Summary

When a tenant admin is logged out of the root domain (e.g., saltcorn.com) but logged in to their own tenant space as admin, they can simply append /tenant/create to their tenant URL. The system reads the role from the tenant context (admin), and a new tenant is created on the root domain (in PUBLIC SCHEMA > _sc_tenants), rather than in the tenant's own _sc_tenants table.

If the same logic applies to other routes, a tenant admin effectively gains admin rights on the root domain.

PoC

A tenant-created subtenant appears under the Saltcorn public schema instead of the tenant's own schema.

  • Even when role_id=1 is required for tenant creation on saltcorn.com (only admin can create tenants), existing tenant admins can still create new tenants because their local role_id:1 is evaluated against the root domain.
  • Even when role_to_create_tenant is set to 0 in the tenant's _sc_config schema, or removed entirely, the tenant admin can still create sub-tenants on the root domain — suggesting role_to_create_tenant is not being read at all.

Impact

Tenant admins gain unauthorized admin-level access to the root domain. Any authenticated tenant admin can perform privileged operations (e.g., creating tenants) on the root domain by exploiting the role context mismatch.

Affected software

Click a technology to see all vulnerabilities affecting it.

PlatformPackageVulnerable versionsFixed in
npm package @saltcorn/data < 1.4.4, >= 1.5.0-beta.0, < 1.5.2, >= 1.6.0-alpha.0, < 1.6.0-beta.2 1.4.4, 1.5.2, 1.6.0-beta.2

References

CVSS score -
CVSS vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:L/SC:N/SI:N/SA:N
Weakness (CWE)
CWE-863
Platform
npm
Package
@saltcorn/data
Disclosed
22.04.2026
Updated
11.10.2026 10:22

Sources and licenses

OSV / GitHub Advisory Database - GHSA-9237-rg5p-rhfw - CC BY 4.0

Vulnerability history: @saltcorn/data

All published vulnerabilities of this package (npm package), newest first. Shows whether this is a one-off slip or a package that needs watching.

Total entries
2
First → latest
04.2026 04.2026
Without a fix
0
Exploited in attacks
0

Severity breakdown

  • High 1
  • Low 1

Disclosures per year

  1. 2026: 2
  1. @saltcorn/data: Tenant user role is used for tenant creation role check this entry
    High ghsa-9237-rg5p-rhfw < 1.4.4, >= 1.5.0-beta.0, < 1.5.2, >= 1.6.0-alpha.0, < 1.6.0-beta.2 1.4.4, 1.5.2, 1.6.0-beta.2
  2. Low · 0.0 ghsa-59xv-588h-2vmm < 1.4.5, >= 1.5.0, < 1.5.5, >= 1.6.0-alpha.0, < 1.6.0-beta.4 1.4.5, 1.5.5, 1.6.0-beta.4

Know which vulnerabilities affect your application

With the DockRay integration and software inventory enabled, DockRay checks reported component versions against known vulnerabilities and notifies you about confirmed matches. Coverage depends on the supported technology and available advisory data.

Connect your application
DockRay newsletter

Application security in your inbox

Important vulnerabilities, actionable guidance and practical advice for your applications. Choose your technologies and follow what matters to your project.

  • A daily digest of new vulnerabilities, critical ones included.
  • Notifications about important updates.
  • Practical advice on application security and monitoring.

Leave empty to receive updates for every technology.

Free to subscribe. Unsubscribe with one click in any email.