Lucene search

K
openvasCopyright (C) 2009 Greenbone Networks GmbHOPENVAS:840046
HistoryMar 23, 2009 - 12:00 a.m.

Ubuntu Update for postgresql-8.1, postgresql-8.2 vulnerability USN-454-1

2009-03-2300:00:00
Copyright (C) 2009 Greenbone Networks GmbH
plugins.openvas.org
10

0.004 Low

EPSS

Percentile

73.3%

Ubuntu Update for Linux kernel vulnerabilities USN-454-1

###############################################################################
# OpenVAS Vulnerability Test
# $Id: gb_ubuntu_USN_454_1.nasl 7969 2017-12-01 09:23:16Z santu $
#
# Ubuntu Update for postgresql-8.1, postgresql-8.2 vulnerability USN-454-1
#
# Authors:
# System Generated Check
#
# Copyright:
# Copyright (c) 2009 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 = "PostgreSQL did not handle the "search_path" configuration option in a
  secure way for functions declared as "SECURITY DEFINER".

  Previously, an attacker could override functions and operators used by
  the security definer function to execute arbitrary SQL commands with
  the privileges of the user who created the security definer function.
  The updated version does not search the temporary table schema for
  functions and operators any more.
  
  Similarly, an attacker could put forged tables into the temporary
  table schema to trick the security definer function into using
  attacker defined data for processing. This was possible because the
  temporary schema was always implicitly searched first before all other
  entries in "search_path". The updated version now supports explicit
  placement of the temporary schema. Please see the HTML documentation
  or the manual page for "CREATE FUNCTION" for details and an example
  how to write security definer functions in a secure way.";

tag_summary = "Ubuntu Update for Linux kernel vulnerabilities USN-454-1";
tag_affected = "postgresql-8.1, postgresql-8.2 vulnerability on Ubuntu 6.06 LTS ,
  Ubuntu 6.10 ,
  Ubuntu 7.04";
tag_solution = "Please Install the Updated Packages.";



if(description)
{
  script_xref(name: "URL" , value: "http://www.ubuntu.com/usn/usn-454-1/");
  script_id(840046);
  script_version("$Revision: 7969 $");
  script_tag(name:"last_modification", value:"$Date: 2017-12-01 10:23:16 +0100 (Fri, 01 Dec 2017) $");
  script_tag(name:"creation_date", value:"2009-03-23 10:55:18 +0100 (Mon, 23 Mar 2009)");
  script_tag(name:"cvss_base", value:"6.0");
  script_tag(name:"cvss_base_vector", value:"AV:N/AC:M/Au:S/C:P/I:P/A:P");
  script_xref(name: "USN", value: "454-1");
  script_cve_id("CVE-2007-2138");
  script_name( "Ubuntu Update for postgresql-8.1, postgresql-8.2 vulnerability USN-454-1");

  script_category(ACT_GATHER_INFO);
  script_copyright("Copyright (C) 2009 Greenbone Networks GmbH");
  script_family("Ubuntu Local Security Checks");
  script_dependencies("gather-package-list.nasl");
  script_mandatory_keys("ssh/login/ubuntu_linux", "ssh/login/packages");
  script_tag(name : "summary" , value : tag_summary);
  script_tag(name : "affected" , value : tag_affected);
  script_tag(name : "solution" , value : tag_solution);
  script_tag(name : "insight" , value : tag_insight);
  script_tag(name:"qod_type", value:"package");
  script_tag(name:"solution_type", value:"VendorFix");
  exit(0);
}


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

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


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

if(release == "UBUNTU7.04")
{

  if ((res = isdpkgvuln(pkg:"libecpg-compat2", ver:"8.2.4-0ubuntu0.7.04", rls:"UBUNTU7.04")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"libecpg-dev", ver:"8.2.4-0ubuntu0.7.04", rls:"UBUNTU7.04")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"libecpg5", ver:"8.2.4-0ubuntu0.7.04", rls:"UBUNTU7.04")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"libpgtypes2", ver:"8.2.4-0ubuntu0.7.04", rls:"UBUNTU7.04")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"libpq-dev", ver:"8.2.4-0ubuntu0.7.04", rls:"UBUNTU7.04")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"libpq5", ver:"8.2.4-0ubuntu0.7.04", rls:"UBUNTU7.04")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"postgresql", ver:"8.2_8.2.4-0ubuntu0.7.04", rls:"UBUNTU7.04")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"postgresql-client", ver:"8.2_8.2.4-0ubuntu0.7.04", rls:"UBUNTU7.04")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"postgresql-contrib", ver:"8.2_8.2.4-0ubuntu0.7.04", rls:"UBUNTU7.04")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"postgresql-plperl", ver:"8.2_8.2.4-0ubuntu0.7.04", rls:"UBUNTU7.04")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"postgresql-plpython", ver:"8.2_8.2.4-0ubuntu0.7.04", rls:"UBUNTU7.04")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"postgresql-pltcl", ver:"8.2_8.2.4-0ubuntu0.7.04", rls:"UBUNTU7.04")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"postgresql-server-dev", ver:"8.2_8.2.4-0ubuntu0.7.04", rls:"UBUNTU7.04")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"postgresql-doc", ver:"8.2_8.2.4-0ubuntu0.7.04", rls:"UBUNTU7.04")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

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


