Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 67167 - www-proxy/squid: Remote DoS vulnerability
Summary: www-proxy/squid: Remote DoS vulnerability
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Security
Classification: Unclassified
Component: Vulnerabilities (show other bugs)
Hardware: All All
: High normal (vote)
Assignee: Gentoo Security
URL: http://www.idefense.com/application/p...
Whiteboard: C3 [glsa] lewk
Keywords:
Depends on:
Blocks:
 
Reported: 2004-10-11 15:27 UTC by Luke Macken (RETIRED)
Modified: 2011-10-30 22:38 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Luke Macken (RETIRED) gentoo-dev 2004-10-11 15:27:32 UTC
Squid Web Proxy Cache Remote Denial of Service Vulnerability

iDEFENSE Security Advisory 10.11.04:
www.idefense.com/application/poi/display?id=152&type=vulnerabilities
October 11, 2004

I. BACKGROUND

Squid Web Proxy Cache is a full-featured web proxy cache designed to run
on Unix systems. It supports proxying HTTP, FTP, SSL, DNS, and has
support for SNMP.

II. DESCRIPTION

Remote exploitation of a design error in the SNMP module of Squid Web
Proxy Cache may lead to a denial of service.

The problem specifically exists due to an ASN1 parsing error where
certain header length combinations can slip through the validations
performed by the ASN1 parser, eventually causing the server to restart
and close all current connections. The server takes several seconds to
restart.

The offending code is in the asn_parse_header() routine of
snmplib/asn1.c, which under some cases will allow negative length fields
to pass validation. This leads to a failed xmalloc(), and the server
then assumes there is heap corruption or some other exceptional
condition, and restarts.

III. ANALYSIS

An attacker can exploit the above-described vulnerability to crash a
Squid server. If the attack is repeated, it can render the server
useless. Only a single UDP packet is required to trigger this
vulnerability, so the source address can be spoofed.

IV. DETECTION

iDEFENSE has confirmed the existence of this vulnerability in Squid Web
Proxy Cache version 2.5-STABLE5 compiled with SNMP support as well as
Squid Web Proxy Cache version 3.0-PRE3-20040702 compiled with SNMP
support. It is suspected that earlier versions are vulnerable as well.

To find if a Squid binary is compiled with SNMP support one can run:

    grep snmp_port /usr/local/squid/sbin/squid

If this command returns silently, that binary was not built with SNMP
support and it is not vulnerable to this issue.

V. WORKAROUND

Disable SNMP support or filter the port that has SNMP processing
activated (3401 by default) to allow only SNMP data from trusted hosts.

To disable SNMP support on a squid binary that has SNMP support compiled
in, use the entry snmp_port 0 in the squid.conf configuration file.

To allow only the local interface to process SNMP, use the entry
"snmp_incoming_address 127.0.0.1" in the squid.conf configuration file.

Squid must be restarted to activate changes in the configuration file.

VI. VENDOR RESPONSE

Patch relative to Squid-2.5.STABLE6:

 
http://www.squid-cache.org/Versions/v2/2.5/bugs/squid-2.5.STABLE6-SNMP_c
ore_dump.patch

Squid-2.5.STABLE7 release:

   ftp://ftp.squid-cache.org/pub/squid-2/STABLE/squid-2.5.STABLE7.tar.gz
 
ftp://ftp.squid-cache.org/pub/squid-2/STABLE/squid-2.5.STABLE7.tar.bz2
   http://www.squid-cache.org/Versions/v2/2.5/squid-2.5.STABLE7.tar.gz
   http://www.squid-cache.org/Versions/v2/2.5/squid-2.5.STABLE7.tar.bz2

or any of the mirrors

   http://www.squid-cache.org/Mirrors/ftp-mirrors.html
   http://www.squid-cache.org/Mirrors/http-mirrors.html

VII. CVE INFORMATION

The Common Vulnerabilities and Exposures (CVE) project has assigned the
names CAN-2004-0918 to these issues. This is a candidate for inclusion
in the CVE list (http://cve.mitre.org), which standardizes names for
security problems.

VIII. DISCLOSURE TIMELINE

09/15/2004  Initial vendor notification
09/15/2004  iDEFENSE clients notified
09/15/2004  Initial vendor response
10/05/2004  Coordinated public disclosure

IX. CREDIT

The discoverer of this vulnerability wishes to remain anonymous.
Comment 1 Luke Macken (RETIRED) gentoo-dev 2004-10-11 15:31:10 UTC
Andrew,

please bump to 2.5STABLE7.
Comment 2 Andrew Bevitt 2004-10-16 19:26:40 UTC
STABLE7 just commited to cvs ...
Comment 3 Thierry Carrez (RETIRED) gentoo-dev 2004-10-17 10:38:14 UTC
Committed stable by maintainer... Ready for a GLSA
Comment 4 Luke Macken (RETIRED) gentoo-dev 2004-10-18 12:16:46 UTC
GLSA 200410-15