Lucene search

K
nessusThis script is Copyright (C) 2012-2024 Tenable Network Security, Inc.PHP_5_3_9.NASL
HistoryJan 13, 2012 - 12:00 a.m.

PHP < 5.3.9 Multiple Vulnerabilities

2012-01-1300:00:00
This script is Copyright (C) 2012-2024 Tenable Network Security, Inc.
www.tenable.com
64

CVSS2

7.5

Attack Vector

NETWORK

Attack Complexity

LOW

Authentication

NONE

Confidentiality Impact

PARTIAL

Integrity Impact

PARTIAL

Availability Impact

PARTIAL

AV:N/AC:L/Au:N/C:P/I:P/A:P

AI Score

8.2

Confidence

High

EPSS

0.882

Percentile

98.8%

According to its banner, the version of PHP installed on the remote host is older than 5.3.9. As such, it may be affected by the following security issues :

  • The ‘is_a()’ function in PHP 5.3.7 and 5.3.8 triggers a call to ‘__autoload()’. (CVE-2011-3379)

  • It is possible to create a denial of service condition by sending multiple, specially crafted requests containing parameter values that cause hash collisions when computing the hash values for storage in a hash table. (CVE-2011-4885)

  • An integer overflow exists in the exif_process_IFD_TAG function in exif.c that can allow a remote attacker to read arbitrary memory locations or cause a denial of service condition. This vulnerability only affects PHP 5.4.0beta2 on 32-bit platforms. (CVE-2011-4566)

  • Calls to libxslt are not restricted via xsltSetSecurityPrefs(), which could allow an attacker to create or overwrite files, resulting in arbitrary code execution. (CVE-2012-0057)

  • An error exists in the function ‘tidy_diagnose’ that can allow an attacker to cause the application to dereference a NULL pointer. This causes the application to crash. (CVE-2012-0781)

  • The ‘PDORow’ implementation contains an error that can cause application crashes when interacting with the session feature. (CVE-2012-0788)

  • An error exists in the timezone handling such that repeated calls to the function ‘strtotime’ can allow a denial of service attack via memory consumption.
    (CVE-2012-0789)

#%NASL_MIN_LEVEL 70300
#
# (C) Tenable Network Security, Inc.
#

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

