CGI Security Hole in EWS1.1 Vulnerability
Privacy and Legal Notice
INFORMATION BULLETIN
I-024: CGI Security Hole in EWS1.1 Vulnerability
January 21, 1998 18:00 GMT
PROBLEM: A vulnerability exists in EWS1.1 (Excite for Web Servers,
version 1.1).
PLATFORM: Unix and Windows NT
DAMAGE: If exploited, an unauthorized user may execute shell commands
on the host system.
SOLUTION: Apply the latest patches or workaround listed Section III.
VULNERABILITY Excite, Inc. urges you to act on this information as soon as
ASSESSMENT: possible.
[ Start CERT Advisory ]
=============================================================================
CERT* Vendor-Initiated Bulletin VB-98.01
Jan. 16, 1998
Issue Date: Jan. 19, 1998
Topic: CGI Security Hole in EWS1.1
Source: Excite, Inc.
To aid in the wide distribution of essential security information, the CERT
Coordination Center is forwarding the following information from Excite, Inc.
Excite, Inc. urges you to act on this information as soon as possible. Excite,
Inc. contact information is included in the forwarded text below; please
contact them if you have any questions or need further information.
=======================FORWARDED TEXT STARTS HERE============================
Topic: CGI Security Hole in EWS1.1
Source: Excite, Inc.
555 Broadway, Redwood City, CA 94063
http://www.excite.com
Problem: Vulnerability in EWS1.1, Unix and Windows NT platforms
I. Description
Excite for Web Servers, version 1.1, for Unix and Windows NT platforms,
contains a security hole that could allow a malicious user of the software
to execute shell commands on the the host system on which EWS has been
installed. In situations where the web server is running under a user-id
with sufficient access privileges, a hacker could conceivably cause damage
to the host system.
EWS's search CGI is implemented in Perl and invokes a binary program to
actually perform the search against the corpus. The function of the Perl
CGI is to parse the results from the search engine and render them in HTML.
This bug in no way affects Excite.com, anyone visiting or searching
Excite.com, any search boxes (for example, those on the Netscape and
Microsoft sites) that point to Excite.com, or sites that the Excite spider
indexes.
II. Impact
Because a search entered by a user into the web page is passed as command
line argument to the search binary, and because the command line is
interpreted by the shell before the search binary is invoked, it is
possible for a hacker with sufficient know-how to craft a search that could
cause commands embedded in the search string to be invoked on the host
system.
III. Solution
IMPORTANT: Please note that if you have obtained patches from Excite or a
third party site prior to 1/16/98, you do not have the most recent version
of the patch. Please visit the patches page referenced below to obtain the
latest vresion of the patches, which have evaluated and tested internally,
as well as by CERT (http://www.cert.org).
The security hole can be corrected by replacing single Perl library file
that is part of the EWS1.1 distribution. There are two new versions of
this file available at http://www.excite.com/navigate/patches.html. One
version is for Unix platforms, the other is for Windows NT platforms.
Changes are confined to two subroutines within the architext_query.pl
library file. The subroutines in question are 'MakeQuery' and
'MakeGather'.
To apply the patch, simply replace the file architext_query.pl, which
appears in the 'perllib' subdirectory of the EWS installation, with one of
the files posted at the URL provided above. Note that comments at the top
of the file indicate which operating system it is intended for, either Unix
platforms, or Windows NT platforms.
For Unix platforms, the changes made to these routines invoke the search
binaries using Perl's 'exec', which calls C's execvp(3), thus bypassing any
shell processing of the command. By avoiding shell processing of the
command, the security hole is closed and prevents any attacks using
shell-based hacking.
It is not possible to use the same solution in the Windows NT
implementation of Perl, so the patch for Windows NT takes a different
approach, by defining a set of legal characters for a search string, and
then 'sanitizing' the string by removing any characters that are not
members of the set of legal characters.
For more information, please visit http://www.excite.com/navigate.
========================FORWARDED TEXT ENDS HERE=============================
[ End CERT Advisory ]
CIAC wishes to acknowledge the contributions of CERT for the
information contained in this bulletin.
CIAC services are available to DOE, DOE Contractors, and the NIH. CIAC
can be contacted at:
Voice: +1 925-422-8193 (7 x 24)
FAX: +1 925-423-8002
STU-III: +1 925-423-2604
E-mail: ciac@ciac.org
World Wide Web: http://www.ciac.org/
Anonymous FTP: ftp.ciac.org
This document was prepared as an account of work sponsored by an
agency of the United States Government. Neither the United States
Government nor the University of California nor any of their
employees, makes any warranty, express or implied, or assumes any
legal liability or responsibility for the accuracy, completeness, or
usefulness of any information, apparatus, product, or process
disclosed, or represents that its use would not infringe privately
owned rights. Reference herein to any specific commercial products,
process, or service by trade name, trademark, manufacturer, or
otherwise, does not necessarily constitute or imply its endorsement,
recommendation or favoring by the United States Government or the
University of California. The views and opinions of authors expressed
herein do not necessarily state or reflect those of the United States
Government or the University of California, and shall not be used for
advertising or product endorsement purposes.
UCRL-MI-119788
[Privacy and Legal Notice]