if(release == "UBUNTU6.06 LTS")
{

  if ((res = isdpkgvuln(pkg:"libecpg-compat2", ver:"8.1.9-0ubuntu0.6.06", rls:"UBUNTU6.06 LTS")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"libecpg-dev", ver:"8.1.9-0ubuntu0.6.06", rls:"UBUNTU6.06 LTS")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"libecpg5", ver:"8.1.9-0ubuntu0.6.06", rls:"UBUNTU6.06 LTS")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"libpgtypes2", ver:"8.1.9-0ubuntu0.6.06", rls:"UBUNTU6.06 LTS")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"libpq-dev", ver:"8.1.9-0ubuntu0.6.06", rls:"UBUNTU6.06 LTS")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"libpq4", ver:"8.1.9-0ubuntu0.6.06", rls:"UBUNTU6.06 LTS")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"postgresql", ver:"8.1_8.1.9-0ubuntu0.6.06", rls:"UBUNTU6.06 LTS")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"postgresql-client", ver:"8.1_8.1.9-0ubuntu0.6.06", rls:"UBUNTU6.06 LTS")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"postgresql-contrib", ver:"8.1_8.1.9-0ubuntu0.6.06", rls:"UBUNTU6.06 LTS")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"postgresql-plperl", ver:"8.1_8.1.9-0ubuntu0.6.06", rls:"UBUNTU6.06 LTS")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"postgresql-plpython", ver:"8.1_8.1.9-0ubuntu0.6.06", rls:"UBUNTU6.06 LTS")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"postgresql-pltcl", ver:"8.1_8.1.9-0ubuntu0.6.06", rls:"UBUNTU6.06 LTS")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"postgresql-server-dev", ver:"8.1_8.1.9-0ubuntu0.6.06", rls:"UBUNTU6.06 LTS")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"postgresql-doc", ver:"8.1_8.1.9-0ubuntu0.6.06", rls:"UBUNTU6.06 LTS")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

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


if(release == "UBUNTU6.10")
{

  if ((res = isdpkgvuln(pkg:"libecpg-compat2", ver:"8.1.9-0ubuntu0.6.10", rls:"UBUNTU6.10")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"libecpg-dev", ver:"8.1.9-0ubuntu0.6.10", rls:"UBUNTU6.10")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"libecpg5", ver:"8.1.9-0ubuntu0.6.10", rls:"UBUNTU6.10")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"libpgtypes2", ver:"8.1.9-0ubuntu0.6.10", rls:"UBUNTU6.10")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"libpq-dev", ver:"8.1.9-0ubuntu0.6.10", rls:"UBUNTU6.10")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"libpq4", ver:"8.1.9-0ubuntu0.6.10", rls:"UBUNTU6.10")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"postgresql", ver:"8.1_8.1.9-0ubuntu0.6.10", rls:"UBUNTU6.10")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"postgresql-client", ver:"8.1_8.1.9-0ubuntu0.6.10", rls:"UBUNTU6.10")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"postgresql-contrib", ver:"8.1_8.1.9-0ubuntu0.6.10", rls:"UBUNTU6.10")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"postgresql-plperl", ver:"8.1_8.1.9-0ubuntu0.6.10", rls:"UBUNTU6.10")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"postgresql-plpython", ver:"8.1_8.1.9-0ubuntu0.6.10", rls:"UBUNTU6.10")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"postgresql-pltcl", ver:"8.1_8.1.9-0ubuntu0.6.10", rls:"UBUNTU6.10")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"postgresql-server-dev", ver:"8.1_8.1.9-0ubuntu0.6.10", rls:"UBUNTU6.10")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

  if ((res = isdpkgvuln(pkg:"postgresql-doc", ver:"8.1_8.1.9-0ubuntu0.6.10", rls:"UBUNTU6.10")) != NULL)
  {
    security_message(data:res);
    exit(0);
  }

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