CVE-2018-1000001
Published: 11 January 2018
In glibc 2.26 and earlier there is confusion in the usage of getcwd() by realpath() which can be used to write before the destination buffer leading to a buffer underflow and potential code execution.
From the Ubuntu Security Team
libc does not account for all the possible return values from the kernel getcwd(2) syscall; arbitrary code execution may result from applications making further assumptions on the return value from the getcwd(3) libary function.
Notes
Author | Note |
---|---|
seth-arnold | I wonder where Go, busybox, and similar "do it ourselves" tools fit. I added dietlibc and musl to this page out of an abundance of caution. Someone should investigate. |
sbeattie | introduced a regression in glusterfs geo-rep due to its usage of rsync. See redhat bug for compensating patch for rsync. |
msalvatore | Unlike in glibc, this issue does not cause a buffer underflow in musl. Furthermore, realpath() does not call getcwd() in musl. |
Priority
Status
Package | Release | Status |
---|---|---|
dietlibc Launchpad, Ubuntu, Debian |
artful |
Ignored
(end of life)
|
bionic |
Not vulnerable
(vulnerable code not present)
|
|
cosmic |
Ignored
(end of life)
|
|
disco |
Not vulnerable
(vulnerable code not present)
|
|
eoan |
Not vulnerable
(vulnerable code not present)
|
|
trusty |
Does not exist
(trusty was needs-triage)
|
|
upstream |
Not vulnerable
(vulnerable code not present)
|
|
xenial |
Not vulnerable
(vulnerable code not present)
|
|
zesty |
Ignored
(end of life)
|
|
eglibc Launchpad, Ubuntu, Debian |
artful |
Does not exist
|
bionic |
Does not exist
|
|
cosmic |
Does not exist
|
|
disco |
Does not exist
|
|
eoan |
Does not exist
|
|
trusty |
Released
(2.19-0ubuntu6.14)
|
|
upstream |
Needed
|
|
xenial |
Does not exist
|
|
zesty |
Does not exist
|
|
glibc Launchpad, Ubuntu, Debian |
artful |
Released
(2.26-0ubuntu2.1)
|
bionic |
Not vulnerable
(2.26-0ubuntu2.1)
|
|
cosmic |
Not vulnerable
(2.26-0ubuntu2.1)
|
|
disco |
Not vulnerable
(2.26-0ubuntu2.1)
|
|
eoan |
Not vulnerable
(2.26-0ubuntu2.1)
|
|
trusty |
Does not exist
|
|
upstream |
Needed
|
|
xenial |
Released
(2.23-0ubuntu10)
|
|
zesty |
Ignored
(end of life)
|
|
Patches: upstream: https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=52a713fdd0a30e1bd79818e2e3c4ab44ddca1a94 |
||
musl Launchpad, Ubuntu, Debian |
artful |
Ignored
(end of life)
|
bionic |
Not vulnerable
(1.1.19-1)
|
|
cosmic |
Not vulnerable
(1.1.19-1)
|
|
disco |
Not vulnerable
(1.1.19-1)
|
|
eoan |
Not vulnerable
(1.1.19-1)
|
|
upstream |
Released
(1.1.19)
|
|
zesty |
Ignored
(end of life)
|
|
trusty |
Released
(0.9.15-1ubuntu0.1~esm1)
Available with Ubuntu Pro or Ubuntu Pro (Infra-only) |
|
xenial |
Released
(1.1.9-1ubuntu0.1~esm2)
Available with Ubuntu Pro |
|
Patches: upstream: https://git.musl-libc.org/cgit/musl/commit/?id=23ddab8569ef8ae3488c1d67b6bccaa081c73245 |
Severity score breakdown
Parameter | Value |
---|---|
Base score | 7.8 |
Attack vector | Local |
Attack complexity | Low |
Privileges required | Low |
User interaction | None |
Scope | Unchanged |
Confidentiality | High |
Integrity impact | High |
Availability impact | High |
Vector | CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
References
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-1000001
- http://www.openwall.com/lists/oss-security/2018/01/11/5
- https://sourceware.org/bugzilla/show_bug.cgi?id=18203
- https://www.halfdog.net/Security/2017/LibcRealpathBufferUnderflow/
- https://ubuntu.com/security/notices/USN-3534-1
- https://ubuntu.com/security/notices/USN-3536-1
- https://lists.samba.org/archive/rsync/2018-February/031478.html
- NVD
- Launchpad
- Debian