Debian Security Advisory DSA 2927-1 (libxfont - security update)

2014-05-13T00:00:00
ID OPENVAS:702927
Type openvas
Reporter Copyright (c) 2014 Greenbone Networks GmbH http://greenbone.net
Modified 2017-07-13T00:00:00

Description

Ilja van Sprundel of IOActive discovered several security issues in the X.Org libXfont library, which may allow a local, authenticated user to attempt to raise privileges; or a remote attacker who can control the font server to attempt to execute code with the privileges of the X server.

CVE-2014-0209 Integer overflow of allocations in font metadata file parsing could allow a local user who is already authenticated to the X server to overwrite other memory in the heap.

CVE-2014-0210 libxfont does not validate length fields when parsing xfs protocol replies allowing to write past the bounds of allocated memory when storing the returned data from the font server.

CVE-2014-0211 Integer overflows calculating memory needs for xfs replies could result in allocating too little memory and then writing the returned data from the font server past the end of the allocated buffer.

                                        
                                            # OpenVAS Vulnerability Test
# $Id: deb_2927.nasl 6715 2017-07-13 09:57:40Z teissa $
# Auto-generated from advisory DSA 2927-1 using nvtgen 1.0
# Script version: 1.0
#
# Author:
# Greenbone Networks
#
# Copyright:
# Copyright (c) 2014 Greenbone Networks GmbH http://greenbone.net
# Text descriptions are largely excerpted from the referenced
# advisory, and are Copyright (c) the respective author(s)
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# 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.
#

tag_affected  = "libxfont on Debian Linux";
tag_solution  = "For the oldstable distribution (squeeze), these problems have been fixed in
version 1:1.4.1-5.

For the stable distribution (wheezy), these problems have been fixed in
version 1:1.4.5-4.

For the unstable distribution (sid), these problems have been fixed in
version 1:1.4.7-2.

We recommend that you upgrade your libxfont packages.";
tag_summary   = "Ilja van Sprundel of IOActive discovered several security issues in the
X.Org libXfont library, which may allow a local, authenticated user to
attempt to raise privileges; or a remote attacker who can control the
font server to attempt to execute code with the privileges of the X
server.

CVE-2014-0209 
Integer overflow of allocations in font metadata file parsing could
allow a local user who is already authenticated to the X server to
overwrite other memory in the heap.

CVE-2014-0210 
libxfont does not validate length fields when parsing xfs protocol
replies allowing to write past the bounds of allocated memory when
storing the returned data from the font server.

CVE-2014-0211 
Integer overflows calculating memory needs for xfs replies could
result in allocating too little memory and then writing the returned
data from the font server past the end of the allocated buffer.";
tag_vuldetect = "This check tests the installed software version using the apt package manager.";

if(description)
{
    script_id(702927);
    script_version("$Revision: 6715 $");
    script_cve_id("CVE-2014-0209", "CVE-2014-0210", "CVE-2014-0211");
    script_name("Debian Security Advisory DSA 2927-1 (libxfont - security update)");
    script_tag(name: "last_modification", value:"$Date: 2017-07-13 11:57:40 +0200 (Thu, 13 Jul 2017) $");
    script_tag(name: "creation_date", value:"2014-05-13 00:00:00 +0200 (Tue, 13 May 2014)");
    script_tag(name:"cvss_base", value:"7.5");
    script_tag(name:"cvss_base_vector", value:"AV:N/AC:L/Au:N/C:P/I:P/A:P");

    script_xref(name: "URL", value: "http://www.debian.org/security/2014/dsa-2927.html");


    script_category(ACT_GATHER_INFO);

    script_copyright("Copyright (c) 2014 Greenbone Networks GmbH http://greenbone.net");
    script_family("Debian Local Security Checks");
    script_dependencies("gather-package-list.nasl");
    script_mandatory_keys("ssh/login/debian_linux", "ssh/login/packages");
    script_tag(name: "affected",  value: tag_affected);
#    script_tag(name: "impact",    value: tag_impact);
    script_tag(name: "solution",  value: tag_solution);
    script_tag(name: "summary",   value: tag_summary);
    script_tag(name: "vuldetect", value: tag_vuldetect);
    script_tag(name:"qod_type", value:"package");
    script_tag(name:"solution_type", value:"VendorFix");

    exit(0);
}

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

res = "";
report = "";
if ((res = isdpkgvuln(pkg:"libxfont-dev", ver:"1:1.4.1-5", rls:"DEB6.0")) != NULL) {
    report += res;
}
if ((res = isdpkgvuln(pkg:"libxfont1", ver:"1:1.4.1-5", rls:"DEB6.0")) != NULL) {
    report += res;
}
if ((res = isdpkgvuln(pkg:"libxfont1-dbg", ver:"1:1.4.1-5", rls:"DEB6.0")) != NULL) {
    report += res;
}
if ((res = isdpkgvuln(pkg:"libxfont-dev", ver:"1:1.4.5-4", rls:"DEB7.0")) != NULL) {
    report += res;
}
if ((res = isdpkgvuln(pkg:"libxfont1", ver:"1:1.4.5-4", rls:"DEB7.0")) != NULL) {
    report += res;
}
if ((res = isdpkgvuln(pkg:"libxfont1-dbg", ver:"1:1.4.5-4", rls:"DEB7.0")) != NULL) {
    report += res;
}
if ((res = isdpkgvuln(pkg:"libxfont-dev", ver:"1:1.4.5-4", rls:"DEB7.1")) != NULL) {
    report += res;
}
if ((res = isdpkgvuln(pkg:"libxfont1", ver:"1:1.4.5-4", rls:"DEB7.1")) != NULL) {
    report += res;
}
if ((res = isdpkgvuln(pkg:"libxfont1-dbg", ver:"1:1.4.5-4", rls:"DEB7.1")) != NULL) {
    report += res;
}
if ((res = isdpkgvuln(pkg:"libxfont-dev", ver:"1:1.4.5-4", rls:"DEB7.2")) != NULL) {
    report += res;
}
if ((res = isdpkgvuln(pkg:"libxfont1", ver:"1:1.4.5-4", rls:"DEB7.2")) != NULL) {
    report += res;
}
if ((res = isdpkgvuln(pkg:"libxfont1-dbg", ver:"1:1.4.5-4", rls:"DEB7.2")) != NULL) {
    report += res;
}
if ((res = isdpkgvuln(pkg:"libxfont-dev", ver:"1:1.4.5-4", rls:"DEB7.3")) != NULL) {
    report += res;
}
if ((res = isdpkgvuln(pkg:"libxfont1", ver:"1:1.4.5-4", rls:"DEB7.3")) != NULL) {
    report += res;
}
if ((res = isdpkgvuln(pkg:"libxfont1-dbg", ver:"1:1.4.5-4", rls:"DEB7.3")) != NULL) {
    report += res;
}

if (report != "") {
    security_message(data:report);
} else if (__pkg_match) {
    exit(99); # Not vulnerable.
}