CVE-2019-12749 Path traversal in n/a
A symlink mishandling in D-Bus allows attackers to spoof authentication cookies, potentially bypassing authentication and escalating privileges.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Local or same network only
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2019-12749?
CVE-2019-12749 is a high-severity path traversal vulnerability in Canonical Ubuntu Linux, published on 11 Jun 2019. It can only be exploited from the same machine or local network, with no action from the victim.
Official description
dbus before 1.10.28, 1.12.x before 1.12.16, and 1.13.x before 1.13.12, as used in DBusServer in Canonical Upstart in Ubuntu 14.04 (and in some, less common, uses of dbus-daemon), allows cookie spoofing because of symlink mishandling in the reference implementation of DBUS_COOKIE_SHA1 in the libdbus library. (This only affects the DBUS_COOKIE_SHA1 authentication mechanism.) A malicious client with write access to its own home directory could manipulate a ~/.dbus-keyrings symlink to cause a DBusServer with a different uid to read and write in unintended locations. In the worst case, this could result in the DBusServer reusing a cookie that is known to the malicious client, and treating that cookie as evidence that a subsequent client connection came from an attacker-chosen uid, allowing authentication bypass.
Weakness: CWE-59
Which versions are affected by CVE-2019-12749?
It affects 2 products.
Linux distribution packages (40)
dbus Red Hat:enterprise_linux:6::client | All versions | 1:1.2.24-11.el6_10 |
dbus-debuginfo Red Hat:enterprise_linux:6::client | All versions | 1:1.2.24-11.el6_10 |
dbus-devel Red Hat:enterprise_linux:6::client | All versions | 1:1.2.24-11.el6_10 |
dbus-doc Red Hat:enterprise_linux:6::client | All versions | 1:1.2.24-11.el6_10 |
dbus-libs Red Hat:enterprise_linux:6::client | All versions | 1:1.2.24-11.el6_10 |
dbus-x11 Red Hat:enterprise_linux:6::client | All versions | 1:1.2.24-11.el6_10 |
dbus Red Hat:enterprise_linux:6::computenode | All versions | 1:1.2.24-11.el6_10 |
dbus-debuginfo Red Hat:enterprise_linux:6::computenode | All versions | 1:1.2.24-11.el6_10 |
dbus-devel Red Hat:enterprise_linux:6::computenode | All versions | 1:1.2.24-11.el6_10 |
dbus-doc Red Hat:enterprise_linux:6::computenode | All versions | 1:1.2.24-11.el6_10 |
dbus-libs Red Hat:enterprise_linux:6::computenode | All versions | 1:1.2.24-11.el6_10 |
dbus-x11 Red Hat:enterprise_linux:6::computenode | All versions | 1:1.2.24-11.el6_10 |
dbus Red Hat:enterprise_linux:6::server | All versions | 1:1.2.24-11.el6_10 |
dbus-debuginfo Red Hat:enterprise_linux:6::server | All versions | 1:1.2.24-11.el6_10 |
dbus-devel Red Hat:enterprise_linux:6::server | All versions | 1:1.2.24-11.el6_10 |
dbus-doc Red Hat:enterprise_linux:6::server | All versions | 1:1.2.24-11.el6_10 |
dbus-libs Red Hat:enterprise_linux:6::server | All versions | 1:1.2.24-11.el6_10 |
dbus-x11 Red Hat:enterprise_linux:6::server | All versions | 1:1.2.24-11.el6_10 |
dbus Red Hat:enterprise_linux:6::workstation | All versions | 1:1.2.24-11.el6_10 |
dbus-debuginfo Red Hat:enterprise_linux:6::workstation | All versions | 1:1.2.24-11.el6_10 |
dbus-devel Red Hat:enterprise_linux:6::workstation | All versions | 1:1.2.24-11.el6_10 |
dbus-doc Red Hat:enterprise_linux:6::workstation | All versions | 1:1.2.24-11.el6_10 |
dbus-libs Red Hat:enterprise_linux:6::workstation | All versions | 1:1.2.24-11.el6_10 |
dbus-x11 Red Hat:enterprise_linux:6::workstation | All versions | 1:1.2.24-11.el6_10 |
dbus Red Hat:enterprise_linux:7::client | All versions | 1:1.10.24-15.el7 |
dbus-debuginfo Red Hat:enterprise_linux:7::client | All versions | 1:1.10.24-15.el7 |
dbus-devel Red Hat:enterprise_linux:7::client | All versions | 1:1.10.24-15.el7 |
dbus-doc Red Hat:enterprise_linux:7::client | All versions | 1:1.10.24-15.el7 |
dbus-libs Red Hat:enterprise_linux:7::client | All versions | 1:1.10.24-15.el7 |
dbus-tests Red Hat:enterprise_linux:7::client | All versions | 1:1.10.24-15.el7 |
dbus-x11 Red Hat:enterprise_linux:7::client | All versions | 1:1.10.24-15.el7 |
dbus Red Hat:enterprise_linux:7::computenode | All versions | 1:1.10.24-15.el7 |
dbus-debuginfo Red Hat:enterprise_linux:7::computenode | All versions | 1:1.10.24-15.el7 |
dbus-devel Red Hat:enterprise_linux:7::computenode | All versions | 1:1.10.24-15.el7 |
dbus-doc Red Hat:enterprise_linux:7::computenode | All versions | 1:1.10.24-15.el7 |
dbus-libs Red Hat:enterprise_linux:7::computenode | All versions | 1:1.10.24-15.el7 |
dbus-tests Red Hat:enterprise_linux:7::computenode | All versions | 1:1.10.24-15.el7 |
dbus-x11 Red Hat:enterprise_linux:7::computenode | All versions | 1:1.10.24-15.el7 |
dbus Red Hat:enterprise_linux:7::server | All versions | 1:1.10.24-15.el7 |
dbus-debuginfo Red Hat:enterprise_linux:7::server | All versions | 1:1.10.24-15.el7 |
Products include Canonical Ubuntu Linux, Freedesktop Dbus.
How do I fix CVE-2019-12749?
Upgrade to a fixed version.
Upgrade, and resolve every user-supplied path against an allowed base folder before opening it. More about Path traversal.
Is CVE-2019-12749 being exploited?
There is no known exploitation of CVE-2019-12749 in the wild and no public exploit code.
Other vulnerabilities in Canonical Ubuntu Linux
Sources
Also known as ALPINE-CVE-2019-12749, AZL-6371, DEBIAN-CVE-2019-12749, DLA-1818-1, DSA-4462-1, GHSA-2hpj-v4f4-7g4j and 19 more.