The quikstore shopping cart script contains an input validation error that allows attackers to execute commands on affected web servers.
The quikstore.cgi script is written in Perl and provides its users with shopping cart software for e-commerce transactions. In November 2000, the CERT/CC received a report of an input validation error in this script that allows attackers to execute commands that are available on the system. After reviewing portions of the Quikstore source code, we believe that this vulnerability was caused by the use of an insecure form of the Perl open call. By including certain shell metacharacters in the URL portion of an HTTP GET request, attackers can cause the Perl interpreter to execute any commands that are available to the web server process.
Depending on the configuration of the victim's web server, it may be possible to execute commands that are above the root of the web server directory.
Attackers can execute arbitrary commands with privileges equivalent to the web server or cgi user.
Quikstore has produced a patch for this vulnerability; please contact firstname.lastname@example.org for further details.
The impact of this vulnerability can be reduced by restricting the set of commands available to the web server. On Unix and Linux systems, this can be accomplished using chroot. In addition, any scripts or binaries that are not necessary for web service should be removed from the user's web server directory.
The CERT/CC thanks Anders Henke of Schlund+Partner AG for reporting this vulnerability and Quikstore for their assistance in researching the issue.
This document was written by Jeffrey P. Lanza.
|Date First Published:||2000-12-22|
|Date Last Updated:||2002-03-05 20:27 UTC|