CVE-2026-40163
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.
CVSS
- Versión: 3.1
- Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:H/A:N
- Puntuación base: 8.2
Probabilidad de explotación (EPSS)
- Probabilidad de explotación en los próximos 30 días: 0.43%
- Percentil entre todas las CVEs puntuadas: 35
- Fecha de la puntuación: 5/10/2026
EPSS (Exploit Prediction Scoring System, de FIRST) estima la probabilidad de que una vulnerabilidad sea explotada en 30 días. Complementa a CVSS (impacto) y a CISA KEV (explotación confirmada).
🎯 Técnicas ATT&CK
Cómo se explota esta vulnerabilidad y qué consigue el atacante, en el lenguaje de MITRE ATT&CK.
- Explotación
T1190Exploit Public-Facing Applicationinitial access95 % - Impacto principal
T1005Data from Local Systemcollection90 % - Impacto secundario
T1565.001Stored Data Manipulationimpact85 %
Acceso de red sin autenticación (AV:N/PR:N/UI:N) a endpoints web. Path traversal (CWE-22) permite lectura arbitraria de archivos y escritura de contenido JSON controlado en el filesystem.
Inferido por nuestro agente de análisis a partir de la descripción oficial, el vector CVSS y la CWE, y comprobado por un supervisor. Puede contener errores.
🛡️ Mitigaciones ATT&CK que cubren estas técnicas
Tecnologías afectadas (1)
CWE
- CWE-22
Referencias
JSON original (NVD)
Mostrar
{
"id": "CVE-2026-40163",
"cveTags": [],
"metrics": {
"ssvcV203": [
{
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"ssvcData": {
"id": "CVE-2026-40163",
"role": "CISA Coordinator",
"options": [
{
"exploitation": "poc"
},
{
"automatable": "yes"
},
{
"technicalImpact": "partial"
}
],
"version": "2.0.3",
"timestamp": "2026-04-15T14:49:25.336831Z"
}
}
],
"cvssMetricV31": [
{
"type": "Secondary",
"source": "security-advisories@github.com",
"cvssData": {
"scope": "UNCHANGED",
"version": "3.1",
"baseScore": 8.2,
"attackVector": "NETWORK",
"baseSeverity": "HIGH",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:H/A:N",
"integrityImpact": "HIGH",
"userInteraction": "NONE",
"attackComplexity": "LOW",
"availabilityImpact": "NONE",
"privilegesRequired": "NONE",
"confidentialityImpact": "LOW"
},
"impactScore": 4.2,
"exploitabilityScore": 3.9
}
]
},
"affected": [
{
"source": "security-advisories@github.com",
"affectedData": [
{
"vendor": "saltcorn",
"product": "saltcorn",
"versions": [
{
"status": "affected",
"version": "< 1.4.5"
},
{
"status": "affected",
"version": ">= 1.5.0-beta.0, < 1.5.5"
},
{
"status": "affected",
"version": ">= 1.6.0-alpha.0, < 1.6.0-beta.4"
}
]
}
]
}
],
"published": "2026-04-10T18:16:46.233",
"references": [
{
"url": "https://github.com/saltcorn/saltcorn/security/advisories/GHSA-32pv-mpqg-h292",
"tags": [
"Exploit",
"Mitigation",
"Vendor Advisory"
],
"source": "security-advisories@github.com"
}
],
"vulnStatus": "Analyzed",
"weaknesses": [
{
"type": "Secondary",
"source": "security-advisories@github.com",
"description": [
{
"lang": "en",
"value": "CWE-22"
}
]
}
],
"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."
}
],
"lastModified": "2026-06-17T10:44:47.933",
"configurations": [
{
"nodes": [
{
"negate": false,
"cpeMatch": [
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "87D06CD8-6A31-44F3-A1DE-D1E2AA8F3274",
"versionEndExcluding": "1.4.5"
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "7E3412F3-9513-4A2F-9B81-0CC96A38BDA7",
"versionEndExcluding": "1.5.5",
"versionStartIncluding": "1.5.0"
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha0:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "B9F0B1DA-694D-46DC-B1C3-B013AC4A849C"
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha1:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "5A1F05CD-57F4-419B-ACA8-D7C9B6368863"
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha10:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "EBF44DCF-6989-4E65-97D0-7C8A9260189A"
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha11:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "E6666919-896F-4D1D-8225-3E91BAC9F101"
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha12:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "B1724AAF-1FDA-402D-94D2-86CF9DD8839C"
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha13:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "696855BA-6E8A-4170-8CC9-8C267C85397B"
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha14:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "8B954E3D-95F4-49FB-8A3A-1DFAE831EAEE"
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha15:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "E0EEE350-1436-4C28-B0D7-B2EC26CEF65C"
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha16:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "DD555EEB-8C7B-4519-8037-3F4E8CDFFA51"
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha17:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "12C8A9DD-0E70-4BD2-A0DF-8951757200DA"
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha2:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "E8F83440-DA15-4415-B29F-4710021E06A8"
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha3:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "0276E1CB-EFFA-47DF-A281-3317F9EA566E"
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha4:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "399C6A3D-4EC0-498A-98E6-A81E581E8A10"
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha5:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "9A768259-04EC-4EA7-83E6-F802A43F7F12"
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha6:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "9E0E2D7E-96AA-427A-9043-460C8D6C718E"
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha7:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "22CA8D18-519C-4DA9-B245-2E2BA6651ED7"
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha8:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "E2820DF8-8124-4880-86F4-A262E5E884AB"
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:alpha9:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "2A3A7215-0C13-4611-8846-804853DAA0B0"
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:beta1:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "480F4CEF-4019-41AC-AD7B-8D317619132A"
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:beta2:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "CB023AEF-5AEF-4923-9552-028BF47D7119"
},
{
"criteria": "cpe:2.3:a:saltcorn:saltcorn:1.6.0:beta3:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "959C8B5C-080D-48AA-A91A-AC3F50128450"
}
],
"operator": "OR"
}
]
}
],
"sourceIdentifier": "security-advisories@github.com"
}