Vulnerabilities > CVE-2009-2855 - Improper Input Validation vulnerability in Squid-Cache Squid 2.7

047910
CVSS 0.0 - NONE
Attack vector
UNKNOWN
Attack complexity
UNKNOWN
Privileges required
UNKNOWN
Confidentiality impact
UNKNOWN
Integrity impact
UNKNOWN
Availability impact
UNKNOWN

Summary

The strListGetItem function in src/HttpHeaderTools.c in Squid 2.7 allows remote attackers to cause a denial of service via a crafted auth header with certain comma delimiters that trigger an infinite loop of calls to the strcspn function.

Vulnerable Configurations

Part Description Count
Application
Squid-Cache
3

Common Weakness Enumeration (CWE)

Common Attack Pattern Enumeration and Classification (CAPEC)

  • Buffer Overflow via Environment Variables
    This attack pattern involves causing a buffer overflow through manipulation of environment variables. Once the attacker finds that they can modify an environment variable, they may try to overflow associated buffers. This attack leverages implicit trust often placed in environment variables.
  • Server Side Include (SSI) Injection
    An attacker can use Server Side Include (SSI) Injection to send code to a web application that then gets executed by the web server. Doing so enables the attacker to achieve similar results to Cross Site Scripting, viz., arbitrary code execution and information disclosure, albeit on a more limited scale, since the SSI directives are nowhere near as powerful as a full-fledged scripting language. Nonetheless, the attacker can conveniently gain access to sensitive files, such as password files, and execute shell commands.
  • Cross Zone Scripting
    An attacker is able to cause a victim to load content into their web-browser that bypasses security zone controls and gain access to increased privileges to execute scripting code or other web objects such as unsigned ActiveX controls or applets. This is a privilege elevation attack targeted at zone-based web-browser security. In a zone-based model, pages belong to one of a set of zones corresponding to the level of privilege assigned to that page. Pages in an untrusted zone would have a lesser level of access to the system and/or be restricted in the types of executable content it was allowed to invoke. In a cross-zone scripting attack, a page that should be assigned to a less privileged zone is granted the privileges of a more trusted zone. This can be accomplished by exploiting bugs in the browser, exploiting incorrect configuration in the zone controls, through a cross-site scripting attack that causes the attackers' content to be treated as coming from a more trusted page, or by leveraging some piece of system functionality that is accessible from both the trusted and less trusted zone. This attack differs from "Restful Privilege Escalation" in that the latter correlates to the inadequate securing of RESTful access methods (such as HTTP DELETE) on the server, while cross-zone scripting attacks the concept of security zones as implemented by a browser.
  • Cross Site Scripting through Log Files
    An attacker may leverage a system weakness where logs are susceptible to log injection to insert scripts into the system's logs. If these logs are later viewed by an administrator through a thin administrative interface and the log data is not properly HTML encoded before being written to the page, the attackers' scripts stored in the log will be executed in the administrative interface with potentially serious consequences. This attack pattern is really a combination of two other attack patterns: log injection and stored cross site scripting.
  • Command Line Execution through SQL Injection
    An attacker uses standard SQL injection methods to inject data into the command line for execution. This could be done directly through misuse of directives such as MSSQL_xp_cmdshell or indirectly through injection of data into the database that would be interpreted as shell commands. Sometime later, an unscrupulous backend application (or could be part of the functionality of the same application) fetches the injected data stored in the database and uses this data as command line arguments without performing proper validation. The malicious data escapes that data plane by spawning new commands to be executed on the host.

