When expanding paths that begin with a tilde (~) followed by a username, the internal parse_tilde function extracts the username to determine the user's home directory. The implementation allocates memory for this username directly on the stack using the strndupa macro. Because the size of this allocation was determined by the length of the user-supplied input without any bounds checks, passing an excessively long username e.g. thousands of characters, forces the thread to exhaust its stack space. Thus if an application passes untrusted, attacker-controlled input to the wordexp function, an attacker can trigger a stack clash.
{
"availability": "No subscription required",
"binaries": [
{
"binary_name": "glibc-source",
"binary_version": "2.35-0ubuntu3.15"
},
{
"binary_name": "libc-bin",
"binary_version": "2.35-0ubuntu3.15"
},
{
"binary_name": "libc-dev-bin",
"binary_version": "2.35-0ubuntu3.15"
},
{
"binary_name": "libc-devtools",
"binary_version": "2.35-0ubuntu3.15"
},
{
"binary_name": "libc6",
"binary_version": "2.35-0ubuntu3.15"
},
{
"binary_name": "libc6-amd64",
"binary_version": "2.35-0ubuntu3.15"
},
{
"binary_name": "libc6-dev-amd64",
"binary_version": "2.35-0ubuntu3.15"
},
{
"binary_name": "libc6-dev-i386",
"binary_version": "2.35-0ubuntu3.15"
},
{
"binary_name": "libc6-dev-s390",
"binary_version": "2.35-0ubuntu3.15"
},
{
"binary_name": "libc6-dev-x32",
"binary_version": "2.35-0ubuntu3.15"
},
{
"binary_name": "libc6-i386",
"binary_version": "2.35-0ubuntu3.15"
},
{
"binary_name": "libc6-prof",
"binary_version": "2.35-0ubuntu3.15"
},
{
"binary_name": "libc6-s390",
"binary_version": "2.35-0ubuntu3.15"
},
{
"binary_name": "libc6-x32",
"binary_version": "2.35-0ubuntu3.15"
},
{
"binary_name": "locales",
"binary_version": "2.35-0ubuntu3.15"
},
{
"binary_name": "locales-all",
"binary_version": "2.35-0ubuntu3.15"
},
{
"binary_name": "nscd",
"binary_version": "2.35-0ubuntu3.15"
}
]
}{
"availability": "No subscription required",
"binaries": [
{
"binary_name": "glibc-source",
"binary_version": "2.39-0ubuntu8.9"
},
{
"binary_name": "libc-bin",
"binary_version": "2.39-0ubuntu8.9"
},
{
"binary_name": "libc-dev-bin",
"binary_version": "2.39-0ubuntu8.9"
},
{
"binary_name": "libc-devtools",
"binary_version": "2.39-0ubuntu8.9"
},
{
"binary_name": "libc6",
"binary_version": "2.39-0ubuntu8.9"
},
{
"binary_name": "libc6-amd64",
"binary_version": "2.39-0ubuntu8.9"
},
{
"binary_name": "libc6-dev-amd64",
"binary_version": "2.39-0ubuntu8.9"
},
{
"binary_name": "libc6-dev-i386",
"binary_version": "2.39-0ubuntu8.9"
},
{
"binary_name": "libc6-dev-s390",
"binary_version": "2.39-0ubuntu8.9"
},
{
"binary_name": "libc6-dev-x32",
"binary_version": "2.39-0ubuntu8.9"
},
{
"binary_name": "libc6-i386",
"binary_version": "2.39-0ubuntu8.9"
},
{
"binary_name": "libc6-s390",
"binary_version": "2.39-0ubuntu8.9"
},
{
"binary_name": "libc6-x32",
"binary_version": "2.39-0ubuntu8.9"
},
{
"binary_name": "locales",
"binary_version": "2.39-0ubuntu8.9"
},
{
"binary_name": "locales-all",
"binary_version": "2.39-0ubuntu8.9"
},
{
"binary_name": "nscd",
"binary_version": "2.39-0ubuntu8.9"
}
]
}{
"availability": "No subscription required",
"binaries": [
{
"binary_name": "glibc-source",
"binary_version": "2.43-2ubuntu2.4"
},
{
"binary_name": "libc-bin",
"binary_version": "2.43-2ubuntu2.4"
},
{
"binary_name": "libc-dev-bin",
"binary_version": "2.43-2ubuntu2.4"
},
{
"binary_name": "libc-devtools",
"binary_version": "2.43-2ubuntu2.4"
},
{
"binary_name": "libc-gconv-modules-extra",
"binary_version": "2.43-2ubuntu2.4"
},
{
"binary_name": "libc6",
"binary_version": "2.43-2ubuntu2.4"
},
{
"binary_name": "libc6-amd64",
"binary_version": "2.43-2ubuntu2.4"
},
{
"binary_name": "libc6-dev-amd64",
"binary_version": "2.43-2ubuntu2.4"
},
{
"binary_name": "libc6-dev-i386",
"binary_version": "2.43-2ubuntu2.4"
},
{
"binary_name": "libc6-dev-x32",
"binary_version": "2.43-2ubuntu2.4"
},
{
"binary_name": "libc6-i386",
"binary_version": "2.43-2ubuntu2.4"
},
{
"binary_name": "libc6-x32",
"binary_version": "2.43-2ubuntu2.4"
},
{
"binary_name": "locales",
"binary_version": "2.43-2ubuntu2.4"
},
{
"binary_name": "locales-all",
"binary_version": "2.43-2ubuntu2.4"
},
{
"binary_name": "nscd",
"binary_version": "2.43-2ubuntu2.4"
}
]
}{
"binaries": [
{
"binary_name": "eglibc-source",
"binary_version": "2.19-0ubuntu6.15+esm4"
},
{
"binary_name": "libc-bin",
"binary_version": "2.19-0ubuntu6.15+esm4"
},
{
"binary_name": "libc-dev-bin",
"binary_version": "2.19-0ubuntu6.15+esm4"
},
{
"binary_name": "libc6",
"binary_version": "2.19-0ubuntu6.15+esm4"
},
{
"binary_name": "libc6-amd64",
"binary_version": "2.19-0ubuntu6.15+esm4"
},
{
"binary_name": "libc6-armel",
"binary_version": "2.19-0ubuntu6.15+esm4"
},
{
"binary_name": "libc6-dev-amd64",
"binary_version": "2.19-0ubuntu6.15+esm4"
},
{
"binary_name": "libc6-dev-armel",
"binary_version": "2.19-0ubuntu6.15+esm4"
},
{
"binary_name": "libc6-dev-i386",
"binary_version": "2.19-0ubuntu6.15+esm4"
},
{
"binary_name": "libc6-dev-x32",
"binary_version": "2.19-0ubuntu6.15+esm4"
},
{
"binary_name": "libc6-i386",
"binary_version": "2.19-0ubuntu6.15+esm4"
},
{
"binary_name": "libc6-pic",
"binary_version": "2.19-0ubuntu6.15+esm4"
},
{
"binary_name": "libc6-prof",
"binary_version": "2.19-0ubuntu6.15+esm4"
},
{
"binary_name": "libc6-x32",
"binary_version": "2.19-0ubuntu6.15+esm4"
},
{
"binary_name": "multiarch-support",
"binary_version": "2.19-0ubuntu6.15+esm4"
},
{
"binary_name": "nscd",
"binary_version": "2.19-0ubuntu6.15+esm4"
}
]
}{
"binaries": [
{
"binary_name": "glibc-source",
"binary_version": "2.23-0ubuntu11.3+esm9"
},
{
"binary_name": "libc-bin",
"binary_version": "2.23-0ubuntu11.3+esm9"
},
{
"binary_name": "libc-dev-bin",
"binary_version": "2.23-0ubuntu11.3+esm9"
},
{
"binary_name": "libc6",
"binary_version": "2.23-0ubuntu11.3+esm9"
},
{
"binary_name": "libc6-amd64",
"binary_version": "2.23-0ubuntu11.3+esm9"
},
{
"binary_name": "libc6-armel",
"binary_version": "2.23-0ubuntu11.3+esm9"
},
{
"binary_name": "libc6-dev-amd64",
"binary_version": "2.23-0ubuntu11.3+esm9"
},
{
"binary_name": "libc6-dev-armel",
"binary_version": "2.23-0ubuntu11.3+esm9"
},
{
"binary_name": "libc6-dev-i386",
"binary_version": "2.23-0ubuntu11.3+esm9"
},
{
"binary_name": "libc6-dev-s390",
"binary_version": "2.23-0ubuntu11.3+esm9"
},
{
"binary_name": "libc6-dev-x32",
"binary_version": "2.23-0ubuntu11.3+esm9"
},
{
"binary_name": "libc6-i386",
"binary_version": "2.23-0ubuntu11.3+esm9"
},
{
"binary_name": "libc6-pic",
"binary_version": "2.23-0ubuntu11.3+esm9"
},
{
"binary_name": "libc6-s390",
"binary_version": "2.23-0ubuntu11.3+esm9"
},
{
"binary_name": "libc6-x32",
"binary_version": "2.23-0ubuntu11.3+esm9"
},
{
"binary_name": "locales",
"binary_version": "2.23-0ubuntu11.3+esm9"
},
{
"binary_name": "locales-all",
"binary_version": "2.23-0ubuntu11.3+esm9"
},
{
"binary_name": "multiarch-support",
"binary_version": "2.23-0ubuntu11.3+esm9"
},
{
"binary_name": "nscd",
"binary_version": "2.23-0ubuntu11.3+esm9"
}
]
}{
"binaries": [
{
"binary_name": "glibc-source",
"binary_version": "2.27-3ubuntu1.6+esm6"
},
{
"binary_name": "libc-bin",
"binary_version": "2.27-3ubuntu1.6+esm6"
},
{
"binary_name": "libc-dev-bin",
"binary_version": "2.27-3ubuntu1.6+esm6"
},
{
"binary_name": "libc6",
"binary_version": "2.27-3ubuntu1.6+esm6"
},
{
"binary_name": "libc6-amd64",
"binary_version": "2.27-3ubuntu1.6+esm6"
},
{
"binary_name": "libc6-armel",
"binary_version": "2.27-3ubuntu1.6+esm6"
},
{
"binary_name": "libc6-dev-amd64",
"binary_version": "2.27-3ubuntu1.6+esm6"
},
{
"binary_name": "libc6-dev-armel",
"binary_version": "2.27-3ubuntu1.6+esm6"
},
{
"binary_name": "libc6-dev-i386",
"binary_version": "2.27-3ubuntu1.6+esm6"
},
{
"binary_name": "libc6-dev-s390",
"binary_version": "2.27-3ubuntu1.6+esm6"
},
{
"binary_name": "libc6-dev-x32",
"binary_version": "2.27-3ubuntu1.6+esm6"
},
{
"binary_name": "libc6-i386",
"binary_version": "2.27-3ubuntu1.6+esm6"
},
{
"binary_name": "libc6-lse",
"binary_version": "2.27-3ubuntu1.6+esm6"
},
{
"binary_name": "libc6-pic",
"binary_version": "2.27-3ubuntu1.6+esm6"
},
{
"binary_name": "libc6-s390",
"binary_version": "2.27-3ubuntu1.6+esm6"
},
{
"binary_name": "libc6-x32",
"binary_version": "2.27-3ubuntu1.6+esm6"
},
{
"binary_name": "locales",
"binary_version": "2.27-3ubuntu1.6+esm6"
},
{
"binary_name": "locales-all",
"binary_version": "2.27-3ubuntu1.6+esm6"
},
{
"binary_name": "multiarch-support",
"binary_version": "2.27-3ubuntu1.6+esm6"
},
{
"binary_name": "nscd",
"binary_version": "2.27-3ubuntu1.6+esm6"
}
]
}{
"binaries": [
{
"binary_name": "glibc-source",
"binary_version": "2.31-0ubuntu9.18+esm1"
},
{
"binary_name": "libc-bin",
"binary_version": "2.31-0ubuntu9.18+esm1"
},
{
"binary_name": "libc-dev-bin",
"binary_version": "2.31-0ubuntu9.18+esm1"
},
{
"binary_name": "libc6",
"binary_version": "2.31-0ubuntu9.18+esm1"
},
{
"binary_name": "libc6-amd64",
"binary_version": "2.31-0ubuntu9.18+esm1"
},
{
"binary_name": "libc6-armel",
"binary_version": "2.31-0ubuntu9.18+esm1"
},
{
"binary_name": "libc6-dev-amd64",
"binary_version": "2.31-0ubuntu9.18+esm1"
},
{
"binary_name": "libc6-dev-armel",
"binary_version": "2.31-0ubuntu9.18+esm1"
},
{
"binary_name": "libc6-dev-i386",
"binary_version": "2.31-0ubuntu9.18+esm1"
},
{
"binary_name": "libc6-dev-s390",
"binary_version": "2.31-0ubuntu9.18+esm1"
},
{
"binary_name": "libc6-dev-x32",
"binary_version": "2.31-0ubuntu9.18+esm1"
},
{
"binary_name": "libc6-i386",
"binary_version": "2.31-0ubuntu9.18+esm1"
},
{
"binary_name": "libc6-lse",
"binary_version": "2.31-0ubuntu9.18+esm1"
},
{
"binary_name": "libc6-pic",
"binary_version": "2.31-0ubuntu9.18+esm1"
},
{
"binary_name": "libc6-prof",
"binary_version": "2.31-0ubuntu9.18+esm1"
},
{
"binary_name": "libc6-s390",
"binary_version": "2.31-0ubuntu9.18+esm1"
},
{
"binary_name": "libc6-x32",
"binary_version": "2.31-0ubuntu9.18+esm1"
},
{
"binary_name": "locales",
"binary_version": "2.31-0ubuntu9.18+esm1"
},
{
"binary_name": "locales-all",
"binary_version": "2.31-0ubuntu9.18+esm1"
},
{
"binary_name": "nscd",
"binary_version": "2.31-0ubuntu9.18+esm1"
}
]
}