CVE-2016-10345 Phusion Passenger uses a known /tmp filename

High 7.8 Published Updated

Local attackers can exploit a predictable temporary file path during module installation to gain the privileges of the Passenger user.

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-2016-10345?

CVE-2016-10345 is a high-severity path traversal vulnerability in n/a, published on 18 Apr 2017. It can only be exploited from the same machine or local network, with no action from the victim.

Official description

In Phusion Passenger before 5.1.0, a known /tmp filename was used during passenger-install-nginx-module execution, which could allow local attackers to gain the privileges of the passenger user.

Weakness: CWE-264

Which versions are affected by CVE-2016-10345?

2 open source packages ship an affected version, including passenger. It affects 1 product.

PackageAffectedFixed in
passenger RubyGemsAll versions5.1.0
passenger RubyGemsAll versions5.1.0
Linux distribution packages (3)
rubygem-passenger SUSE:Lifecycle Management Server 1.3All versions3.0.14-0.17.1
rubygem-passenger SUSE:Studio Onsite 1.3All versions3.0.14-0.17.1
rubygem-passenger SUSE:WebYast 1.3All versions3.0.14-0.17.1

Products include Phusion Passenger.

How do I fix CVE-2016-10345?

Upgrade passenger to 5.1.0 or later.

Upgrade, and resolve every user-supplied path against an allowed base folder before opening it. More about Path traversal.

Is CVE-2016-10345 being exploited?

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

Sources

Also known as DEBIAN-CVE-2016-10345, GHSA-cqxw-3p7v-p9gr, SUSE-SU-2017:1316-1, UBUNTU-CVE-2016-10345.

Is CVE-2016-10345 in your software?

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

Check your SBOMs for free