GHSA-9237-rg5p-rhfw @saltcorn/data: Tenant user role is used for tenant creation role check
Tenant admins can escalate privileges to root domain admin by exploiting role context mismatch during tenant creation.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is GHSA-9237-rg5p-rhfw?
GHSA-9237-rg5p-rhfw is a vulnerability in @saltcorn/data, published on 22 Apr 2026. Any signed-in user can exploit it over the network, with no action from the victim.
Official description
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=1is required for tenant creation on saltcorn.com (only admin can create tenants), existing tenant admins can still create new tenants because their localrole_id:1is evaluated against the root domain. - Even when
role_to_create_tenantis set to0in the tenant's_sc_configschema, or removed entirely, the tenant admin can still create sub-tenants on the root domain — suggestingrole_to_create_tenantis 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.
Which versions are affected by GHSA-9237-rg5p-rhfw?
6 open source packages ship an affected version, including @saltcorn/data.
| Package | Affected | Fixed in |
|---|---|---|
@saltcorn/data npm | All versions | 1.4.4 |
@saltcorn/data npm | All versions | 1.4.4 |
@saltcorn/data npm | From 1.5.0-beta.0 | 1.5.2 |
@saltcorn/data npm | From 1.5.0-beta.0 | 1.5.2 |
@saltcorn/data npm | From 1.6.0-alpha.0 | 1.6.0-beta.2 |
@saltcorn/data npm | From 1.6.0-alpha.0 | 1.6.0-beta.2 |
How do I fix GHSA-9237-rg5p-rhfw?
Upgrade @saltcorn/data to a fixed version for your release line: 1.4.4, 1.5.2 or 1.6.0-beta.2.
Is GHSA-9237-rg5p-rhfw being exploited?
There is no known exploitation of GHSA-9237-rg5p-rhfw in the wild and no public exploit code.