CVE-2018-1000888 Archive_Tar contains Potential RCE if filename starts with phar://

High 8.8 Published Updated

Attackers can achieve remote code execution or arbitrary file deletion via PHP object injection in the Archive_Tar library.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
A user has to click or open something
Fix
Available

What is CVE-2018-1000888?

CVE-2018-1000888 is a high-severity unsafe deserialization vulnerability in Canonical Ubuntu Linux, published on 27 Dec 2018. An attacker can exploit it over the internet without logging in, and only if a user opens a file or follows a link.

Official description

PEAR Archive_Tar version 1.4.3 and earlier contains a CWE-502, CWE-915 vulnerability in the Archive_Tar class. There are several file operations with `$v_header['filename']` as parameter (such as file_exists, is_file, is_dir, etc). When extract is called without a specific prefix path, we can trigger unserialization by crafting a tar file with `phar://[path_to_malicious_phar_file]` as path. Object injection can be used to trigger destruct in the loaded PHP classes, e.g. the Archive_Tar class itself. With Archive_Tar object injection, arbitrary file deletion can occur because `@unlink($this->_temp_tarname)` is called. If another class with useful gadget is loaded, it may possible to cause remote code execution that can result in files being deleted or possibly modified. This vulnerability appears to have been fixed in 1.4.4.

Weakness: CWE-502

Which versions are affected by CVE-2018-1000888?

2 open source packages ship an affected version, including pear/archive_tar. It affects 3 products.

PackageAffectedFixed in
pear/archive_tar PackagistAll versions1.4.4
pear/archive_tar PackagistAll versions1.4.4

Products include Canonical Ubuntu Linux, Debian Debian Linux, Php Pear Archive Tar.

How do I fix CVE-2018-1000888?

Upgrade pear/archive_tar to 1.4.4 or later.

Upgrade, and only deserialise data from trusted sources or with an allow-list of types. More about Unsafe deserialization.

Is CVE-2018-1000888 being exploited?

There is no known exploitation of CVE-2018-1000888 in the wild and no public exploit code.

Public exploit code: 1 Exploit-DB entry.

All Canonical Ubuntu Linux vulnerabilities

Sources

Also known as CLEANSTART-2024-AG03928, DEBIAN-CVE-2018-1000888, DLA-1674-1, DSA-4378-1, GHSA-3q76-jq6m-573p, UBUNTU-CVE-2018-1000888 and 1 more.

Is CVE-2018-1000888 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free