PEAR Net_Traceroute: Command injection — GLSA 200911-06

An input sanitation error in PEAR Net_Traceroute might allow remote attackers to execute arbitrary commands.

Affected packages

dev-php/PEAR-Net_Traceroute on all architectures
Affected versions < 0.21.2
Unaffected versions >= 0.21.2

Background

PEAR Net_Traceroute is an OS independent wrapper class for executing traceroute calls from PHP.

Description

Pasquale Imperato reported that the $host parameter to the traceroute() function in Traceroute.php is not properly sanitized before being passed to exec().

Impact

A remote attacker could exploit this vulnerability when user input is passed directly to PEAR Net_Traceroute in a PHP script, possibly resulting in the remote execution of arbitrary shell commands with the privileges of the user running the affected PHP script.

Workaround

Ensure that all data that is passed to the traceroute() function is properly shell escaped (for instance using the escapeshellcmd() function).

Resolution

All PEAR Net_Traceroute users should upgrade to the latest version:

 # emerge --sync
 # emerge --ask --oneshot --verbose ">=dev-php/PEAR-Net_Traceroute-0.21.2"

References

Release date
November 26, 2009

Latest revision
November 26, 2009: 01

Severity
high

Exploitable
remote

Bugzilla entries