#VU31147 Path traversal in pacman - CVE-2019-9686


| Updated: 2020-07-17

Vulnerability identifier: #VU31147

Vulnerability risk: High

CVSSv4.0: 8.1 [CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:U/U:Amber]

CVE-ID: CVE-2019-9686

CWE-ID: CWE-22

Exploitation vector: Network

Exploit availability: No

Vulnerable software:
pacman
Client/Desktop applications / Software for system administration

Vendor: Arch Linux

Description

The vulnerability allows a remote non-authenticated attacker to execute arbitrary code.

pacman before 5.1.3 allows directory traversal when installing a remote package via a specified URL "pacman -U <url>" due to an unsanitized file name received from a Content-Disposition header. pacman renames the downloaded package file to match the name given in this header. However, pacman did not sanitize this name, which may contain slashes, before calling rename(). A malicious server (or a network MitM if downloading over HTTP) can send a Content-Disposition header to make pacman place the file anywhere in the filesystem, potentially leading to arbitrary root code execution. Notably, this bypasses pacman's package signature checking. This occurs in curl_download_internal in lib/libalpm/dload.c.

Mitigation
Install update from vendor's website.

Vulnerable software versions

pacman: 5.1.0 - 5.1.2


External links
https://git.archlinux.org/pacman.git/commit/?h=release/5.1.x&id=1bf767234363f7ad5933af3f7ce267c123017bde
https://git.archlinux.org/pacman.git/commit/?id=9702703633bec2c007730006de2aeec8587dfc84
https://git.archlinux.org/pacman.git/commit/?id=d197d8ab82cf10650487518fb968067897a12775


Q & A

Can this vulnerability be exploited remotely?

Yes. This vulnerability can be exploited by a remote non-authenticated attacker via the Internet.

Is there known malware, which exploits this vulnerability?

No. We are not aware of malware exploiting this vulnerability.


Latest bulletins with this vulnerability