if (description)
{
  script_id(57537);
  script_version("1.26");
  script_set_attribute(attribute:"plugin_modification_date", value:"2024/05/31");

  script_cve_id(
    "CVE-2011-3379",
    "CVE-2011-4566",
    "CVE-2011-4885",
    "CVE-2012-0057",
    "CVE-2012-0781",
    "CVE-2012-0788",
    "CVE-2012-0789"
  );
  script_bugtraq_id(
    49754,
    50907,
    51193,
    51806,
    51952,
    51992,
    52043
  );
  script_xref(name:"TRA", value:"TRA-2012-01");

  script_name(english:"PHP < 5.3.9 Multiple Vulnerabilities");

  script_set_attribute(attribute:"synopsis", value:
"The remote web server uses a version of PHP that is affected by
multiple flaws.");
  script_set_attribute(attribute:"description", value:
"According to its banner, the version of PHP installed on the remote
host is older than 5.3.9.  As such, it may be affected by the following
security issues :

  - The 'is_a()' function in PHP 5.3.7 and 5.3.8 triggers a 
    call to '__autoload()'. (CVE-2011-3379)

  - It is possible to create a denial of service condition 
    by sending multiple, specially crafted requests 
    containing parameter values that cause hash collisions 
    when computing the hash values for storage in a hash 
    table.  (CVE-2011-4885)
   
  - An integer overflow exists in the exif_process_IFD_TAG 
    function in exif.c that can allow a remote attacker to 
    read arbitrary memory locations or cause a denial of 
    service condition.  This vulnerability only affects PHP 
    5.4.0beta2 on 32-bit platforms. (CVE-2011-4566)

  - Calls to libxslt are not restricted via
    xsltSetSecurityPrefs(), which could allow an attacker
    to create or overwrite files, resulting in arbitrary
    code execution. (CVE-2012-0057)

  - An error exists in the function 'tidy_diagnose' that
    can allow an attacker to cause the application to 
    dereference a NULL pointer. This causes the application
    to crash. (CVE-2012-0781)

  - The 'PDORow' implementation contains an error that can
    cause application crashes when interacting with the 
    session feature. (CVE-2012-0788)

  - An error exists in the timezone handling such that
    repeated calls to the function 'strtotime' can allow
    a denial of service attack via memory consumption.
    (CVE-2012-0789)");
  script_set_attribute(attribute:"see_also", value:"https://www.tenable.com/security/research/tra-2012-01");
  script_set_attribute(attribute:"see_also", value:"http://xhe.myxwiki.org/xwiki/bin/view/XSLT/Application_PHP5");
  script_set_attribute(attribute:"see_also", value:"http://www.php.net/archive/2012.php#id2012-01-11-1");
  script_set_attribute(attribute:"see_also", value:"https://seclists.org/bugtraq/2012/Jan/91");
  script_set_attribute(attribute:"see_also", value:"https://bugs.php.net/bug.php?id=55475");
  script_set_attribute(attribute:"see_also", value:"https://bugs.php.net/bug.php?id=55776");
  script_set_attribute(attribute:"see_also", value:"https://bugs.php.net/bug.php?id=53502");
  script_set_attribute(attribute:"see_also", value:"http://www.php.net/ChangeLog-5.php#5.3.9");
  script_set_attribute(attribute:"solution", value:
"Upgrade to PHP version 5.3.9 or later.");
  script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:P");
  script_set_cvss_temporal_vector("CVSS2#E:H/RL:OF/RC:C");

  script_set_attribute(attribute:"exploitability_ease", value:"No exploit is required");
  script_set_attribute(attribute:"exploit_available", value:"false");
  script_set_attribute(attribute:"exploit_framework_core", value:"true");
  script_set_attribute(attribute:"exploited_by_malware", value:"true");

  script_set_attribute(attribute:"vuln_publication_date", value:"2011/09/23");
  script_set_attribute(attribute:"patch_publication_date", value:"2012/01/11");
  script_set_attribute(attribute:"plugin_publication_date", value:"2012/01/13");

  script_set_attribute(attribute:"plugin_type", value:"remote");
  script_set_attribute(attribute:"cpe", value:"cpe:/a:php:php");
  script_set_attribute(attribute:"thorough_tests", value:"true");
  script_set_attribute(attribute:"enable_cgi_scanning", value:"true");
  script_end_attributes();

  script_category(ACT_GATHER_INFO);
  script_family(english:"CGI abuses");

  script_copyright(english:"This script is Copyright (C) 2012-2024 Tenable Network Security, Inc.");

  script_dependencies("php_version.nasl");
  script_require_keys("www/PHP");
  script_exclude_keys("Settings/disable_cgi_scanning");
  script_require_ports("Services/www", 80);

  exit(0);
}

include("global_settings.inc");
include("misc_func.inc");
include("http.inc");
include("audit.inc");
include("webapp_func.inc");

port = get_http_port(default:80, php:TRUE);

php = get_php_from_kb(
  port : port,
  exit_on_fail : TRUE
);

version = php["ver"];
source = php["src"];

backported = get_kb_item('www/php/'+port+'/'+version+'/backported');

if (report_paranoia < 2 && backported)
  audit(AUDIT_BACKPORT_SERVICE, port, "PHP "+version+" install");

if (
  version =~ "^[0-4]\." || 
  version =~ "^5\.[0-2]\." ||
  version =~ "^5\.3\.[0-8]($|[^0-9])" ||
  version =~ "^5\.4\.0(alpha|beta)"
)
{
  if (report_verbosity > 0)
  {
    report =
      '\n  Version source     : '+source +
      '\n  Installed version  : '+version+
      '\n  Fixed version      : 5.3.9\n';
    security_hole(port:port, extra:report);
  }
  else security_hole(port);
  exit(0);
}
else audit(AUDIT_LISTEN_NOT_VULN, "PHP", port, version);

CVSS2

7.5

Attack Vector

NETWORK

Attack Complexity

LOW

Authentication

NONE

Confidentiality Impact

PARTIAL

Integrity Impact

PARTIAL

Availability Impact

PARTIAL

AV:N/AC:L/Au:N/C:P/I:P/A:P

AI Score

8.2

Confidence

High

EPSS

0.882

Percentile

98.8%