CVE-2026-40256
Full vulnerability record from the local CVENow database.
Description
Weblate is a web based localization tool. In versions prior to 5.17, repository-boundary validation relies on string prefix checks on resolved absolute paths. In multiple code paths, the check uses startswith against the repository root path. This is not path-segment aware and can be bypassed when the external path shares the same string prefix as the repository path (for example, repo and repo_outside). This issue has been fixed in version 5.17.
Severity
MEDIUM
CVSS score
5.0
(v3.1)
Vulnerability status
Analyzed
Source identifier
Published
2026-04-15 19:16:37.470000
Last modified
2026-10-26 21:10:00.170000
View original CVE JSON
{
"id": "CVE-2026-40256",
"sourceIdentifier": "[email protected]",
"published": "2026-04-15T19:16:37.470",
"lastModified": "2026-10-26T21:10:00.170",
"vulnStatus": "Analyzed",
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "Weblate is a web based localization tool. In versions prior to 5.17, repository-boundary validation relies on string prefix checks on resolved absolute paths. In multiple code paths, the check uses startswith against the repository root path. This is not path-segment aware and can be bypassed when the external path shares the same string prefix as the repository path (for example, repo and repo_outside). This issue has been fixed in version 5.17."
},
{
"lang": "es",
"value": "Weblate es una herramienta de localización basada en web. En versiones anteriores a la 5.17, la validación de límites de repositorio se basa en comprobaciones de prefijo de cadena en rutas absolutas resueltas. En múltiples rutas de código, la comprobación utiliza startswith contra la ruta raíz del repositorio. Esto no tiene en cuenta los segmentos de ruta y puede ser eludido cuando la ruta externa comparte el mismo prefijo de cadena que la ruta del repositorio (por ejemplo, repo y repo_outside). Este problema ha sido corregido en la versión 5.17."
}
],
"affected": [
{
"source": "[email protected]",
"affectedData": [
{
"vendor": "WeblateOrg",
"product": "weblate",
"versions": [
{
"version": "< 5.17",
"status": "affected"
}
]
}
]
}
],
"metrics": {
"cvssMetricV31": [
{
"source": "[email protected]",
"type": "Secondary",
"cvssData": {
"version": "3.1",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:N/A:N",
"baseScore": 5.0,
"baseSeverity": "MEDIUM",
"attackVector": "NETWORK",
"attackComplexity": "LOW",
"privilegesRequired": "LOW",
"userInteraction": "NONE",
"scope": "CHANGED",
"confidentialityImpact": "LOW",
"integrityImpact": "NONE",
"availabilityImpact": "NONE"
},
"exploitabilityScore": 3.1,
"impactScore": 1.4
}
],
"ssvcV203": [
{
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"ssvcData": {
"timestamp": "2026-04-16T14:10:48.501718Z",
"id": "CVE-2026-40256",
"options": [
{
"exploitation": "none"
},
{
"automatable": "no"
},
{
"technicalImpact": "partial"
}
],
"role": "CISA Coordinator",
"version": "2.0.3"
}
}
]
},
"weaknesses": [
{
"source": "[email protected]",
"type": "Secondary",
"description": [
{
"lang": "en",
"value": "CWE-22"
}
]
}
],
"configurations": [
{
"nodes": [
{
"operator": "OR",
"negate": false,
"cpeMatch": [
{
"vulnerable": true,
"criteria": "cpe:2.3:a:weblate:weblate:*:*:*:*:*:*:*:*",
"versionEndExcluding": "5.17",
"matchCriteriaId": "64AD3B80-D39E-4EAF-9CF8-B4D3C8A6C58A"
}
]
}
]
}
],
"references": [
{
"url": "https://github.com/WeblateOrg/weblate/commit/e30dbcb33ae78e754ecef192d54f996b89cb4e15",
"source": "[email protected]",
"tags": [
"Patch"
]
},
{
"url": "https://github.com/WeblateOrg/weblate/security/advisories/GHSA-ffgh-3jrf-8wvh",
"source": "[email protected]",
"tags": [
"Patch",
"Vendor Advisory"
]
}
]
}