SecurityTracker.com
    Home    |    View Topics    |    Search    |    Contact Us    |   

SecurityTracker
Archives


 


Category:   Application (Generic)  >   Squid Vendors:   [Multiple Authors/Vendors]
(FreeBSD Issues Fix) Squid Proxy Caching Server Can Be Crashed by Remote Users with Mkdir PUT Requests
SecurityTracker Alert ID:  1003621
SecurityTracker URL:  http://securitytracker.com/id/1003621
CVE Reference:   GENERIC-MAP-NOMATCH   (Links to External Site)
Date:  Feb 21 2002
Impact:   Denial of service via network
Fix Available:  Yes  Vendor Confirmed:  Yes  
Version(s): 2.3 and 2.4 series
Description:   A denial of service vulnerability was reported in the Squid proxy caching server. A remote user can cause the proxy caching service to crash.

The following type of request that requires a directory to be created will cause the Squid proxy to crash:

PUT ftp://cgi-lexus:yGDgX9@[ftpserveraddress]/WEB-INF/1/2/1/ HTTP/1.1

The following log messages will be created as a result of this type of command:

Sep 10 14:17:11 azimuth (squid): xstrdup: tried to dup a NULL pointer!
Sep 10 14:17:11 azimuth squid[3027]: Squid Parent: child process 12742 exited due to signal 6
Sep 10 14:17:14 azimuth squid[3027]: Squid Parent: child process 12745 started

It is reported that the process will reload within a few seconds and return to normal operation.

Impact:   A remote user can cause the Squid proxy to crash.
Solution:   The vendor has released a fix. Do one of the following:

1) Upgrade your entire ports collection and rebuild the port.

2) Deinstall the old package and install a new package dated after the correction date, obtained from the following directories:

[i386]
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-4-stable/www/squid-2.4_8.tgz

ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-5-current/www/squid-2.4_8.tgz

[alpha]
Packages are not automatically generated for the alpha architecture at this time due to lack of build resources.

NOTE: It may be several days before updated packages are available.

3) Download a new port skeleton for the squid port from:

http://www.freebsd.org/ports/

and use it to rebuild the port.

4) Use the portcheckout utility to automate option (3) above. The portcheckout port is available in /usr/ports/devel/portcheckout or the package can be obtained from:

ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-4-stable/Latest/portcheckout.tgz
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-5-current/Latest/portcheckout.tgz

Vendor URL:  www.squid-cache.org/bugs/show_bug.cgi?id=233 (Links to External Site)
Cause:   Exception handling error
Underlying OS:  UNIX (FreeBSD)
Underlying OS Comments:  Tested on RedHat 6.2 and 7.1.

Message History:   This archive entry is a follow-up to the message listed below.
Sep 21 2001 Squid Proxy Caching Server Can Be Crashed by Remote Users with Mkdir PUT Requests



 Source Message Contents

Subject:  FreeBSD Ports Security Advisory FreeBSD-SA-02:12.squid


-----BEGIN PGP SIGNED MESSAGE-----

=============================================================================
FreeBSD-SA-02:12                                            Security Advisory
                                                                FreeBSD, Inc.

Topic:          multiple security vulnerabilities in squid port

Category:       ports
Module:         squid24
Announced:      2002-02-21
Credits:        Jouko Pynnonen <jouko@solutions.fi>
                Henrik Nordstrom <hno@squid-cache.org>
Affects:        Ports collection prior to the correction date
Corrected:      2002-02-19 13:46:22 UTC
FreeBSD only:   NO

I.   Background

The Squid Internet Object Cache is a web proxy/cache.

II.  Problem Description

The following security vulnerabilities are known to exist in versions
of Squid prior to 2.4-STABLE4 (port version 2.4_8):

1) The optional SNMP monitoring interface suffers from a memory leak.
The FreeBSD port does not normally include this code, but it can be
enabled with a compile-time option.

2) A buffer overflow exists in the code charged with parsing the
authentication portion of FTP URLs.

