FKIE_CVE-2026-40163
Vulnerability from fkie_nvd - Published: 2026-04-10 18:16 - Updated: 2026-04-27 13:36
Severity
Summary
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.
References
| URL | Tags | ||
|---|---|---|---|
| security-advisories@github.com | https://github.com/saltcorn/saltcorn/security/advisories/GHSA-32pv-mpqg-h292 | Exploit, Mitigation, Vendor Advisory |
Impacted products
| Vendor | Product | Version | |
|---|---|---|---|
| saltcorn | saltcorn | * | |
| saltcorn | saltcorn | * | |
| saltcorn | saltcorn | 1.6.0 | |
| saltcorn | saltcorn | 1.6.0 | |
| saltcorn | saltcorn | 1.6.0 | |
| saltcorn | saltcorn | 1.6.0 | |
| saltcorn | saltcorn | 1.6.0 | |
| saltcorn | saltcorn | 1.6.0 | |
| saltcorn | saltcorn | 1.6.0 | |
| saltcorn | saltcorn | 1.6.0 | |
| saltcorn | saltcorn | 1.6.0 | |
| saltcorn | saltcorn | 1.6.0 | |
| saltcorn | saltcorn | 1.6.0 | |
| saltcorn | saltcorn | 1.6.0 | |
| saltcorn | saltcorn | 1.6.0 | |
| saltcorn | saltcorn | 1.6.0 | |
| saltcorn | saltcorn | 1.6.0 | |
| saltcorn | saltcorn | 1.6.0 | |
| saltcorn | saltcorn | 1.6.0 | |
| saltcorn | saltcorn | 1.6.0 | |
| saltcorn | saltcorn | 1.6.0 | |
| saltcorn | saltcorn | 1.6.0 | |
| saltcorn | saltcorn | 1.6.0 |
{
"configurations": [
{
"nodes": [
{
"cpeMatch": [
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:*:*:*:*:*:*:*:*",
"matchCriteriaId": "87D06CD8-6A31-44F3-A1DE-D1E2AA8F3274",
"versionEndExcluding": "1.4.5",
"vulnerable": true
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:*:*:*:*:*:*:*:*",
"matchCriteriaId": "7E3412F3-9513-4A2F-9B81-0CC96A38BDA7",
"versionEndExcluding": "1.5.5",
"versionStartIncluding": "1.5.0",
"vulnerable": true
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha0:*:*:*:*:*:*",
"matchCriteriaId": "B9F0B1DA-694D-46DC-B1C3-B013AC4A849C",
"vulnerable": true
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha1:*:*:*:*:*:*",
"matchCriteriaId": "5A1F05CD-57F4-419B-ACA8-D7C9B6368863",
"vulnerable": true
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha10:*:*:*:*:*:*",
"matchCriteriaId": "EBF44DCF-6989-4E65-97D0-7C8A9260189A",
"vulnerable": true
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha11:*:*:*:*:*:*",
"matchCriteriaId": "E6666919-896F-4D1D-8225-3E91BAC9F101",
"vulnerable": true
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha12:*:*:*:*:*:*",
"matchCriteriaId": "B1724AAF-1FDA-402D-94D2-86CF9DD8839C",
"vulnerable": true
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha13:*:*:*:*:*:*",
"matchCriteriaId": "696855BA-6E8A-4170-8CC9-8C267C85397B",
"vulnerable": true
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha14:*:*:*:*:*:*",
"matchCriteriaId": "8B954E3D-95F4-49FB-8A3A-1DFAE831EAEE",
"vulnerable": true
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha15:*:*:*:*:*:*",
"matchCriteriaId": "E0EEE350-1436-4C28-B0D7-B2EC26CEF65C",
"vulnerable": true
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha16:*:*:*:*:*:*",
"matchCriteriaId": "DD555EEB-8C7B-4519-8037-3F4E8CDFFA51",
"vulnerable": true
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha17:*:*:*:*:*:*",
"matchCriteriaId": "12C8A9DD-0E70-4BD2-A0DF-8951757200DA",
"vulnerable": true
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha2:*:*:*:*:*:*",
"matchCriteriaId": "E8F83440-DA15-4415-B29F-4710021E06A8",
"vulnerable": true
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha3:*:*:*:*:*:*",
"matchCriteriaId": "0276E1CB-EFFA-47DF-A281-3317F9EA566E",
"vulnerable": true
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha4:*:*:*:*:*:*",
"matchCriteriaId": "399C6A3D-4EC0-498A-98E6-A81E581E8A10",
"vulnerable": true
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha5:*:*:*:*:*:*",
"matchCriteriaId": "9A768259-04EC-4EA7-83E6-F802A43F7F12",
"vulnerable": true
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha6:*:*:*:*:*:*",
"matchCriteriaId": "9E0E2D7E-96AA-427A-9043-460C8D6C718E",
"vulnerable": true
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha7:*:*:*:*:*:*",
"matchCriteriaId": "22CA8D18-519C-4DA9-B245-2E2BA6651ED7",
"vulnerable": true
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha8:*:*:*:*:*:*",
"matchCriteriaId": "E2820DF8-8124-4880-86F4-A262E5E884AB",
"vulnerable": true
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha9:*:*:*:*:*:*",
"matchCriteriaId": "2A3A7215-0C13-4611-8846-804853DAA0B0",
"vulnerable": true
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:beta1:*:*:*:*:*:*",
"matchCriteriaId": "480F4CEF-4019-41AC-AD7B-8D317619132A",
"vulnerable": true
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:beta2:*:*:*:*:*:*",
"matchCriteriaId": "CB023AEF-5AEF-4923-9552-028BF47D7119",
"vulnerable": true
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:beta3:*:*:*:*:*:*",
"matchCriteriaId": "959C8B5C-080D-48AA-A91A-AC3F50128450",
"vulnerable": true
}
],
"negate": false,
"operator": "OR"
}
]
}
],
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "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."
}
],
"id": "CVE-2026-40163",
"lastModified": "2026-04-27T13:36:14.653",
"metrics": {
"cvssMetricV31": [
{
"cvssData": {
"attackComplexity": "LOW",
"attackVector": "NETWORK",
"availabilityImpact": "NONE",
"baseScore": 8.2,
"baseSeverity": "HIGH",
"confidentialityImpact": "LOW",
"integrityImpact": "HIGH",
"privilegesRequired": "NONE",
"scope": "UNCHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:H/A:N",
"version": "3.1"
},
"exploitabilityScore": 3.9,
"impactScore": 4.2,
"source": "security-advisories@github.com",
"type": "Secondary"
}
]
},
"published": "2026-04-10T18:16:46.233",
"references": [
{
"source": "security-advisories@github.com",
"tags": [
"Exploit",
"Mitigation",
"Vendor Advisory"
],
"url": "https://github.com/saltcorn/saltcorn/security/advisories/GHSA-32pv-mpqg-h292"
}
],
"sourceIdentifier": "security-advisories@github.com",
"vulnStatus": "Analyzed",
"weaknesses": [
{
"description": [
{
"lang": "en",
"value": "CWE-22"
}
],
"source": "security-advisories@github.com",
"type": "Primary"
}
]
}
Loading…
Loading…
Experimental. This forecast is provided for visualization only and may change without notice. Do not use it for operational decisions.
Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.
Sightings
| Author | Source | Type | Date | Other |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.
Loading…
Loading…