First published: Mon Jan 07 2013(Updated: )
Michael Scherer reported that the passenger ruby gem, when used in standalone mode, does not use temporary files in a secure manner. In the lib/phusion_passenger/standalone/main.rb's create_nginx_controller function, passenger creates an nginx configuration file insecurely and starts nginx with that configuration file: @temp_dir = "/tmp/passenger-standalone.#{$$}" @config_filename = "#{@temp_dir}/config" If a local attacker were able to create a temporary directory that passenger uses and supply a custom nginx configuration file they could start an nginx instance with their own configuration file. This could result in a denial of service condition for a legitimate service or, if passenger were executed as root (in order to have nginx listen on port 80, for instance), this could lead to a local root compromise.
Credit: secalert@redhat.com
Affected Software | Affected Version | How to fix |
---|---|---|
Phusion Passenger | <=3.0.20 | |
Phusion Passenger | =3.0.0 | |
Phusion Passenger | =3.0.1 | |
Phusion Passenger | =3.0.2 | |
Phusion Passenger | =3.0.3 | |
Phusion Passenger | =3.0.4 | |
Phusion Passenger | =3.0.5 | |
Phusion Passenger | =3.0.6 | |
Phusion Passenger | =3.0.7 | |
Phusion Passenger | =3.0.8 | |
Phusion Passenger | =3.0.9 | |
Phusion Passenger | =3.0.10 | |
Phusion Passenger | =3.0.11 | |
Phusion Passenger | =3.0.12 | |
Phusion Passenger | =3.0.13 | |
Phusion Passenger | =3.0.14 | |
Phusion Passenger | =3.0.15 | |
Phusion Passenger | =3.0.17 | |
Phusion Passenger | =3.0.18 | |
Phusion Passenger | =3.0.19 | |
Phusion Passenger | =4.0.1 | |
Phusion Passenger | =4.0.2 | |
Phusion Passenger | =4.0.3 | |
Phusion Passenger | =4.0.4 | |
Ruby-lang Ruby | ||
Redhat Openshift | =1.0 |
Sign up to SecAlerts for real-time vulnerability data matched to your software, aggregated from hundreds of sources.