3) The optional HTCP interface can not be properly disabled at
run-time.  The FreeBSD port does not normally include this code, but
it can be enabled with a compile-time option.

The squid port is not installed by default, nor is it "part of
FreeBSD" as such: it is part of the FreeBSD ports collection, which
contains thousands of third-party applications in a ready-to-install
format. The ports collection shipped with FreeBSD 4.5 contains this
problem since it was discovered after the release.

FreeBSD makes no claim about the security of these third-party
applications, although an effort is underway to provide a security
audit of the most security-critical ports.

III. Impact

1) An attacker with the ability to send packets to the Squid SNMP port
can cause Squid to run out of memory and crash. (NOTE: The FreeBSD
port does not have SNMP enabled by default.)

2) An authorized user of the squid proxy may submit a specially
crafted ftp:// request in order to crash the squid process, causing a
denial of service.  It may also be possible to cause the execution of
arbitrary code with the privilege level of the squid process, although
no such exploits are known to exist at this time.

3) Unauthorized users may utilize cache resources by using HTCP.
(NOTE: The FreeBSD port does not have HTCP enabled by default.)

IV.  Workaround

1) As regards the SNMP issue, the following configuration statement
will disable the SNMP support altogether:

        snmp_port 0

2) Optionally, set up a firewall rule to block incoming packets to the
Squid SNMP port (normally, UDP port 3401) from untrusted hosts.

3) For the second vulnerability, deny forwarding of non-anonymous FTP
URLs by inserting the following rules at the top of squid.conf, prior
to any http_access allow lines:

        acl non_anonymous_ftp url_regex -i ftp://[^/@]*@
        http_access deny non_anonymous_ftp

4) No workaround exists for the HTCP issue except to set up a firewall
rule to block incoming packets to the Squid HTCP port (normally, UDP
port 4827) from untrusted hosts.

5) Alternatively, deinstall the squid port/package.

V.   Solution

Do one of the following:

1) Upgrade your entire ports collection and rebuild the port.

2) Deinstall the old package and install a new package dated after the
correction date, obtained from the following directories:

[i386]
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-4-stable/www/
   squid-2.4_8.tgz

ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-5-current/www/
   squid-2.4_8.tgz

[alpha]
Packages are not automatically generated for the alpha architecture at
this time due to lack of build resources.

NOTE: It may be several days before updated packages are available.

3) Download a new port skeleton for the squid port from:

http://www.freebsd.org/ports/

and use it to rebuild the port.

4) Use the portcheckout utility to automate option (3) above. The
portcheckout port is available in /usr/ports/devel/portcheckout or the
package can be obtained from:

ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-4-stable/Latest/portcheckout.tgz
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-5-current/Latest/portcheckout.tgz

VI.  Correction details

The following list contains the revision numbers of each file that was
corrected in the FreeBSD ports collection.

Path                                                             Revision
- -------------------------------------------------------------------------
ports/www/squid24/Makefile                                           1.87
ports/www/squid24/distinfo                                           1.63
- -------------------------------------------------------------------------

VII. References

<URL:http://www.squid-cache.org/Versions/v2/2.4/bugs/>
<URL:http://www.squid-cache.org/Advisories/SQUID-2002_1.txt>
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (FreeBSD)
Comment: For info see http://www.gnupg.org

iQCVAwUBPHT5kVUuHi5z0oilAQFGvwQAj+u0n0OOsV7hxxkMEgCBaZg/LBJWmOkR
FwOCxy27eSgSdEqoZcNpZlPM+aFUf6r9bWbg5+S66R+kLb7cMOblgZX69YoU6kn7
QedUoHyBWYuoNd5pBG1VJmyW4NZrQ4vPOM7bdfddSNxt1YpW5P0NNjPaTTmBe96E
tZg1bT4hXhM=
=N1OC
-----END PGP SIGNATURE-----

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-security-notifications" in the body of the message


 
 


Go to the Top of This SecurityTracker Archive Page





Home   |    View Topics   |    Search   |    Contact Us

This web site uses cookies for web analytics. Learn More

Copyright 2020, SecurityGlobal.net LLC