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.
{
"binaries": [
{
"binary_name": "libapache2-mod-passenger",
"binary_version": "5.0.22-1"
},
{
"binary_name": "libapache2-mod-passenger-dbgsym",
"binary_version": "5.0.22-1"
},
{
"binary_name": "passenger",
"binary_version": "5.0.22-1"
},
{
"binary_name": "passenger-dbgsym",
"binary_version": "5.0.22-1"
},
{
"binary_name": "passenger-doc",
"binary_version": "5.0.22-1"
},
{
"binary_name": "ruby-passenger",
"binary_version": "5.0.22-1"
},
{
"binary_name": "ruby-passenger-doc",
"binary_version": "5.0.22-1"
}
],
"availability": "No subscription required"
}