Nessus

  • NASL familySuSE Local Security Checks
    NASL idSUSE_11_2_SQUID-100318.NASL
    descriptionThe following vulnerabilities have been fixed in squid : - CVE-2009-2855: DoS via special crafted auth header - CVE-2010-0308: DoS via invalid DoS header - CVE-2009-2622: DoS in squid3 via broken HTTP handling - CVE-2009-2621: DoS in squid3 via not enforced
    last seen2020-06-01
    modified2020-06-02
    plugin id45129
    published2010-03-23
    reporterThis script is Copyright (C) 2010-2019 Tenable Network Security, Inc.
    sourcehttps://www.tenable.com/plugins/nessus/45129
    titleopenSUSE Security Update : squid (squid-2144)
    code
    #%NASL_MIN_LEVEL 80502
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were
    # extracted from openSUSE Security Update squid-2144.
    #
    # The text description of this plugin is (C) SUSE LLC.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(45129);
      script_version("1.8");
      script_cvs_date("Date: 2019/10/25 13:36:39");
    
      script_cve_id("CVE-2009-2621", "CVE-2009-2622", "CVE-2009-2855", "CVE-2010-0308");
    
      script_name(english:"openSUSE Security Update : squid (squid-2144)");
      script_summary(english:"Check for the squid-2144 patch");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:"The remote openSUSE host is missing a security update."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "The following vulnerabilities have been fixed in squid :
    
      - CVE-2009-2855: DoS via special crafted auth header
    
      - CVE-2010-0308: DoS via invalid DoS header
    
      - CVE-2009-2622: DoS in squid3 via broken HTTP handling
    
      - CVE-2009-2621: DoS in squid3 via not enforced 'buffer
        limits and related bound checks'"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.novell.com/show_bug.cgi?id=525774"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.novell.com/show_bug.cgi?id=576087"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.novell.com/show_bug.cgi?id=577347"
      );
      script_set_attribute(
        attribute:"solution", 
        value:"Update the affected squid packages."
      );
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:N/I:N/A:P");
      script_cwe_id(20, 119);
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:squid");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:squid-beta");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:squid3");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:novell:opensuse:11.2");
    
      script_set_attribute(attribute:"patch_publication_date", value:"2010/03/18");
      script_set_attribute(attribute:"plugin_publication_date", value:"2010/03/23");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"This script is Copyright (C) 2010-2019 Tenable Network Security, Inc.");
      script_family(english:"SuSE Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/SuSE/release", "Host/SuSE/rpm-list", "Host/cpu");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("global_settings.inc");
    include("rpm.inc");
    
    if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    release = get_kb_item("Host/SuSE/release");
    if (isnull(release) || release =~ "^(SLED|SLES)") audit(AUDIT_OS_NOT, "openSUSE");
    if (release !~ "^(SUSE11\.2)$") audit(AUDIT_OS_RELEASE_NOT, "openSUSE", "11.2", release);
    if (!get_kb_item("Host/SuSE/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    ourarch = get_kb_item("Host/cpu");
    if (!ourarch) audit(AUDIT_UNKNOWN_ARCH);
    if (ourarch !~ "^(i586|i686|x86_64)$") audit(AUDIT_ARCH_NOT, "i586 / i686 / x86_64", ourarch);
    
    flag = 0;
    
    if ( rpm_check(release:"SUSE11.2", reference:"squid-2.7.STABLE6-2.5.2") ) flag++;
    if ( rpm_check(release:"SUSE11.2", reference:"squid-beta-3.0-448.5.1") ) flag++;
    if ( rpm_check(release:"SUSE11.2", reference:"squid3-3.0.STABLE18-3.5.1") ) flag++;
    
    if (flag)
    {
      if (report_verbosity > 0) security_warning(port:0, extra:rpm_report_get());
      else security_warning(0);
      exit(0);
    }
    else
    {
      tested = pkg_tests_get();
      if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
      else audit(AUDIT_PACKAGE_NOT_INSTALLED, "squid");
    }
    
  • NASL familyDebian Local Security Checks
    NASL idDEBIAN_DSA-1991.NASL
    descriptionTwo denial of service vulnerabilities have been discovered in squid and squid3, a web proxy. The Common Vulnerabilities and Exposures project identifies the following problems : - CVE-2009-2855 Bastian Blank discovered that it is possible to cause a denial of service via a crafted auth header with certain comma delimiters. - CVE-2010-0308 Tomas Hoger discovered that it is possible to cause a denial of service via invalid DNS header-only packets.
    last seen2020-06-01
    modified2020-06-02
    plugin id44855
    published2010-02-24
    reporterThis script is Copyright (C) 2010-2019 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/44855
    titleDebian DSA-1991-1 : squid/squid3 - denial of service
    code
    #%NASL_MIN_LEVEL 80502
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were  
    # extracted from Debian Security Advisory DSA-1991. The text 
    # itself is copyright (C) Software in the Public Interest, Inc.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(44855);
      script_version("1.9");
      script_cvs_date("Date: 2019/08/02 13:32:22");
    
      script_cve_id("CVE-2009-2855", "CVE-2010-0308");
      script_bugtraq_id(36091, 37522);
      script_xref(name:"DSA", value:"1991");
    
      script_name(english:"Debian DSA-1991-1 : squid/squid3 - denial of service");
      script_summary(english:"Checks dpkg output for the updated package");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:"The remote Debian host is missing a security-related update."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "Two denial of service vulnerabilities have been discovered in squid
    and squid3, a web proxy. The Common Vulnerabilities and Exposures
    project identifies the following problems :
    
      - CVE-2009-2855
        Bastian Blank discovered that it is possible to cause a
        denial of service via a crafted auth header with certain
        comma delimiters.
    
      - CVE-2010-0308
        Tomas Hoger discovered that it is possible to cause a
        denial of service via invalid DNS header-only packets."
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=534982"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://security-tracker.debian.org/tracker/CVE-2009-2855"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://security-tracker.debian.org/tracker/CVE-2010-0308"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.debian.org/security/2010/dsa-1991"
      );
      script_set_attribute(
        attribute:"solution", 
        value:
    "Upgrade the squid/squid3 packages.
    
    For the stable distribution (lenny), these problems have been fixed in
    version 2.7.STABLE3-4.1lenny1 of the squid package and version
    3.0.STABLE8-3+lenny3 of the squid3 package.
    
    For the oldstable distribution (etch), these problems have been fixed
    in version 2.6.5-6etch5 of the squid package and version
    3.0.PRE5-5+etch2 of the squid3 package."
      );
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:N/I:N/A:P");
      script_set_cvss_temporal_vector("CVSS2#E:F/RL:OF/RC:C");
      script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
      script_set_attribute(attribute:"exploit_available", value:"true");
      script_cwe_id(20);
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:squid3");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:debian:debian_linux:4.0");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:debian:debian_linux:5.0");
    
      script_set_attribute(attribute:"patch_publication_date", value:"2010/02/04");
      script_set_attribute(attribute:"plugin_publication_date", value:"2010/02/24");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"This script is Copyright (C) 2010-2019 and is owned by Tenable, Inc. or an Affiliate thereof.");
      script_family(english:"Debian Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/Debian/release", "Host/Debian/dpkg-l");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("debian_package.inc");
    
    
    if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    if (!get_kb_item("Host/Debian/release")) audit(AUDIT_OS_NOT, "Debian");
    if (!get_kb_item("Host/Debian/dpkg-l")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    
    flag = 0;
    if (deb_check(release:"4.0", prefix:"squid", reference:"2.6.5-6etch5")) flag++;
    if (deb_check(release:"4.0", prefix:"squid-cgi", reference:"2.6.5-6etch5")) flag++;
    if (deb_check(release:"4.0", prefix:"squid-common", reference:"2.6.5-6etch5")) flag++;
    if (deb_check(release:"4.0", prefix:"squid3", reference:"3.0.PRE5-5+etch2")) flag++;
    if (deb_check(release:"4.0", prefix:"squid3-cgi", reference:"3.0.PRE5-5+etch2")) flag++;
    if (deb_check(release:"4.0", prefix:"squid3-client", reference:"3.0.PRE5-5+etch2")) flag++;
    if (deb_check(release:"4.0", prefix:"squid3-common", reference:"3.0.PRE5-5+etch2")) flag++;
    if (deb_check(release:"4.0", prefix:"squidclient", reference:"2.6.5-6etch5")) flag++;
    if (deb_check(release:"5.0", prefix:"squid", reference:"2.7.STABLE3-4.1lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"squid-cgi", reference:"2.7.STABLE3-4.1lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"squid-common", reference:"2.7.STABLE3-4.1lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"squid3", reference:"3.0.STABLE8-3+lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"squid3-cgi", reference:"3.0.STABLE8-3+lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"squid3-common", reference:"3.0.STABLE8-3+lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"squidclient", reference:"3.0.STABLE8-3+lenny3")) flag++;
    
    if (flag)
    {
      if (report_verbosity > 0) security_warning(port:0, extra:deb_report_get());
      else security_warning(0);
      exit(0);
    }
    else audit(AUDIT_HOST_NOT, "affected");
    
  • NASL familyScientific Linux Local Security Checks
    NASL idSL_20100330_SQUID_ON_SL5_X.NASL
    descriptionA flaw was found in the way Squid processed certain external ACL helper HTTP header fields that contained a delimiter that was not a comma. A remote attacker could issue a crafted request to the Squid server, causing excessive CPU use (up to 100%). (CVE-2009-2855) Note: The CVE-2009-2855 issue only affected non-default configurations that use an external ACL helper script. A flaw was found in the way Squid handled truncated DNS replies. A remote attacker able to send specially crafted UDP packets to Squid
    last seen2020-06-01
    modified2020-06-02
    plugin id60775
    published2012-08-01
    reporterThis script is Copyright (C) 2012-2019 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/60775
    titleScientific Linux Security Update : squid on SL5.x i386/x86_64
    code
    #%NASL_MIN_LEVEL 80502
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text is (C) Scientific Linux.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(60775);
      script_version("1.5");
      script_cvs_date("Date: 2019/10/25 13:36:18");
    
      script_cve_id("CVE-2009-2855", "CVE-2010-0308");
    
      script_name(english:"Scientific Linux Security Update : squid on SL5.x i386/x86_64");
      script_summary(english:"Checks rpm output for the updated package");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:"The remote Scientific Linux host is missing a security update."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "A flaw was found in the way Squid processed certain external ACL
    helper HTTP header fields that contained a delimiter that was not a
    comma. A remote attacker could issue a crafted request to the Squid
    server, causing excessive CPU use (up to 100%). (CVE-2009-2855)
    
    Note: The CVE-2009-2855 issue only affected non-default configurations
    that use an external ACL helper script.
    
    A flaw was found in the way Squid handled truncated DNS replies. A
    remote attacker able to send specially crafted UDP packets to Squid's
    DNS client port could trigger an assertion failure in Squid's child
    process, causing that child process to exit. (CVE-2010-0308)
    
    This update also fixes the following bugs :
    
      - Squid's init script returns a non-zero value when trying
        to stop a stopped service. This is not LSB compliant and
        can generate difficulties in cluster environments. This
        update makes stopping LSB compliant. (BZ#521926)
    
      - Squid is not currently built to support MAC address
        filtering in ACLs. This update includes support for MAC
        address filtering. (BZ#496170)
    
      - Squid is not currently built to support Kerberos
        negotiate authentication. This update enables Kerberos
        authentication. (BZ#516245)
    
      - Squid does not include the port number as part of URIs
        it constructs when configured as an accelerator. This
        results in a 403 error. This update corrects this
        behavior. (BZ#538738)
    
      - the error_map feature does not work if the same handling
        is set also on the HTTP server that operates in deflate
        mode. This update fixes this issue. (BZ#470843)
    
    After installing this update, the squid service will be restarted
    automatically."
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.redhat.com/show_bug.cgi?id=470843"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.redhat.com/show_bug.cgi?id=496170"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.redhat.com/show_bug.cgi?id=516245"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.redhat.com/show_bug.cgi?id=521926"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.redhat.com/show_bug.cgi?id=538738"
      );
      # https://listserv.fnal.gov/scripts/wa.exe?A2=ind1004&L=scientific-linux-errata&T=0&P=678
      script_set_attribute(
        attribute:"see_also",
        value:"http://www.nessus.org/u?7f6169b0"
      );
      script_set_attribute(attribute:"solution", value:"Update the affected squid package.");
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:N/I:N/A:P");
      script_cwe_id(20);
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"x-cpe:/o:fermilab:scientific_linux");
    
      script_set_attribute(attribute:"patch_publication_date", value:"2010/03/30");
      script_set_attribute(attribute:"plugin_publication_date", value:"2012/08/01");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"This script is Copyright (C) 2012-2019 and is owned by Tenable, Inc. or an Affiliate thereof.");
      script_family(english:"Scientific Linux Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/cpu", "Host/RedHat/release", "Host/RedHat/rpm-list");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("global_settings.inc");
    include("rpm.inc");
    
    
    if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    release = get_kb_item("Host/RedHat/release");
    if (isnull(release) || "Scientific Linux " >!< release) audit(AUDIT_HOST_NOT, "running Scientific Linux");
    if (!get_kb_item("Host/RedHat/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    cpu = get_kb_item("Host/cpu");
    if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
    if (cpu >!< "x86_64" && cpu !~ "^i[3-6]86$") audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "Scientific Linux", cpu);
    
    
    flag = 0;
    if (rpm_check(release:"SL5", reference:"squid-2.6.STABLE21-6.el5")) flag++;
    
    
    if (flag)
    {
      if (report_verbosity > 0) security_warning(port:0, extra:rpm_report_get());
      else security_warning(0);
      exit(0);
    }
    else audit(AUDIT_HOST_NOT, "affected");
    
  • NASL familySuSE Local Security Checks
    NASL idSUSE_11_SQUID-100316.NASL
    descriptionThe following vulnerabilities have been fixed in squid : - DoS via special crafted auth header. (CVE-2009-2855) - DoS via invalid DoS header. (CVE-2010-0308)
    last seen2020-06-01
    modified2020-06-02
    plugin id45131
    published2010-03-23
    reporterThis script is Copyright (C) 2010-2019 Tenable Network Security, Inc.
    sourcehttps://www.tenable.com/plugins/nessus/45131
    titleSuSE 11 Security Update : squid (SAT Patch Number 2143)
    code
    #%NASL_MIN_LEVEL 80502
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were  
    # extracted from SuSE 11 update information. The text itself is
    # copyright (C) Novell, Inc.
    #
    
    if (NASL_LEVEL < 3000) exit(0);
    
    include("compat.inc");
    
    if (description)
    {
      script_id(45131);
      script_version("1.11");
      script_cvs_date("Date: 2019/10/25 13:36:40");
    
      script_cve_id("CVE-2009-2621", "CVE-2009-2622", "CVE-2009-2855", "CVE-2010-0308");
    
      script_name(english:"SuSE 11 Security Update : squid (SAT Patch Number 2143)");
      script_summary(english:"Checks rpm output for the updated package");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:"The remote SuSE 11 host is missing a security update."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "The following vulnerabilities have been fixed in squid :
    
      - DoS via special crafted auth header. (CVE-2009-2855)
    
      - DoS via invalid DoS header. (CVE-2010-0308)"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.novell.com/show_bug.cgi?id=576087"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.novell.com/show_bug.cgi?id=577347"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"http://support.novell.com/security/cve/CVE-2009-2621.html"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"http://support.novell.com/security/cve/CVE-2009-2622.html"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"http://support.novell.com/security/cve/CVE-2009-2855.html"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"http://support.novell.com/security/cve/CVE-2010-0308.html"
      );
      script_set_attribute(attribute:"solution", value:"Apply SAT patch number 2143.");
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:N/I:N/A:P");
      script_cwe_id(20, 119);
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:11:squid");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:novell:suse_linux:11");
    
      script_set_attribute(attribute:"patch_publication_date", value:"2010/03/16");
      script_set_attribute(attribute:"plugin_publication_date", value:"2010/03/23");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"This script is Copyright (C) 2010-2019 Tenable Network Security, Inc.");
      script_family(english:"SuSE Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/cpu", "Host/SuSE/release", "Host/SuSE/rpm-list");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("global_settings.inc");
    include("rpm.inc");
    
    
    if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    release = get_kb_item("Host/SuSE/release");
    if (isnull(release) || release !~ "^(SLED|SLES)11") audit(AUDIT_OS_NOT, "SuSE 11");
    if (!get_kb_item("Host/SuSE/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    cpu = get_kb_item("Host/cpu");
    if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
    if (cpu !~ "^i[3-6]86$" && "x86_64" >!< cpu && "s390x" >!< cpu) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "SuSE 11", cpu);
    
    pl = get_kb_item("Host/SuSE/patchlevel");
    if (pl) audit(AUDIT_OS_NOT, "SuSE 11.0");
    
    
    flag = 0;
    if (rpm_check(release:"SLES11", sp:0, reference:"squid-2.7.STABLE5-2.4.1")) flag++;
    
    
    if (flag)
    {
      if (report_verbosity > 0) security_warning(port:0, extra:rpm_report_get());
      else security_warning(0);
      exit(0);
    }
    else audit(AUDIT_HOST_NOT, "affected");
    
  • NASL familySuSE Local Security Checks
    NASL idSUSE9_12597.NASL
    descriptionThe following vulnerabilities have been fixed in squid : - DoS via special crafted auth header. (CVE-2009-2855) - DoS via invalid DoS header. (CVE-2010-0308)
    last seen2020-06-01
    modified2020-06-02
    plugin id45125
    published2010-03-23
    reporterThis script is Copyright (C) 2010-2019 Tenable Network Security, Inc.
    sourcehttps://www.tenable.com/plugins/nessus/45125
    titleSuSE9 Security Update : squid (YOU Patch Number 12597)
    code
    #%NASL_MIN_LEVEL 80502
    #
    # (C) Tenable Network Security, Inc.
    #
    # The text description of this plugin is (C) Novell, Inc.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(45125);
      script_version("1.6");
      script_cvs_date("Date: 2019/10/25 13:36:37");
    
      script_cve_id("CVE-2009-2855", "CVE-2010-0308");
    
      script_name(english:"SuSE9 Security Update : squid (YOU Patch Number 12597)");
      script_summary(english:"Checks rpm output for the updated package");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:"The remote SuSE 9 host is missing a security-related patch."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "The following vulnerabilities have been fixed in squid :
    
      - DoS via special crafted auth header. (CVE-2009-2855)
    
      - DoS via invalid DoS header. (CVE-2010-0308)"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"http://support.novell.com/security/cve/CVE-2009-2855.html"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"http://support.novell.com/security/cve/CVE-2010-0308.html"
      );
      script_set_attribute(attribute:"solution", value:"Apply YOU patch number 12597.");
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:N/I:N/A:P");
      script_cwe_id(20);
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:suse:suse_linux");
    
      script_set_attribute(attribute:"patch_publication_date", value:"2010/03/18");
      script_set_attribute(attribute:"plugin_publication_date", value:"2010/03/23");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"This script is Copyright (C) 2010-2019 Tenable Network Security, Inc.");
      script_family(english:"SuSE Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/cpu", "Host/SuSE/release", "Host/SuSE/rpm-list");
    
      exit(0);
    }
    
    
    include("global_settings.inc");
    include("rpm.inc");
    
    
    if (!get_kb_item("Host/local_checks_enabled")) exit(0, "Local checks are not enabled.");
    if (!get_kb_item("Host/SuSE/release")) exit(0, "The host is not running SuSE.");
    if (!get_kb_item("Host/SuSE/rpm-list")) exit(1, "Could not obtain the list of installed packages.");
    
    cpu = get_kb_item("Host/cpu");
    if (isnull(cpu)) exit(1, "Failed to determine the architecture type.");
    if (cpu >!< "x86_64" && cpu !~ "^i[3-6]86$") exit(1, "Local checks for SuSE 9 on the '"+cpu+"' architecture have not been implemented.");
    
    
    flag = 0;
    if (rpm_check(release:"SUSE9", reference:"squid-2.5.STABLE5-42.56")) flag++;
    
    
    if (flag)
    {
      if (report_verbosity > 0) security_warning(port:0, extra:rpm_report_get());
      else security_warning(0);
      exit(0);
    }
    else exit(0, "The host is not affected.");
    
  • NASL familySuSE Local Security Checks
    NASL idSUSE_SQUID-6930.NASL
    descriptionThe following vulnerabilities have been fixed in squid : - DoS via special crafted auth header CVE-2010-0308: DoS via invalid DoS header. (CVE-2009-2855)
    last seen2020-06-01
    modified2020-06-02
    plugin id45132
    published2010-03-23
    reporterThis script is Copyright (C) 2010-2019 Tenable Network Security, Inc.
    sourcehttps://www.tenable.com/plugins/nessus/45132
    titleSuSE 10 Security Update : squid (ZYPP Patch Number 6930)
    code
    #%NASL_MIN_LEVEL 80502
    #
    # (C) Tenable Network Security, Inc.
    #
    # The text description of this plugin is (C) Novell, Inc.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(45132);
      script_version ("1.9");
      script_cvs_date("Date: 2019/10/25 13:36:40");
    
      script_cve_id("CVE-2009-2855", "CVE-2010-0308");
    
      script_name(english:"SuSE 10 Security Update : squid (ZYPP Patch Number 6930)");
      script_summary(english:"Checks rpm output for the updated package");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:"The remote SuSE 10 host is missing a security-related patch."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "The following vulnerabilities have been fixed in squid :
    
      - DoS via special crafted auth header CVE-2010-0308: DoS
        via invalid DoS header. (CVE-2009-2855)"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"http://support.novell.com/security/cve/CVE-2009-2855.html"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"http://support.novell.com/security/cve/CVE-2010-0308.html"
      );
      script_set_attribute(attribute:"solution", value:"Apply ZYPP patch number 6930.");
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:N/I:N/A:P");
      script_cwe_id(20);
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:suse:suse_linux");
    
      script_set_attribute(attribute:"patch_publication_date", value:"2010/03/16");
      script_set_attribute(attribute:"plugin_publication_date", value:"2010/03/23");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"This script is Copyright (C) 2010-2019 Tenable Network Security, Inc.");
      script_family(english:"SuSE Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/cpu", "Host/SuSE/release", "Host/SuSE/rpm-list");
    
      exit(0);
    }
    
    
    include("global_settings.inc");
    include("rpm.inc");
    
    
    if (!get_kb_item("Host/local_checks_enabled")) exit(0, "Local checks are not enabled.");
    if (!get_kb_item("Host/SuSE/release")) exit(0, "The host is not running SuSE.");
    if (!get_kb_item("Host/SuSE/rpm-list")) exit(1, "Could not obtain the list of installed packages.");
    
    cpu = get_kb_item("Host/cpu");
    if (isnull(cpu)) exit(1, "Failed to determine the architecture type.");
    if (cpu >!< "x86_64" && cpu !~ "^i[3-6]86$") exit(1, "Local checks for SuSE 10 on the '"+cpu+"' architecture have not been implemented.");
    
    
    flag = 0;
    if (rpm_check(release:"SLED10", sp:2, reference:"squid-2.5.STABLE12-18.13.982.2.2")) flag++;
    if (rpm_check(release:"SLES10", sp:2, reference:"squid-2.5.STABLE12-18.13.982.2.2")) flag++;
    
    
    if (flag)
    {
      if (report_verbosity > 0) security_warning(port:0, extra:rpm_report_get());
      else security_warning(0);
      exit(0);
    }
    else exit(0, "The host is not affected.");
    
  • NASL familyGentoo Local Security Checks
    NASL idGENTOO_GLSA-201110-24.NASL
    descriptionThe remote host is affected by the vulnerability described in GLSA-201110-24 (Squid: Multiple vulnerabilities) Multiple vulnerabilities have been discovered in Squid. Please review the CVE identifiers referenced below for details. Impact : Remote unauthenticated attackers may be able to execute arbitrary code with the privileges of the Squid process or cause a Denial of Service. Workaround : There is no known workaround at this time.
    last seen2020-06-01
    modified2020-06-02
    plugin id56658
    published2011-10-27
    reporterThis script is Copyright (C) 2011-2018 Tenable Network Security, Inc.
    sourcehttps://www.tenable.com/plugins/nessus/56658
    titleGLSA-201110-24 : Squid: Multiple vulnerabilities
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were
    # extracted from Gentoo Linux Security Advisory GLSA 201110-24.
    #
    # The advisory text is Copyright (C) 2001-2016 Gentoo Foundation, Inc.
    # and licensed under the Creative Commons - Attribution / Share Alike 
    # license. See http://creativecommons.org/licenses/by-sa/3.0/
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(56658);
      script_version("1.9");
      script_cvs_date("Date: 2018/07/11 17:09:26");
    
      script_cve_id("CVE-2009-2621", "CVE-2009-2622", "CVE-2009-2855", "CVE-2010-0308", "CVE-2010-0639", "CVE-2010-2951", "CVE-2010-3072", "CVE-2011-3205");
      script_bugtraq_id(35812, 36091, 37522, 38212, 42645, 42982, 49356);
      script_xref(name:"GLSA", value:"201110-24");
    
      script_name(english:"GLSA-201110-24 : Squid: Multiple vulnerabilities");
      script_summary(english:"Checks for updated package(s) in /var/db/pkg");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:
    "The remote Gentoo host is missing one or more security-related
    patches."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "The remote host is affected by the vulnerability described in GLSA-201110-24
    (Squid: Multiple vulnerabilities)
    
        Multiple vulnerabilities have been discovered in Squid. Please review
          the CVE identifiers referenced below for details.
      
    Impact :
    
        Remote unauthenticated attackers may be able to execute arbitrary code
          with the privileges of the Squid process or cause a Denial of Service.
      
    Workaround :
    
        There is no known workaround at this time."
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://security.gentoo.org/glsa/201110-24"
      );
      script_set_attribute(
        attribute:"solution", 
        value:
    "All squid users should upgrade to the latest version:
          # emerge --sync
          # emerge --ask --oneshot --verbose '>=net-proxy/squid-3.1.15'
        NOTE: This is a legacy GLSA. Updates for all affected architectures are
          available since September 4, 2011. It is likely that your system is
          already no longer affected by this issue."
      );
      script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:P/I:P/A:P");
      script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C");
      script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");
      script_set_attribute(attribute:"exploit_available", value:"false");
      script_cwe_id(20, 119);
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:gentoo:linux:squid");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:gentoo:linux");
    
      script_set_attribute(attribute:"patch_publication_date", value:"2011/10/26");
      script_set_attribute(attribute:"plugin_publication_date", value:"2011/10/27");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"This script is Copyright (C) 2011-2018 Tenable Network Security, Inc.");
      script_family(english:"Gentoo Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/Gentoo/release", "Host/Gentoo/qpkg-list");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("global_settings.inc");
    include("qpkg.inc");
    
    if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    if (!get_kb_item("Host/Gentoo/release")) audit(AUDIT_OS_NOT, "Gentoo");
    if (!get_kb_item("Host/Gentoo/qpkg-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    
    flag = 0;
    
    if (qpkg_check(package:"net-proxy/squid", unaffected:make_list("ge 3.1.15"), vulnerable:make_list("lt 3.1.15"))) flag++;
    
    if (flag)
    {
      if (report_verbosity > 0) security_warning(port:0, extra:qpkg_report_get());
      else security_warning(0);
      exit(0);
    }
    else
    {
      tested = qpkg_tests_get();
      if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
      else audit(AUDIT_PACKAGE_NOT_INSTALLED, "Squid");
    }
    
  • NASL familySuSE Local Security Checks
    NASL idSUSE_11_0_SQUID-100316.NASL
    descriptionThe following vulnerabilities have been fixed in squid : - CVE-2009-2855: DoS via special crafted auth header - CVE-2010-0308: DoS via invalid DoS header - CVE-2009-2622: DoS in squid3 via broken HTTP handling - CVE-2009-2621: DoS in squid3 via not enforced
    last seen2020-06-01
    modified2020-06-02
    plugin id45126
    published2010-03-23
    reporterThis script is Copyright (C) 2010-2019 Tenable Network Security, Inc.
    sourcehttps://www.tenable.com/plugins/nessus/45126
    titleopenSUSE Security Update : squid (squid-2144)
    code
    #%NASL_MIN_LEVEL 80502
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were
    # extracted from openSUSE Security Update squid-2144.
    #
    # The text description of this plugin is (C) SUSE LLC.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(45126);
      script_version("1.8");
      script_cvs_date("Date: 2019/10/25 13:36:37");
    
      script_cve_id("CVE-2009-2621", "CVE-2009-2622", "CVE-2009-2855", "CVE-2010-0308");
    
      script_name(english:"openSUSE Security Update : squid (squid-2144)");
      script_summary(english:"Check for the squid-2144 patch");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:"The remote openSUSE host is missing a security update."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "The following vulnerabilities have been fixed in squid :
    
      - CVE-2009-2855: DoS via special crafted auth header
    
      - CVE-2010-0308: DoS via invalid DoS header
    
      - CVE-2009-2622: DoS in squid3 via broken HTTP handling
    
      - CVE-2009-2621: DoS in squid3 via not enforced 'buffer
        limits and related bound checks'"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.novell.com/show_bug.cgi?id=525774"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.novell.com/show_bug.cgi?id=576087"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.novell.com/show_bug.cgi?id=577347"
      );
      script_set_attribute(
        attribute:"solution", 
        value:"Update the affected squid packages."
      );
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:N/I:N/A:P");
      script_cwe_id(20, 119);
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:squid");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:squid-beta");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:squid3");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:novell:opensuse:11.0");
    
      script_set_attribute(attribute:"patch_publication_date", value:"2010/03/16");
      script_set_attribute(attribute:"plugin_publication_date", value:"2010/03/23");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"This script is Copyright (C) 2010-2019 Tenable Network Security, Inc.");
      script_family(english:"SuSE Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/SuSE/release", "Host/SuSE/rpm-list", "Host/cpu");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("global_settings.inc");
    include("rpm.inc");
    
    if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    release = get_kb_item("Host/SuSE/release");
    if (isnull(release) || release =~ "^(SLED|SLES)") audit(AUDIT_OS_NOT, "openSUSE");
    if (release !~ "^(SUSE11\.0)$") audit(AUDIT_OS_RELEASE_NOT, "openSUSE", "11.0", release);
    if (!get_kb_item("Host/SuSE/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    ourarch = get_kb_item("Host/cpu");
    if (!ourarch) audit(AUDIT_UNKNOWN_ARCH);
    if (ourarch !~ "^(i586|i686|x86_64)$") audit(AUDIT_ARCH_NOT, "i586 / i686 / x86_64", ourarch);
    
    flag = 0;
    
    if ( rpm_check(release:"SUSE11.0", reference:"squid-2.6.STABLE20-12.3") ) flag++;
    if ( rpm_check(release:"SUSE11.0", reference:"squid-beta-3.0-419.2") ) flag++;
    if ( rpm_check(release:"SUSE11.0", reference:"squid3-3.0.STABLE5-11.3") ) flag++;
    
    if (flag)
    {
      if (report_verbosity > 0) security_warning(port:0, extra:rpm_report_get());
      else security_warning(0);
      exit(0);
    }
    else
    {
      tested = pkg_tests_get();
      if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
      else audit(AUDIT_PACKAGE_NOT_INSTALLED, "squid");
    }
    
  • NASL familySuSE Local Security Checks
    NASL idSUSE_11_1_SQUID-100318.NASL
    descriptionThe following vulnerabilities have been fixed in squid : - CVE-2009-2855: DoS via special crafted auth header - CVE-2010-0308: DoS via invalid DoS header - CVE-2009-2622: DoS in squid3 via broken HTTP handling - CVE-2009-2621: DoS in squid3 via not enforced
    last seen2020-06-01
    modified2020-06-02
    plugin id45127
    published2010-03-23
    reporterThis script is Copyright (C) 2010-2019 Tenable Network Security, Inc.
    sourcehttps://www.tenable.com/plugins/nessus/45127
    titleopenSUSE Security Update : squid (squid-2144)
    code
    #%NASL_MIN_LEVEL 80502
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were
    # extracted from openSUSE Security Update squid-2144.
    #
    # The text description of this plugin is (C) SUSE LLC.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(45127);
      script_version("1.8");
      script_cvs_date("Date: 2019/10/25 13:36:38");
    
      script_cve_id("CVE-2009-2621", "CVE-2009-2622", "CVE-2009-2855", "CVE-2010-0308");
    
      script_name(english:"openSUSE Security Update : squid (squid-2144)");
      script_summary(english:"Check for the squid-2144 patch");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:"The remote openSUSE host is missing a security update."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "The following vulnerabilities have been fixed in squid :
    
      - CVE-2009-2855: DoS via special crafted auth header
    
      - CVE-2010-0308: DoS via invalid DoS header
    
      - CVE-2009-2622: DoS in squid3 via broken HTTP handling
    
      - CVE-2009-2621: DoS in squid3 via not enforced 'buffer
        limits and related bound checks'"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.novell.com/show_bug.cgi?id=525774"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.novell.com/show_bug.cgi?id=576087"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.novell.com/show_bug.cgi?id=577347"
      );
      script_set_attribute(
        attribute:"solution", 
        value:"Update the affected squid packages."
      );
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:N/I:N/A:P");
      script_cwe_id(20, 119);
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:squid");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:squid-beta");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:squid3");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:novell:opensuse:11.1");
    
      script_set_attribute(attribute:"patch_publication_date", value:"2010/03/18");
      script_set_attribute(attribute:"plugin_publication_date", value:"2010/03/23");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"This script is Copyright (C) 2010-2019 Tenable Network Security, Inc.");
      script_family(english:"SuSE Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/SuSE/release", "Host/SuSE/rpm-list", "Host/cpu");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("global_settings.inc");
    include("rpm.inc");
    
    if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    release = get_kb_item("Host/SuSE/release");
    if (isnull(release) || release =~ "^(SLED|SLES)") audit(AUDIT_OS_NOT, "openSUSE");
    if (release !~ "^(SUSE11\.1)$") audit(AUDIT_OS_RELEASE_NOT, "openSUSE", "11.1", release);
    if (!get_kb_item("Host/SuSE/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    ourarch = get_kb_item("Host/cpu");
    if (!ourarch) audit(AUDIT_UNKNOWN_ARCH);
    if (ourarch !~ "^(i586|i686|x86_64)$") audit(AUDIT_ARCH_NOT, "i586 / i686 / x86_64", ourarch);
    
    flag = 0;
    
    if ( rpm_check(release:"SUSE11.1", reference:"squid-2.7.STABLE5-1.21.2") ) flag++;
    if ( rpm_check(release:"SUSE11.1", reference:"squid-beta-3.0-438.35.1") ) flag++;
    if ( rpm_check(release:"SUSE11.1", reference:"squid3-3.0.STABLE10-2.13.1") ) flag++;
    
    if (flag)
    {
      if (report_verbosity > 0) security_warning(port:0, extra:rpm_report_get());
      else security_warning(0);
      exit(0);
    }
    else
    {
      tested = pkg_tests_get();
      if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
      else audit(AUDIT_PACKAGE_NOT_INSTALLED, "squid");
    }
    
  • NASL familyUbuntu Local Security Checks
    NASL idUBUNTU_USN-901-1.NASL
    descriptionIt was discovered that Squid incorrectly handled certain auth headers. A remote attacker could exploit this with a specially crafted auth header and cause Squid to go into an infinite loop, resulting in a denial of service. This issue only affected Ubuntu 8.10, 9.04 and 9.10. (CVE-2009-2855) It was discovered that Squid incorrectly handled certain DNS packets. A remote attacker could exploit this with a specially crafted DNS packet and cause Squid to crash, resulting in a denial of service. (CVE-2010-0308). Note that Tenable Network Security has extracted the preceding description block directly from the Ubuntu security advisory. Tenable has attempted to automatically clean and format it as much as possible without introducing additional issues.
    last seen2020-06-01
    modified2020-06-02
    plugin id44641
    published2010-02-17
    reporterUbuntu Security Notice (C) 2010-2019 Canonical, Inc. / NASL script (C) 2010-2019 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/44641
    titleUbuntu 6.06 LTS / 8.04 LTS / 8.10 / 9.04 / 9.10 : squid vulnerabilities (USN-901-1)
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were
    # extracted from Ubuntu Security Notice USN-901-1. The text 
    # itself is copyright (C) Canonical, Inc. See 
    # <http://www.ubuntu.com/usn/>. Ubuntu(R) is a registered 
    # trademark of Canonical, Inc.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(44641);
      script_version("1.13");
      script_cvs_date("Date: 2019/09/19 12:54:26");
    
      script_cve_id("CVE-2009-2855", "CVE-2010-0308");
      script_bugtraq_id(36091, 37522);
      script_xref(name:"USN", value:"901-1");
    
      script_name(english:"Ubuntu 6.06 LTS / 8.04 LTS / 8.10 / 9.04 / 9.10 : squid vulnerabilities (USN-901-1)");
      script_summary(english:"Checks dpkg output for updated packages.");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:
    "The remote Ubuntu host is missing one or more security-related
    patches."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "It was discovered that Squid incorrectly handled certain auth headers.
    A remote attacker could exploit this with a specially crafted auth
    header and cause Squid to go into an infinite loop, resulting in a
    denial of service. This issue only affected Ubuntu 8.10, 9.04 and
    9.10. (CVE-2009-2855)
    
    It was discovered that Squid incorrectly handled certain DNS packets.
    A remote attacker could exploit this with a specially crafted DNS
    packet and cause Squid to crash, resulting in a denial of service.
    (CVE-2010-0308).
    
    Note that Tenable Network Security has extracted the preceding
    description block directly from the Ubuntu security advisory. Tenable
    has attempted to automatically clean and format it as much as possible
    without introducing additional issues."
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://usn.ubuntu.com/901-1/"
      );
      script_set_attribute(attribute:"solution", value:"Update the affected packages.");
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:N/I:N/A:P");
      script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C");
      script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");
      script_set_attribute(attribute:"exploit_available", value:"false");
      script_cwe_id(20);
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:squid");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:squid-cgi");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:squid-common");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:squidclient");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:canonical:ubuntu_linux:6.06:-:lts");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:canonical:ubuntu_linux:8.04:-:lts");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:canonical:ubuntu_linux:8.10");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:canonical:ubuntu_linux:9.04");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:canonical:ubuntu_linux:9.10");
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2009/08/18");
      script_set_attribute(attribute:"patch_publication_date", value:"2010/02/16");
      script_set_attribute(attribute:"plugin_publication_date", value:"2010/02/17");
      script_set_attribute(attribute:"generated_plugin", value:"current");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"Ubuntu Security Notice (C) 2010-2019 Canonical, Inc. / NASL script (C) 2010-2019 and is owned by Tenable, Inc. or an Affiliate thereof.");
      script_family(english:"Ubuntu Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/cpu", "Host/Ubuntu", "Host/Ubuntu/release", "Host/Debian/dpkg-l");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("ubuntu.inc");
    include("misc_func.inc");
    
    if ( ! get_kb_item("Host/local_checks_enabled") ) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    release = get_kb_item("Host/Ubuntu/release");
    if ( isnull(release) ) audit(AUDIT_OS_NOT, "Ubuntu");
    release = chomp(release);
    if (! preg(pattern:"^(6\.06|8\.04|8\.10|9\.04|9\.10)$", string:release)) audit(AUDIT_OS_NOT, "Ubuntu 6.06 / 8.04 / 8.10 / 9.04 / 9.10", "Ubuntu " + release);
    if ( ! get_kb_item("Host/Debian/dpkg-l") ) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    cpu = get_kb_item("Host/cpu");
    if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
    if ("x86_64" >!< cpu && cpu !~ "^i[3-6]86$") audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "Ubuntu", cpu);
    
    flag = 0;
    
    if (ubuntu_check(osver:"6.06", pkgname:"squid", pkgver:"2.5.12-4ubuntu2.5")) flag++;
    if (ubuntu_check(osver:"6.06", pkgname:"squid-cgi", pkgver:"2.5.12-4ubuntu2.5")) flag++;
    if (ubuntu_check(osver:"6.06", pkgname:"squid-common", pkgver:"2.5.12-4ubuntu2.5")) flag++;
    if (ubuntu_check(osver:"6.06", pkgname:"squidclient", pkgver:"2.5.12-4ubuntu2.5")) flag++;
    if (ubuntu_check(osver:"8.04", pkgname:"squid", pkgver:"2.6.18-1ubuntu3.1")) flag++;
    if (ubuntu_check(osver:"8.04", pkgname:"squid-cgi", pkgver:"2.6.18-1ubuntu3.1")) flag++;
    if (ubuntu_check(osver:"8.04", pkgname:"squid-common", pkgver:"2.6.18-1ubuntu3.1")) flag++;
    if (ubuntu_check(osver:"8.04", pkgname:"squidclient", pkgver:"2.6.18-1ubuntu3.1")) flag++;
    if (ubuntu_check(osver:"8.10", pkgname:"squid", pkgver:"2.7.STABLE3-1ubuntu2.2")) flag++;
    if (ubuntu_check(osver:"8.10", pkgname:"squid-cgi", pkgver:"2.7.STABLE3-1ubuntu2.2")) flag++;
    if (ubuntu_check(osver:"8.10", pkgname:"squid-common", pkgver:"2.7.STABLE3-1ubuntu2.2")) flag++;
    if (ubuntu_check(osver:"9.04", pkgname:"squid", pkgver:"2.7.STABLE3-4.1ubuntu1.1")) flag++;
    if (ubuntu_check(osver:"9.04", pkgname:"squid-cgi", pkgver:"2.7.STABLE3-4.1ubuntu1.1")) flag++;
    if (ubuntu_check(osver:"9.04", pkgname:"squid-common", pkgver:"2.7.STABLE3-4.1ubuntu1.1")) flag++;
    if (ubuntu_check(osver:"9.10", pkgname:"squid", pkgver:"2.7.STABLE6-2ubuntu2.1")) flag++;
    if (ubuntu_check(osver:"9.10", pkgname:"squid-cgi", pkgver:"2.7.STABLE6-2ubuntu2.1")) flag++;
    if (ubuntu_check(osver:"9.10", pkgname:"squid-common", pkgver:"2.7.STABLE6-2ubuntu2.1")) flag++;
    
    if (flag)
    {
      security_report_v4(
        port       : 0,
        severity   : SECURITY_WARNING,
        extra      : ubuntu_report_get()
      );
      exit(0);
    }
    else
    {
      tested = ubuntu_pkg_tests_get();
      if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
      else audit(AUDIT_PACKAGE_NOT_INSTALLED, "squid / squid-cgi / squid-common / squidclient");
    }
    
  • NASL familyMandriva Local Security Checks
    NASL idMANDRIVA_MDVSA-2009-241.NASL
    descriptionA vulnerability was discovered and corrected in squid : The strListGetItem function in src/HttpHeaderTools.c in Squid 2.7 allows remote attackers to cause a denial of service via a crafted auth header with certain comma delimiters that trigger an infinite loop of calls to the strcspn function (CVE-2009-2855). This update provides a solution to this vulnerability. Update : Packages for 2008.0 are provided for Corporate Desktop 2008.0 customers.
    last seen2020-06-01
    modified2020-06-02
    plugin id43852
    published2010-01-12
    reporterThis script is Copyright (C) 2010-2019 Tenable Network Security, Inc.
    sourcehttps://www.tenable.com/plugins/nessus/43852
    titleMandriva Linux Security Advisory : squid (MDVSA-2009:241-1)
    code
    #%NASL_MIN_LEVEL 80502
    
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were  
    # extracted from Mandriva Linux Security Advisory MDVSA-2009:241. 
    # The text itself is copyright (C) Mandriva S.A.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(43852);
      script_version("1.13");
      script_cvs_date("Date: 2019/08/02 13:32:52");
    
      script_cve_id("CVE-2009-2855");
      script_bugtraq_id(36091);
      script_xref(name:"MDVSA", value:"2009:241-1");
    
      script_name(english:"Mandriva Linux Security Advisory : squid (MDVSA-2009:241-1)");
      script_summary(english:"Checks rpm output for the updated packages");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:
    "The remote Mandriva Linux host is missing one or more security
    updates."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "A vulnerability was discovered and corrected in squid :
    
    The strListGetItem function in src/HttpHeaderTools.c in Squid 2.7
    allows remote attackers to cause a denial of service via a crafted
    auth header with certain comma delimiters that trigger an infinite
    loop of calls to the strcspn function (CVE-2009-2855).
    
    This update provides a solution to this vulnerability.
    
    Update :
    
    Packages for 2008.0 are provided for Corporate Desktop 2008.0
    customers."
      );
      script_set_attribute(
        attribute:"solution", 
        value:"Update the affected squid and / or squid-cachemgr packages."
      );
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:N/I:N/A:P");
      script_set_cvss_temporal_vector("CVSS2#E:F/RL:OF/RC:C");
      script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
      script_set_attribute(attribute:"exploit_available", value:"true");
      script_cwe_id(20);
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:mandriva:linux:squid");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:mandriva:linux:squid-cachemgr");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:mandriva:linux:2008.0");
    
      script_set_attribute(attribute:"patch_publication_date", value:"2010/01/11");
      script_set_attribute(attribute:"plugin_publication_date", value:"2010/01/12");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"This script is Copyright (C) 2010-2019 Tenable Network Security, Inc.");
      script_family(english:"Mandriva Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/cpu", "Host/Mandrake/release", "Host/Mandrake/rpm-list");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("global_settings.inc");
    include("rpm.inc");
    
    
    if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    if (!get_kb_item("Host/Mandrake/release")) audit(AUDIT_OS_NOT, "Mandriva / Mandake Linux");
    if (!get_kb_item("Host/Mandrake/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    cpu = get_kb_item("Host/cpu");
    if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
    if (cpu !~ "^(amd64|i[3-6]86|x86_64)$") audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "Mandriva / Mandrake Linux", cpu);
    
    
    flag = 0;
    if (rpm_check(release:"MDK2008.0", reference:"squid-2.6.STABLE16-1.4mdv2008.0", yank:"mdv")) flag++;
    if (rpm_check(release:"MDK2008.0", reference:"squid-cachemgr-2.6.STABLE16-1.4mdv2008.0", yank:"mdv")) flag++;
    
    
    if (flag)
    {
      if (report_verbosity > 0) security_warning(port:0, extra:rpm_report_get());
      else security_warning(0);
      exit(0);
    }
    else audit(AUDIT_HOST_NOT, "affected");
    
  • NASL familyRed Hat Local Security Checks
    NASL idREDHAT-RHSA-2010-0221.NASL
    descriptionAn updated squid package that fixes two security issues and several bugs is now available for Red Hat Enterprise Linux 5. The Red Hat Security Response Team has rated this update as having low security impact. Common Vulnerability Scoring System (CVSS) base scores, which give detailed severity ratings, are available for each vulnerability from the CVE links in the References section. Squid is a high-performance proxy caching server for web clients, supporting FTP, Gopher, and HTTP data objects. A flaw was found in the way Squid processed certain external ACL helper HTTP header fields that contained a delimiter that was not a comma. A remote attacker could issue a crafted request to the Squid server, causing excessive CPU use (up to 100%). (CVE-2009-2855) Note: The CVE-2009-2855 issue only affected non-default configurations that use an external ACL helper script. A flaw was found in the way Squid handled truncated DNS replies. A remote attacker able to send specially crafted UDP packets to Squid
    last seen2020-06-01
    modified2020-06-02
    plugin id46285
    published2010-05-11
    reporterThis script is Copyright (C) 2010-2019 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/46285
    titleRHEL 5 : squid (RHSA-2010:0221)
    code
    #%NASL_MIN_LEVEL 80502
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were  
    # extracted from Red Hat Security Advisory RHSA-2010:0221. The text 
    # itself is copyright (C) Red Hat, Inc.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(46285);
      script_version ("1.18");
      script_cvs_date("Date: 2019/10/25 13:36:15");
    
      script_cve_id("CVE-2009-2855", "CVE-2010-0308");
      script_bugtraq_id(36091, 37522);
      script_xref(name:"RHSA", value:"2010:0221");
    
      script_name(english:"RHEL 5 : squid (RHSA-2010:0221)");
      script_summary(english:"Checks the rpm output for the updated package");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:"The remote Red Hat host is missing a security update."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "An updated squid package that fixes two security issues and several
    bugs is now available for Red Hat Enterprise Linux 5.
    
    The Red Hat Security Response Team has rated this update as having low
    security impact. Common Vulnerability Scoring System (CVSS) base
    scores, which give detailed severity ratings, are available for each
    vulnerability from the CVE links in the References section.
    
    Squid is a high-performance proxy caching server for web clients,
    supporting FTP, Gopher, and HTTP data objects.
    
    A flaw was found in the way Squid processed certain external ACL
    helper HTTP header fields that contained a delimiter that was not a
    comma. A remote attacker could issue a crafted request to the Squid
    server, causing excessive CPU use (up to 100%). (CVE-2009-2855)
    
    Note: The CVE-2009-2855 issue only affected non-default configurations
    that use an external ACL helper script.
    
    A flaw was found in the way Squid handled truncated DNS replies. A
    remote attacker able to send specially crafted UDP packets to Squid's
    DNS client port could trigger an assertion failure in Squid's child
    process, causing that child process to exit. (CVE-2010-0308)
    
    This update also fixes the following bugs :
    
    * Squid's init script returns a non-zero value when trying to stop a
    stopped service. This is not LSB compliant and can generate
    difficulties in cluster environments. This update makes stopping LSB
    compliant. (BZ#521926)
    
    * Squid is not currently built to support MAC address filtering in
    ACLs. This update includes support for MAC address filtering.
    (BZ#496170)
    
    * Squid is not currently built to support Kerberos negotiate
    authentication. This update enables Kerberos authentication.
    (BZ#516245)
    
    * Squid does not include the port number as part of URIs it constructs
    when configured as an accelerator. This results in a 403 error. This
    update corrects this behavior. (BZ#538738)
    
    * the error_map feature does not work if the same handling is set also
    on the HTTP server that operates in deflate mode. This update fixes
    this issue. (BZ#470843)
    
    All users of squid should upgrade to this updated package, which
    resolves these issues. After installing this update, the squid service
    will be restarted automatically."
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://access.redhat.com/security/cve/cve-2009-2855"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://access.redhat.com/security/cve/cve-2010-0308"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://access.redhat.com/errata/RHSA-2010:0221"
      );
      script_set_attribute(attribute:"solution", value:"Update the affected squid package.");
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:N/I:N/A:P");
      script_set_cvss_temporal_vector("CVSS2#E:F/RL:OF/RC:C");
      script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
      script_set_attribute(attribute:"exploit_available", value:"true");
      script_cwe_id(20);
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:squid");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:redhat:enterprise_linux:5");
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2009/08/18");
      script_set_attribute(attribute:"patch_publication_date", value:"2010/03/30");
      script_set_attribute(attribute:"plugin_publication_date", value:"2010/05/11");
      script_set_attribute(attribute:"generated_plugin", value:"current");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"This script is Copyright (C) 2010-2019 and is owned by Tenable, Inc. or an Affiliate thereof.");
      script_family(english:"Red Hat Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/RedHat/release", "Host/RedHat/rpm-list", "Host/cpu");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("global_settings.inc");
    include("misc_func.inc");
    include("rpm.inc");
    
    if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    release = get_kb_item("Host/RedHat/release");
    if (isnull(release) || "Red Hat" >!< release) audit(AUDIT_OS_NOT, "Red Hat");
    os_ver = pregmatch(pattern: "Red Hat Enterprise Linux.*release ([0-9]+(\.[0-9]+)?)", string:release);
    if (isnull(os_ver)) audit(AUDIT_UNKNOWN_APP_VER, "Red Hat");
    os_ver = os_ver[1];
    if (! preg(pattern:"^5([^0-9]|$)", string:os_ver)) audit(AUDIT_OS_NOT, "Red Hat 5.x", "Red Hat " + os_ver);
    
    if (!get_kb_item("Host/RedHat/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    cpu = get_kb_item("Host/cpu");
    if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
    if ("x86_64" >!< cpu && cpu !~ "^i[3-6]86$" && "s390" >!< cpu) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "Red Hat", cpu);
    
    yum_updateinfo = get_kb_item("Host/RedHat/yum-updateinfo");
    if (!empty_or_null(yum_updateinfo)) 
    {
      rhsa = "RHSA-2010:0221";
      yum_report = redhat_generate_yum_updateinfo_report(rhsa:rhsa);
      if (!empty_or_null(yum_report))
      {
        security_report_v4(
          port       : 0,
          severity   : SECURITY_WARNING,
          extra      : yum_report 
        );
        exit(0);
      }
      else
      {
        audit_message = "affected by Red Hat security advisory " + rhsa;
        audit(AUDIT_OS_NOT, audit_message);
      }
    }
    else
    {
      flag = 0;
      if (rpm_check(release:"RHEL5", cpu:"i386", reference:"squid-2.6.STABLE21-6.el5")) flag++;
      if (rpm_check(release:"RHEL5", cpu:"s390x", reference:"squid-2.6.STABLE21-6.el5")) flag++;
      if (rpm_check(release:"RHEL5", cpu:"x86_64", reference:"squid-2.6.STABLE21-6.el5")) flag++;
    
      if (flag)
      {
        security_report_v4(
          port       : 0,
          severity   : SECURITY_WARNING,
          extra      : rpm_report_get() + redhat_report_package_caveat()
        );
        exit(0);
      }
      else
      {
        tested = pkg_tests_get();
        if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
        else audit(AUDIT_PACKAGE_NOT_INSTALLED, "squid");
      }
    }
    
  • NASL familyFirewalls
    NASL idSQUID_AUTH_HEADER_DOS.NASL
    descriptionAccording to its banner, the version of the Squid proxy caching server installed on the remote host is older than 3.0.STABLE19 / 3.1.0.14 / 2.6.STABLE23. A bug in the
    last seen2020-06-01
    modified2020-06-02
    plugin id44400
    published2010-02-05
    reporterThis script is Copyright (C) 2010-2018 Tenable Network Security, Inc.
    sourcehttps://www.tenable.com/plugins/nessus/44400
    titleSquid < 3.0.STABLE19 / 3.1.0.14 / 2.6.STABLE23 strListGetItem Function Remote DoS
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(44400);
      script_version("1.12");
      script_cvs_date("Date: 2018/11/15 20:50:22");
    
      script_cve_id("CVE-2009-2855");
      script_bugtraq_id(36091);
      script_xref(name:"Secunia", value:"36378");
    
      script_name(english:"Squid < 3.0.STABLE19 / 3.1.0.14 / 2.6.STABLE23 strListGetItem Function Remote DoS");
      script_summary(english:"Checks version of Squid");
    
      script_set_attribute(attribute:"synopsis", value:"The remote proxy server is prone to a denial of service attack.");
      script_set_attribute(attribute:"description", value:
    "According to its banner, the version of the Squid proxy caching server
    installed on the remote host is older than 3.0.STABLE19 / 3.1.0.14 /
    2.6.STABLE23. A bug in the 'strListGetItem()' function in
    'src/HttpHeaderTools.c' can result in an infinite loop when processing
    a specially crafted auth header with certain comma delimiters.
    
    A remote attacker may be able to leverage this issue to cause a denial
    of service.");
      script_set_attribute(attribute:"see_also", value:"https://bugs.squid-cache.org/show_bug.cgi?id=2541");
      script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?d0f03356");
      script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?8bf8993a");
      script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?d23f7691");
      script_set_attribute(attribute:"solution", value:
    "Upgrade to Squid version 3.0.STABLE19 / 3.1.0.14 / 2.6.STABLE23 or
    later.");
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:N/I:N/A:P");
      script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C");
      script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");
      script_set_attribute(attribute:"exploit_available", value:"false");
      script_cwe_id(20);
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2008/12/02");
      script_set_attribute(attribute:"patch_publication_date", value:"2009/09/06");
      script_set_attribute(attribute:"plugin_publication_date", value:"2010/02/05");
    
      script_set_attribute(attribute:"potential_vulnerability", value:"true");
      script_set_attribute(attribute:"plugin_type", value:"remote");
      script_set_attribute(attribute:"cpe", value:"cpe:/a:squid-cache:squid");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_family(english:"Firewalls");
    
      script_copyright(english:"This script is Copyright (C) 2010-2018 Tenable Network Security, Inc.");
    
      script_dependencies("squid_version.nasl");
      script_require_keys("www/squid", "Settings/ParanoidReport");
      script_require_ports("Services/http_proxy", 3128, 8080);
    
      exit(0);
    }
    
    include("audit.inc");
    include("global_settings.inc");
    
    if (report_paranoia < 2) audit(AUDIT_PARANOID);
    
    # Build a list of ports from the KB
    list = get_kb_list("http_proxy/*/squid/version");
    if (isnull(list)) exit(0, "The host does not appear to be running a Squid proxy server.");
    
    vulnerable = FALSE;
    foreach item (keys(list))
    {
      port = ereg_replace(pattern:'^http_proxy/([0-9]+)/squid/version', replace:'\\1', string:item);
      version = list[item];
      source = get_kb_item('http_proxy/'+port+'/squid/source');
    
      if (
        version =~ '^2\\.6\\.STABLE([0-9]|1[0-9]|2[0-2])([^0-9]|$)' ||
        version =~ '^3\\.0\\.STABLE([0-9}|1[0-8])([^0-9]|$)' ||
        version =~ '^3\\.1\\.0\\.([0-9]|1[0-9])([^0-9]|$)'
      )
      {
        vulnerable = TRUE;
        if (report_verbosity > 0)
        {
          report =
            '\n  Version source    : ' + source +
            '\n  Installed version : ' + version +
            '\n  Fixed version     : 2.6.STABLE23/3.0.STABLE19/3.1.0.20\n';
          security_warning(port:port, extra:report);
        }
        else security_warning(port);
      }
    }
    if (!vulnerable)
    {
      exit(0, "No vulnerable Squid installs were detected on the remote host.");
    }
    
  • NASL familyGain a shell remotely
    NASL idIBM_TSM_CLIENT_SWG21405562.NASL
    descriptionThe remote host is running an IBM Tivoli Storage Manager (TSM) client. The version running on the remote host has one or more of the following vulnerabilities : - A remote stack-based buffer overflow in the client acceptor daemon (CAD) scheduler could lead to the execution of arbitrary code. (CVE-2009-3853) - A remote, stack-based buffer overflow in the traditional scheduler could lead to the execution of arbitrary code. (CVE-2009-3854) - There is an unspecified, unauthorized access vulnerability in the Unix, Linux, and OS/400 API clients when specifying the MAILPROG option. This vulnerability reportedly allows a remote attacker to modify arbitrary files on the remote host. (CVE-2009-2855)
    last seen2020-06-01
    modified2020-06-02
    plugin id42824
    published2009-11-16
    reporterThis script is Copyright (C) 2009-2018 Tenable Network Security, Inc.
    sourcehttps://www.tenable.com/plugins/nessus/42824
    titleIBM Tivoli Storage Manager Client Multiple Vulnerabilities (swg21405562)
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    
    
    include("compat.inc");
    
    
    if (description)
    {
      script_id(42824);
      script_version("1.12");
    
      script_cve_id("CVE-2009-3853", "CVE-2009-3854", "CVE-2009-3855");
      script_bugtraq_id(36916);
      script_xref(name:"Secunia", value:"32534");
    
      script_name(english:"IBM Tivoli Storage Manager Client Multiple Vulnerabilities (swg21405562)");
      script_summary(english:"Does a version check on the TSM client's web server");
    
      script_set_attribute(
        attribute:"synopsis",
        value:"The remote backup client is susceptible to multiple attacks."
      );
      script_set_attribute(
        attribute:"description",
        value:
    "The remote host is running an IBM Tivoli Storage Manager (TSM) client.
    The version running on the remote host has one or more of the
    following vulnerabilities :
    
      - A remote stack-based buffer overflow in the client
        acceptor daemon (CAD) scheduler could lead to the
        execution of arbitrary code. (CVE-2009-3853)
    
      - A remote, stack-based buffer overflow in the traditional
        scheduler could lead to the execution of arbitrary
        code. (CVE-2009-3854)
    
      - There is an unspecified, unauthorized access
        vulnerability in the Unix, Linux, and OS/400 API clients
        when specifying the MAILPROG option.  This vulnerability
        reportedly allows a remote attacker to modify arbitrary
        files on the remote host. (CVE-2009-2855)"
      );
      script_set_attribute(
        attribute:"solution",
        value:
    "Upgrade to the relevant version of Tivoli Storage Manager client
    referenced in the vendor's advisory."
      );
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:C/I:C/A:C");
      script_set_cvss_temporal_vector("CVSS2#E:F/RL:OF/RC:C");
      script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
      script_set_attribute(attribute:"exploit_available", value:"true");
      script_set_attribute(attribute:"metasploit_name", value:'IBM Tivoli Storage Manager Express CAD Service Buffer Overflow');
      script_set_attribute(attribute:"exploit_framework_metasploit", value:"true");
      script_set_attribute(attribute:"exploit_framework_canvas", value:"true");
      script_set_attribute(attribute:"canvas_package", value:'D2ExploitPack');
      script_cwe_id(119);
      script_set_attribute(
        attribute:"vuln_publication_date",
        value:"2009/11/03"
      );
      script_set_attribute(
        attribute:"patch_publication_date",
        value:"2009/11/03"
      );
      script_set_attribute(
        attribute:"plugin_publication_date",
        value:"2009/11/16"
      );
     script_cvs_date("Date: 2018/07/12 19:01:15");
      script_set_attribute(attribute:"plugin_type", value:"remote");
      script_set_attribute(attribute:"cpe",value:"cpe:/a:ibm:tivoli_storage_manager");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_family(english:"Gain a shell remotely");
    
      script_copyright(english:"This script is Copyright (C) 2009-2018 Tenable Network Security, Inc.");
    
      script_dependencies("http_version.nasl", "ibm_tsm_cad_detect.nasl");
      script_require_ports("Services/www", 1581);
      script_require_keys("Services/ibm_tsm_cad");
    
      exit(0);
    }
    
    
    include("global_settings.inc");
    include("misc_func.inc");
    include("http.inc");
    
    
    port = get_http_port(default:1581, embedded:TRUE);
    tsm_port = get_kb_item("Services/ibm_tsm_cad");
    if (isnull(tsm_port)) exit(1, "The 'Services/ibm_tsm_cad' KB item is missing.");
    
    # Make sure the banner looks like TSM unless we're paranoid
    if (report_verbosity < 2)
    {
      banner = get_http_banner(port:port);
    
      if (isnull(banner))
        exit(1, "Unable to get web server banner on port "+port+".");
      if ('Server: TSM_HTTP' >!< banner)
        exit(1, "The web server on port "+port+" isn't TSM_HTTP.");
    }
    
    
    # Grab the main page.
    res = http_send_recv3(method:"GET", item:"/BACLIENT", port:port);
    if (isnull(res)) exit(1, "The web server on port "+port+" failed to respond.");
    
    
    # If it looks like TSM Client...
    if ('adsm.cadmin.clientgui.DDsmApplet.class"' >< res[1])
    {
      # Pull out the version number.
      ver = NULL;
    
      pat = ' version *= *"([0-9][0-9.]+) *"';
      matches = egrep(pattern:pat, string:res[1]);
      if (matches)
      {
        foreach match (split(matches, keep:FALSE))
        {
          item = eregmatch(pattern:pat, string:match);
          if (!isnull(item))
          {
            ver = item[1];
            if (ver[strlen(ver)-1] == '.') ver = substr(ver, 0, strlen(ver)-2);
            break;
          }
        }
      }
      if (!isnull(ver))
      {
        iver = split(ver, sep:'.', keep:FALSE);
        for (i=0; i < max_index(ver); i++)
          iver[i] = int(iver[i]);
    
        # TSM 6.1.x < 6.1.0.2
        if ((iver[0] == 6 && iver[1] == 1 && iver[2] == 0 && iver[3] < 2))
          fixed_ver = '6.1.0.2';
    
        # Checks all 5.x branches
        if (iver[0] == 5)
        {
          # TSM 5.5.x < 5.5.2.2
          if (iver[1] == 5 && (iver[2] < 2 || (iver[2] == 2 && iver[3] < 2)))
            fixed_ver = '5.5.2.2';
    
          # TSM 5.4.x < 5.4.3
          if (iver[1] == 4 && iver[2] < 3)
            fixed_ver = '5.4.3';
    
          # TSM / TSM Express 5.3 < 5.3.6.7
          if (iver[1] == 3 && (iver[2] < 6 || (iver[2] == 6 && iver[3] < 7)))
            fixed_ver = '5.3.6.7';
        }
    
        if (!isnull(fixed_ver))
        {
          if (report_verbosity > 0)
          {
            report = "
    Installed version : " + ver + "
    Fixed version     : " + fixed_ver + "
    ";
            security_hole(port:tsm_port, extra:report);
          }
          else security_hole(tsm_port);
        }
        else exit(0, "The host is not affected on port "+tsm_port+".");
      }
      else exit(1, "Unable to extract version of TSM client from port "+port+".");
    }
    else exit(1, "The web server on port "+port+" doesn't look like TSM.");
    
    
  • NASL familySuSE Local Security Checks
    NASL idSUSE_SQUID-6931.NASL
    descriptionThe following vulnerabilities have been fixed in squid : - DoS via special crafted auth header CVE-2010-0308: DoS via invalid DoS header. (CVE-2009-2855)
    last seen2020-06-01
    modified2020-06-02
    plugin id49925
    published2010-10-11
    reporterThis script is Copyright (C) 2010-2019 Tenable Network Security, Inc.
    sourcehttps://www.tenable.com/plugins/nessus/49925
    titleSuSE 10 Security Update : squid (ZYPP Patch Number 6931)

Oval

accepted2013-04-29T04:06:55.970-04:00
classvulnerability
contributors
  • nameAharon Chernin
    organizationSCAP.com, LLC
  • nameDragos Prisaca
    organizationG2, Inc.
definition_extensions
  • commentThe operating system installed on the system is Red Hat Enterprise Linux 5
    ovaloval:org.mitre.oval:def:11414
  • commentThe operating system installed on the system is CentOS Linux 5.x
    ovaloval:org.mitre.oval:def:15802
  • commentOracle Linux 5.x
    ovaloval:org.mitre.oval:def:15459
descriptionThe strListGetItem function in src/HttpHeaderTools.c in Squid 2.7 allows remote attackers to cause a denial of service via a crafted auth header with certain comma delimiters that trigger an infinite loop of calls to the strcspn function.
familyunix
idoval:org.mitre.oval:def:10592
statusaccepted
submitted2010-07-09T03:56:16-04:00
titleThe strListGetItem function in src/HttpHeaderTools.c in Squid 2.7 allows remote attackers to cause a denial of service via a crafted auth header with certain comma delimiters that trigger an infinite loop of calls to the strcspn function.
version18

Redhat

rpms
  • squid-7:2.6.STABLE21-6.el5
  • squid-debuginfo-7:2.6.STABLE21-6.el5

Seebug

bulletinFamilyexploit
descriptionCVE(CAN) ID: CVE-2009-2855 Squid是一个高效的Web缓存及代理程序,最初是为Unix平台开发的,现在也被移植到Linux和大多数的Unix类系统中,最新的Squid可以运行在Windows平台下。 Squid的src/HttpHeaderTools.c文件中的strListGetItem函数中存在拒绝服务漏洞。如果远程攻击者向服务器发送了包含有某些逗号分隔符的特制认证头,就可以在strcspn函数中触发死循环,导致服务崩溃。 Squid Web Proxy Cache 2.7 厂商补丁: Squid ----- 目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载: http://bugs.debian.org/cgi-bin/bugreport.cgi?msg=31;filename=diff;att=1;bug=534982
idSSV:12083
last seen2017-11-19
modified2009-08-21
published2009-08-21
reporterRoot
titleSquid外部认证头解析器拒绝服务漏洞

Statements

contributorTomas Hoger
lastmodified2010-03-31
organizationRed Hat
statementThis issue did not affect the versions of the squid packages, as shipped with Red Hat Enterprise Linux 3 and 4. The issue was addressed in the squid packages as shipped with Red Hat Enterprise Linux 5 via: https://rhn.redhat.com/errata/RHSA-2010-0221.html