Lucene search

K
openvasCopyright (c) 2011 Greenbone Networks GmbHOPENVAS:831474
HistoryOct 21, 2011 - 12:00 a.m.

Mandriva Update for libpng MDVSA-2011:151 (libpng)

2011-10-2100:00:00
Copyright (c) 2011 Greenbone Networks GmbH
plugins.openvas.org
8

0.021 Low

EPSS

Percentile

87.7%

Check for the Version of libpng

###############################################################################
# OpenVAS Vulnerability Test
#
# Mandriva Update for libpng MDVSA-2011:151 (libpng)
#
# Authors:
# System Generated Check
#
# Copyright:
# Copyright (c) 2011 Greenbone Networks GmbH, http://www.greenbone.net
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2
# (or any later version), as published by the Free Software Foundation.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
###############################################################################

include("revisions-lib.inc");
tag_insight = "Multiple vulnerabilities has been discovered and corrected in libpng:

  The png_format_buffer function in pngerror.c in libpng allows
  remote attackers to cause a denial of service (application crash)
  via a crafted PNG image that triggers an out-of-bounds read during
  the copying of error-message data.  NOTE: this vulnerability exists
  because of a CVE-2004-0421 regression (CVE-2011-2501).
  
  Buffer overflow in libpng, when used by an application that calls the
  png_rgb_to_gray function but not the png_set_expand function, allows
  remote attackers to overwrite memory with an arbitrary amount of data,
  and possibly have unspecified other impact, via a crafted PNG image
  (CVE-2011-2690).
  
  The png_err function in pngerror.c in libpng makes a function call
  using a NULL pointer argument instead of an empty-string argument,
  which allows remote attackers to cause a denial of service (application
  crash) via a crafted PNG image (CVE-2011-2691). NOTE: This does not
  affect the binary packages in Mandriva, but could affect users if
  PNG_NO_ERROR_TEXT is defined using the libpng-source-1.?.?? package.
  
  The png_handle_sCAL function in pngrutil.c in libpng does not properly
  handle invalid sCAL chunks, which allows remote attackers to cause
  a denial of service (memory corruption and application crash) or
  possibly have unspecified other impact via a crafted PNG image that
  triggers the reading of uninitialized memory (CVE-2011-2692).
  
  The updated packages have been patched to correct these issues.";
tag_solution = "Please Install the Updated Packages.";

tag_affected = "libpng on Mandriva Linux 2010.1,
  Mandriva Linux 2010.1/X86_64,
  Mandriva Enterprise Server 5,
  Mandriva Enterprise Server 5/X86_64";


if(description)
{
  script_xref(name : "URL" , value : "http://lists.mandriva.com/security-announce/2011-10/msg00026.php");
  script_id(831474);
  script_version("$Revision: 6570 $");
  script_tag(name:"last_modification", value:"$Date: 2017-07-06 15:06:35 +0200 (Thu, 06 Jul 2017) $");
  script_tag(name:"creation_date", value:"2011-10-21 16:31:29 +0200 (Fri, 21 Oct 2011)");
  script_tag(name:"cvss_base", value:"6.8");
  script_tag(name:"cvss_base_vector", value:"AV:N/AC:M/Au:N/C:P/I:P/A:P");
  script_xref(name: "MDVSA", value: "2011:151");
  script_cve_id("CVE-2004-0421", "CVE-2011-2501", "CVE-2011-2690", "CVE-2011-2691", "CVE-2011-2692");
  script_name("Mandriva Update for libpng MDVSA-2011:151 (libpng)");

  script_summary("Check for the Version of libpng");
  script_category(ACT_GATHER_INFO);
  script_copyright("Copyright (c) 2011 Greenbone Networks GmbH");
  script_family("Mandrake Local Security Checks");
  script_dependencies("gather-package-list.nasl");
  script_mandatory_keys("ssh/login/mandriva_mandrake_linux", "ssh/login/release");
  script_tag(name : "affected" , value : tag_affected);
  script_tag(name : "insight" , value : tag_insight);
  script_tag(name : "solution" , value : tag_solution);
  script_tag(name:"qod_type", value:"package");
  script_tag(name:"solution_type", value:"VendorFix");
  exit(0);
}


include("pkg-lib-rpm.inc");

release = get_kb_item("ssh/login/release");


res = "";
if(release == NULL){
  exit(0);
}

if(release == "MNDK_mes5")
{

  if ((res = isrpmvuln(pkg:"libpng3", rpm:"libpng3~1.2.31~2.4mdvmes5.2", rls:"MNDK_mes5")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isrpmvuln(pkg:"libpng-devel", rpm:"libpng-devel~1.2.31~2.4mdvmes5.2", rls:"MNDK_mes5")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isrpmvuln(pkg:"libpng-source", rpm:"libpng-source~1.2.31~2.4mdvmes5.2", rls:"MNDK_mes5")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isrpmvuln(pkg:"libpng-static-devel", rpm:"libpng-static-devel~1.2.31~2.4mdvmes5.2", rls:"MNDK_mes5")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isrpmvuln(pkg:"libpng", rpm:"libpng~1.2.31~2.4mdvmes5.2", rls:"MNDK_mes5")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isrpmvuln(pkg:"lib64png3", rpm:"lib64png3~1.2.31~2.4mdvmes5.2", rls:"MNDK_mes5")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isrpmvuln(pkg:"lib64png-devel", rpm:"lib64png-devel~1.2.31~2.4mdvmes5.2", rls:"MNDK_mes5")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isrpmvuln(pkg:"lib64png-static-devel", rpm:"lib64png-static-devel~1.2.31~2.4mdvmes5.2", rls:"MNDK_mes5")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if (__pkg_match) exit(99); # Not vulnerable.
  exit(0);
}


if(release == "MNDK_2010.1")
{

  if ((res = isrpmvuln(pkg:"libpng3", rpm:"libpng3~1.2.43~1.2mdv2010.2", rls:"MNDK_2010.1")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isrpmvuln(pkg:"libpng-devel", rpm:"libpng-devel~1.2.43~1.2mdv2010.2", rls:"MNDK_2010.1")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isrpmvuln(pkg:"libpng-source", rpm:"libpng-source~1.2.43~1.2mdv2010.2", rls:"MNDK_2010.1")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isrpmvuln(pkg:"libpng-static-devel", rpm:"libpng-static-devel~1.2.43~1.2mdv2010.2", rls:"MNDK_2010.1")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isrpmvuln(pkg:"libpng", rpm:"libpng~1.2.43~1.2mdv2010.2", rls:"MNDK_2010.1")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isrpmvuln(pkg:"lib64png3", rpm:"lib64png3~1.2.43~1.2mdv2010.2", rls:"MNDK_2010.1")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isrpmvuln(pkg:"lib64png-devel", rpm:"lib64png-devel~1.2.43~1.2mdv2010.2", rls:"MNDK_2010.1")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isrpmvuln(pkg:"lib64png-static-devel", rpm:"lib64png-static-devel~1.2.43~1.2mdv2010.2", rls:"MNDK_2010.1")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if (__pkg_match) exit(99); # Not vulnerable.
  exit(0);
}