Skip to content

CVE-2015-7519 Phusion Passenger allows remote attackers to spoof headers

LowCVSS 3.7 EPSS 2.4% PoC
Published
Updated
Exploit status
Proof-of-concept only

Description

agent/Core/Controller/SendRequest.cpp in Phusion Passenger before 4.0.60 and 5.0.x before 5.0.22, when used in Apache integration mode or in standalone mode without a filtering proxy, allows remote attackers to spoof headers passed to applications by using an _ (underscore) character instead of a - (dash) character in an HTTP header, as demonstrated by an X_User header.

Affected products

ProductAffected versionsFixed in
rubygems passenger(RubyGems) < 4.0.60 4.0.60
rubygems passenger(RubyGems) >= 5.0.0, < 5.0.22 5.0.22
rubygems passenger(RubyGems) = 1.0.1 No fix listed
rubygems passenger(RubyGems) = 1.0.2 No fix listed
rubygems passenger(RubyGems) = 1.0.3 No fix listed
rubygems passenger(RubyGems) = 1.0.4 No fix listed
rubygems passenger(RubyGems) = 1.0.5 No fix listed
rubygems passenger(RubyGems) = 2.0.1 No fix listed
rubygems passenger(RubyGems) = 2.0.2 No fix listed
rubygems passenger(RubyGems) = 2.0.3 No fix listed
rubygems passenger(RubyGems) = 2.0.4 No fix listed
rubygems passenger(RubyGems) = 2.0.5 No fix listed
rubygems passenger(RubyGems) = 2.0.6 No fix listed
rubygems passenger(RubyGems) = 2.1.2 No fix listed
rubygems passenger(RubyGems) = 2.1.3 No fix listed
rubygems passenger(RubyGems) = 2.2.0 No fix listed
rubygems passenger(RubyGems) = 2.2.1 No fix listed
rubygems passenger(RubyGems) = 2.2.10 No fix listed
rubygems passenger(RubyGems) = 2.2.11 No fix listed
rubygems passenger(RubyGems) = 2.2.12 No fix listed
rubygems passenger(RubyGems) = 2.2.13 No fix listed
rubygems passenger(RubyGems) = 2.2.14 No fix listed
rubygems passenger(RubyGems) = 2.2.15 No fix listed
rubygems passenger(RubyGems) = 2.2.2 No fix listed
rubygems passenger(RubyGems) = 2.2.3 No fix listed
Show 137 more
ProductAffected versionsFixed in
rubygems passenger(RubyGems) = 2.2.4 No fix listed
rubygems passenger(RubyGems) = 2.2.5 No fix listed
rubygems passenger(RubyGems) = 2.2.6 No fix listed
rubygems passenger(RubyGems) = 2.2.7 No fix listed
rubygems passenger(RubyGems) = 2.2.8 No fix listed
rubygems passenger(RubyGems) = 2.2.9 No fix listed
rubygems passenger(RubyGems) = 3.0.0 No fix listed
rubygems passenger(RubyGems) = 3.0.0.pre1 No fix listed
rubygems passenger(RubyGems) = 3.0.0.pre2 No fix listed
rubygems passenger(RubyGems) = 3.0.0.pre3 No fix listed
rubygems passenger(RubyGems) = 3.0.0.pre4 No fix listed
rubygems passenger(RubyGems) = 3.0.1 No fix listed
rubygems passenger(RubyGems) = 3.0.10 No fix listed
rubygems passenger(RubyGems) = 3.0.11 No fix listed
rubygems passenger(RubyGems) = 3.0.12 No fix listed
rubygems passenger(RubyGems) = 3.0.13 No fix listed
rubygems passenger(RubyGems) = 3.0.14 No fix listed
rubygems passenger(RubyGems) = 3.0.15 No fix listed
rubygems passenger(RubyGems) = 3.0.17 No fix listed
rubygems passenger(RubyGems) = 3.0.18 No fix listed
rubygems passenger(RubyGems) = 3.0.19 No fix listed
rubygems passenger(RubyGems) = 3.0.2 No fix listed
rubygems passenger(RubyGems) = 3.0.21 No fix listed
rubygems passenger(RubyGems) = 3.0.3 No fix listed
rubygems passenger(RubyGems) = 3.0.4 No fix listed
rubygems passenger(RubyGems) = 3.0.5 No fix listed
rubygems passenger(RubyGems) = 3.0.6 No fix listed
rubygems passenger(RubyGems) = 3.0.7 No fix listed
rubygems passenger(RubyGems) = 3.0.8 No fix listed
rubygems passenger(RubyGems) = 3.0.9 No fix listed
rubygems passenger(RubyGems) = 3.9.1.beta No fix listed
rubygems passenger(RubyGems) = 3.9.2.beta No fix listed
rubygems passenger(RubyGems) = 4.0.0.rc4 No fix listed
rubygems passenger(RubyGems) = 4.0.0.rc6 No fix listed
rubygems passenger(RubyGems) = 4.0.1 No fix listed
rubygems passenger(RubyGems) = 4.0.10 No fix listed
rubygems passenger(RubyGems) = 4.0.13 No fix listed
rubygems passenger(RubyGems) = 4.0.14 No fix listed
rubygems passenger(RubyGems) = 4.0.16 No fix listed
rubygems passenger(RubyGems) = 4.0.17 No fix listed
rubygems passenger(RubyGems) = 4.0.18 No fix listed
rubygems passenger(RubyGems) = 4.0.19 No fix listed
rubygems passenger(RubyGems) = 4.0.2 No fix listed
rubygems passenger(RubyGems) = 4.0.20 No fix listed
rubygems passenger(RubyGems) = 4.0.21 No fix listed
rubygems passenger(RubyGems) = 4.0.23 No fix listed
rubygems passenger(RubyGems) = 4.0.24 No fix listed
rubygems passenger(RubyGems) = 4.0.25 No fix listed
rubygems passenger(RubyGems) = 4.0.26 No fix listed
rubygems passenger(RubyGems) = 4.0.27 No fix listed
rubygems passenger(RubyGems) = 4.0.28 No fix listed
rubygems passenger(RubyGems) = 4.0.29 No fix listed
rubygems passenger(RubyGems) = 4.0.3 No fix listed
rubygems passenger(RubyGems) = 4.0.30 No fix listed
rubygems passenger(RubyGems) = 4.0.31 No fix listed
rubygems passenger(RubyGems) = 4.0.32 No fix listed
rubygems passenger(RubyGems) = 4.0.33 No fix listed
rubygems passenger(RubyGems) = 4.0.34 No fix listed
rubygems passenger(RubyGems) = 4.0.35 No fix listed
rubygems passenger(RubyGems) = 4.0.36 No fix listed
rubygems passenger(RubyGems) = 4.0.37 No fix listed
rubygems passenger(RubyGems) = 4.0.38 No fix listed
rubygems passenger(RubyGems) = 4.0.39 No fix listed
rubygems passenger(RubyGems) = 4.0.4 No fix listed
rubygems passenger(RubyGems) = 4.0.40 No fix listed
rubygems passenger(RubyGems) = 4.0.41 No fix listed
rubygems passenger(RubyGems) = 4.0.42 No fix listed
rubygems passenger(RubyGems) = 4.0.43 No fix listed
rubygems passenger(RubyGems) = 4.0.44 No fix listed
rubygems passenger(RubyGems) = 4.0.45 No fix listed
rubygems passenger(RubyGems) = 4.0.46 No fix listed
rubygems passenger(RubyGems) = 4.0.48 No fix listed
rubygems passenger(RubyGems) = 4.0.49 No fix listed
rubygems passenger(RubyGems) = 4.0.5 No fix listed
rubygems passenger(RubyGems) = 4.0.50 No fix listed
rubygems passenger(RubyGems) = 4.0.51 No fix listed
rubygems passenger(RubyGems) = 4.0.52 No fix listed
rubygems passenger(RubyGems) = 4.0.53 No fix listed
rubygems passenger(RubyGems) = 4.0.55 No fix listed
rubygems passenger(RubyGems) = 4.0.56 No fix listed
rubygems passenger(RubyGems) = 4.0.57 No fix listed
rubygems passenger(RubyGems) = 4.0.58 No fix listed
rubygems passenger(RubyGems) = 4.0.59 No fix listed
rubygems passenger(RubyGems) = 4.0.6 No fix listed
rubygems passenger(RubyGems) = 4.0.7 No fix listed
rubygems passenger(RubyGems) = 4.0.8 No fix listed
rubygems passenger(RubyGems) = 5.0.1 No fix listed
rubygems passenger(RubyGems) = 5.0.10 No fix listed
rubygems passenger(RubyGems) = 5.0.11 No fix listed
rubygems passenger(RubyGems) = 5.0.13 No fix listed
rubygems passenger(RubyGems) = 5.0.14 No fix listed
rubygems passenger(RubyGems) = 5.0.15 No fix listed
rubygems passenger(RubyGems) = 5.0.16 No fix listed
rubygems passenger(RubyGems) = 5.0.17 No fix listed
rubygems passenger(RubyGems) = 5.0.18 No fix listed
rubygems passenger(RubyGems) = 5.0.19 No fix listed
rubygems passenger(RubyGems) = 5.0.2 No fix listed
rubygems passenger(RubyGems) = 5.0.20 No fix listed
rubygems passenger(RubyGems) = 5.0.21 No fix listed
rubygems passenger(RubyGems) = 5.0.3 No fix listed
rubygems passenger(RubyGems) = 5.0.4 No fix listed
rubygems passenger(RubyGems) = 5.0.5 No fix listed
rubygems passenger(RubyGems) = 5.0.6 No fix listed
rubygems passenger(RubyGems) = 5.0.7 No fix listed
rubygems passenger(RubyGems) = 5.0.8 No fix listed
rubygems passenger(RubyGems) = 5.0.9 No fix listed
debian/passenger(Debian:12) < 5.0.22-1 5.0.22-1
debian/passenger(Debian:13) < 5.0.22-1 5.0.22-1
debian/passenger(Debian:14) < 5.0.22-1 5.0.22-1
phusionpassenger phusion passenger <= 4.0.59 No fix listed
phusionpassenger phusion passenger = 5.0.0 No fix listed
phusionpassenger phusion passenger = 5.0.0-beta1 No fix listed
phusionpassenger phusion passenger = 5.0.0-beta2 No fix listed
phusionpassenger phusion passenger = 5.0.0-beta3 No fix listed
phusionpassenger phusion passenger = 5.0.0-rc1 No fix listed
phusionpassenger phusion passenger = 5.0.0-rc2 No fix listed
phusionpassenger phusion passenger = 5.0.1 No fix listed
phusionpassenger phusion passenger = 5.0.2 No fix listed
phusionpassenger phusion passenger = 5.0.3 No fix listed
phusionpassenger phusion passenger = 5.0.4 No fix listed
phusionpassenger phusion passenger = 5.0.5 No fix listed
phusionpassenger phusion passenger = 5.0.6 No fix listed
phusionpassenger phusion passenger = 5.0.7 No fix listed
phusionpassenger phusion passenger = 5.0.8 No fix listed
phusionpassenger phusion passenger = 5.0.9 No fix listed
phusionpassenger phusion passenger = 5.0.10 No fix listed
phusionpassenger phusion passenger = 5.0.11 No fix listed
phusionpassenger phusion passenger = 5.0.12 No fix listed
phusionpassenger phusion passenger = 5.0.13 No fix listed
phusionpassenger phusion passenger = 5.0.14 No fix listed
phusionpassenger phusion passenger = 5.0.15 No fix listed
phusionpassenger phusion passenger = 5.0.16 No fix listed
phusionpassenger phusion passenger = 5.0.17 No fix listed
phusionpassenger phusion passenger = 5.0.18 No fix listed
phusionpassenger phusion passenger = 5.0.19 No fix listed
phusionpassenger phusion passenger = 5.0.20 No fix listed
phusionpassenger phusion passenger = 5.0.21 No fix listed

References