CVE-2026-40163

Saltcorn has an Unauthenticated Path Traversal in sync endpoints allows arbitrary file write and directory read

Published Apr 10, 2026 CVSS 3.1 · 8.2 High EPSS < 1% KEV · Not listed
Description
Saltcorn is an extensible, open source, no-code database application builder. Prior to 1.4.5, 1.5.5, and 1.6.0-beta.4, the POST /sync/offline_changes endpoint allows an unauthenticated attacker to create arbitrary directories and write a changes.json file with attacker-controlled JSON content anywhere on the server filesystem. The GET /sync/upload_finished endpoint allows an unauthenticated attacker to list arbitrary directory contents and read specific JSON files. This vulnerability is fixed in 1.4.5, 1.5.5, and 1.6.0-beta.4.

Remediation

No solution or workaround provided in the CVE record

Tracking

Sign in to view the affected projects.

Advisories

Source ID Title
Github GHSA Github GHSA GHSA-32pv-mpqg-h292 Saltcorn has an Unauthenticated Path Traversal in sync endpoints, allowing arbitrary file write and directory read
History
Type Values Removed Values Added
CPEs cpe:2.3:a:saltcorn:saltcorn:*:*:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha0:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha10:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha11:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha12:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha13:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha14:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha15:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha16:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha17:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha1:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha2:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha3:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha4:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha5:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha6:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha7:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha8:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha9:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:beta1:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:beta2:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:beta3:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:*:*:*:*:*:*:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha0:*:*:*:*:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha10:*:*:*:*:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha11:*:*:*:*:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha12:*:*:*:*:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha13:*:*:*:*:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha14:*:*:*:*:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha15:*:*:*:*:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha16:*:*:*:*:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha17:*:*:*:*:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha1:*:*:*:*:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha2:*:*:*:*:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha3:*:*:*:*:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha4:*:*:*:*:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha5:*:*:*:*:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha6:*:*:*:*:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha7:*:*:*:*:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha8:*:*:*:*:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha9:*:*:*:*:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:beta1:*:*:*:*:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:beta2:*:*:*:*:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:beta3:*:*:*:*:*:*
Type Values Removed Values Added
CPEs cpe:2.3:a:saltcorn:saltcorn:*:*:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha0:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha10:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha11:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha12:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha13:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha14:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha15:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha16:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha17:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha1:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha2:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha3:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha4:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha5:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha6:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha7:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha8:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha9:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:beta1:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:beta2:*:*:*:node.js:*:*
cpe:2.3:a:saltcorn:saltcorn:1.6.0:beta3:*:*:*:node.js:*:*
Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Type Values Removed Values Added
First Time appeared Saltcorn
Saltcorn saltcorn
Vendors & Products Saltcorn
Saltcorn saltcorn
Type Values Removed Values Added
Description Saltcorn is an extensible, open source, no-code database application builder. Prior to 1.4.5, 1.5.5, and 1.6.0-beta.4, the POST /sync/offline_changes endpoint allows an unauthenticated attacker to create arbitrary directories and write a changes.json file with attacker-controlled JSON content anywhere on the server filesystem. The GET /sync/upload_finished endpoint allows an unauthenticated attacker to list arbitrary directory contents and read specific JSON files. This vulnerability is fixed in 1.4.5, 1.5.5, and 1.6.0-beta.4.
Title Saltcorn has an Unauthenticated Path Traversal in sync endpoints allows arbitrary file write and directory read
Weaknesses CWE-22
References
Metrics cvssV3_1

{'score': 8.2, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:H/A:N'}

Weaknesses

Sources

Status
PUBLISHED
Assigner
GitHub_M
Published
Updated
Apr 15, 2026, 2:50 PM
Reserved
Apr 9, 2026, 7:31 PM
Status
Analyzed
Published
Apr 10, 2026, 6:16 PM
Modified
Jun 17, 2026, 10:44 AM