Lucene search

K
nessusThis script is Copyright (C) 2004-2021 Tenable Network Security, Inc.GENTOO_GLSA-200407-13.NASL
HistoryAug 30, 2004 - 12:00 a.m.

GLSA-200407-13 : PHP: Multiple security vulnerabilities

2004-08-3000:00:00
This script is Copyright (C) 2004-2021 Tenable Network Security, Inc.
www.tenable.com
20

The remote host is affected by the vulnerability described in GLSA-200407-13 (PHP: Multiple security vulnerabilities)

Several security vulnerabilities were found and fixed in version 4.3.8 of     PHP. The strip_tags() function, used to sanitize user input, could in     certain cases allow tags containing \\0 characters (CAN-2004-0595). When     memory_limit is used, PHP might unsafely interrupt other functions     (CAN-2004-0594). The ftok and itpc functions were missing safe_mode checks.
It was possible to bypass open_basedir restrictions using MySQL's LOAD DATA     LOCAL function. Furthermore, the IMAP extension was incorrectly allocating     memory and alloca() calls were replaced with emalloc() for better stack     protection.

Impact :

Successfully exploited, the memory_limit problem could allow remote     execution of arbitrary code. By exploiting the strip_tags vulnerability, it     is possible to pass HTML code that would be considered as valid tags by the     Microsoft Internet Explorer and Safari browsers. Using ftok, itpc or     MySQL's LOAD DATA LOCAL, it is possible to bypass PHP configuration     restrictions.

Workaround :

There is no known workaround that would solve all these problems. All users     are encouraged to upgrade to the latest available versions.
#%NASL_MIN_LEVEL 70300
#
# (C) Tenable Network Security, Inc.
#
# The descriptive text and package checks in this plugin were
# extracted from Gentoo Linux Security Advisory GLSA 200407-13.
#
# The advisory text is Copyright (C) 2001-2018 Gentoo Foundation, Inc.
# and licensed under the Creative Commons - Attribution / Share Alike 
# license. See http://creativecommons.org/licenses/by-sa/3.0/
#

include('deprecated_nasl_level.inc');
include('compat.inc');

if (description)
{
  script_id(14546);
  script_version("1.22");
  script_set_attribute(attribute:"plugin_modification_date", value:"2021/01/06");

  script_cve_id("CVE-2004-0594", "CVE-2004-0595");
  script_xref(name:"GLSA", value:"200407-13");

  script_name(english:"GLSA-200407-13 : PHP: Multiple security 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-200407-13
(PHP: Multiple security vulnerabilities)

    Several security vulnerabilities were found and fixed in version 4.3.8 of
    PHP. The strip_tags() function, used to sanitize user input, could in
    certain cases allow tags containing \\0 characters (CAN-2004-0595). When
    memory_limit is used, PHP might unsafely interrupt other functions
    (CAN-2004-0594). The ftok and itpc functions were missing safe_mode checks.
    It was possible to bypass open_basedir restrictions using MySQL's LOAD DATA
    LOCAL function. Furthermore, the IMAP extension was incorrectly allocating
    memory and alloca() calls were replaced with emalloc() for better stack
    protection.
  
Impact :

    Successfully exploited, the memory_limit problem could allow remote
    execution of arbitrary code. By exploiting the strip_tags vulnerability, it
    is possible to pass HTML code that would be considered as valid tags by the
    Microsoft Internet Explorer and Safari browsers. Using ftok, itpc or
    MySQL's LOAD DATA LOCAL, it is possible to bypass PHP configuration
    restrictions.
  
Workaround :

    There is no known workaround that would solve all these problems. All users
    are encouraged to upgrade to the latest available versions."
  );
  # http://security.e-matters.de/advisories/112004.html
  script_set_attribute(
    attribute:"see_also",
    value:"http://www.nessus.org/u?83c215d0"
  );
  # http://security.e-matters.de/advisories/122004.html
  script_set_attribute(
    attribute:"see_also",
    value:"http://www.nessus.org/u?9d4bce03"
  );
  script_set_attribute(
    attribute:"see_also",
    value:"https://security.gentoo.org/glsa/200407-13"
  );
  script_set_attribute(
    attribute:"solution", 
    value:
"All PHP, mod_php and php-cgi users should upgrade to the latest stable
    version:
    # emerge sync
    # emerge -pv '>=dev-php/php-4.3.8'
    # emerge '>=dev-php/php-4.3.8'
    # emerge -pv '>=dev-php/mod_php-4.3.8'
    # emerge '>=dev-php/mod_php-4.3.8'
    # emerge -pv '>=dev-php/php-cgi-4.3.8'
    # emerge '>=dev-php/php-cgi-4.3.8'"
  );
  script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:P/I:P/A:P");
  script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
  script_set_attribute(attribute:"exploit_available", value:"true");
  script_set_attribute(attribute:"exploited_by_malware", value:"true");
  script_set_attribute(attribute:"exploit_framework_canvas", value:"true");
  script_set_attribute(attribute:"canvas_package", value:'CANVAS');

  script_set_attribute(attribute:"plugin_type", value:"local");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:gentoo:linux:mod_php");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:gentoo:linux:php");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:gentoo:linux:php-cgi");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:gentoo:linux");

  script_set_attribute(attribute:"patch_publication_date", value:"2004/07/15");
  script_set_attribute(attribute:"plugin_publication_date", value:"2004/08/30");
  script_set_attribute(attribute:"vuln_publication_date", value:"2004/07/13");
  script_end_attributes();

  script_category(ACT_GATHER_INFO);
  script_copyright(english:"This script is Copyright (C) 2004-2021 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:"dev-php/php-cgi", unaffected:make_list("ge 4.3.8"), vulnerable:make_list("le 4.3.7-r1"))) flag++;
if (qpkg_check(package:"dev-php/php", unaffected:make_list("ge 4.3.8"), vulnerable:make_list("le 4.3.7-r1"))) flag++;
if (qpkg_check(package:"dev-php/mod_php", unaffected:make_list("ge 4.3.8"), vulnerable:make_list("le 4.3.7-r1"))) 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, "PHP");
}