blob: ccc8bf8812baf4b7b6d46e7a75e71075dd1c2834 [file]
{
"dataType": "CVE_RECORD",
"dataVersion": "5.0",
"cveMetadata": {
"cveId": "CVE-2026-39822"
},
"containers": {
"cna": {
"providerMetadata": {
"orgId": "1bb62c36-49e3-4200-9d77-64a1400537cc"
},
"title": "Root escape via symlink plus trailing slash in os",
"descriptions": [
{
"lang": "en",
"value": "On Unix systems, opening a file in an os.Root improperly follows symlinks to locations outside of the Root when the final path component of the a path is a symbolic link and the path ends in /. For example, 'root.Open(\"symlink/\")' will open \"symlink\" even when \"symlink\" is a symbolic link pointing outside of the root."
}
],
"affected": [
{
"vendor": "Go standard library",
"product": "os",
"collectionURL": "https://pkg.go.dev",
"packageName": "os",
"versions": [
{
"version": "0",
"lessThan": "1.25.12",
"status": "affected",
"versionType": "semver"
},
{
"version": "1.26.0-0",
"lessThan": "1.26.5",
"status": "affected",
"versionType": "semver"
},
{
"version": "1.27.0-0",
"lessThan": "1.27.0-rc.2",
"status": "affected",
"versionType": "semver"
}
],
"programRoutines": [
{
"name": "rootOpenFileNolog"
},
{
"name": "openRootInRoot"
},
{
"name": "OpenInRoot"
},
{
"name": "Root.Create"
},
{
"name": "Root.Open"
},
{
"name": "Root.OpenFile"
},
{
"name": "Root.OpenRoot"
},
{
"name": "Root.ReadFile"
},
{
"name": "Root.WriteFile"
},
{
"name": "rootFS.Open"
},
{
"name": "rootFS.ReadDir"
},
{
"name": "rootFS.ReadFile"
}
],
"defaultStatus": "unaffected"
}
],
"problemTypes": [
{
"descriptions": [
{
"lang": "en",
"description": "CWE-61: UNIX Symbolic Link (Symlink) Following"
}
]
}
],
"references": [
{
"url": "https://go.dev/issue/79005"
},
{
"url": "https://groups.google.com/g/golang-announce/c/OrmQE_Yp5Sc"
},
{
"url": "https://go.dev/cl/797880"
},
{
"url": "https://pkg.go.dev/vuln/GO-2026-4970"
}
],
"credits": [
{
"lang": "en",
"value": "Mundur (https://github.com/M0nd0R)"
}
]
}
}
}