Debian DLA-1126-1 : libxfont security update

2017-10-09T00:00:00
ID DEBIAN_DLA-1126.NASL
Type nessus
Reporter This script is Copyright (C) 2017-2020 Tenable Network Security, Inc.
Modified 2017-10-09T00:00:00

Description

It was discovered that there two vulnerabilities the library providing font selection and rasterisation, libxfont :

  • CVE-2017-13720: If a pattern contained a '?' character any character in the string is skipped even if it was a '\0'. The rest of the matching then read invalid memory.

  • CVE-2017-13722: A malformed PCF file could cause the library to make reads from random heap memory that was behind the strings buffer, leading to an application crash or a information leak.

For Debian 7 'Wheezy', this issue has been fixed in libxfont version 1:1.4.5-5+deb7u1.

We recommend that you upgrade your libxfont packages.

NOTE: Tenable Network Security has extracted the preceding description block directly from the DLA security advisory. Tenable has attempted to automatically clean and format it as much as possible without introducing additional issues.

                                        
                                            #%NASL_MIN_LEVEL 80502
#
# (C) Tenable Network Security, Inc.
#
# The descriptive text and package checks in this plugin were
# extracted from Debian Security Advisory DLA-1126-1. The text
# itself is copyright (C) Software in the Public Interest, Inc.
#

include("compat.inc");

if (description)
{
  script_id(103711);
  script_version("3.2");
  script_set_attribute(attribute:"plugin_modification_date", value:"2020/03/12");

  script_name(english:"Debian DLA-1126-1 : libxfont security update");
  script_summary(english:"Checks dpkg output for the updated packages.");

  script_set_attribute(
    attribute:"synopsis", 
    value:"The remote Debian host is missing a security update."
  );
  script_set_attribute(
    attribute:"description", 
    value:
"It was discovered that there two vulnerabilities the library providing
font selection and rasterisation, libxfont :

  - CVE-2017-13720: If a pattern contained a '?' character
    any character in the string is skipped even if it was a
    '\0'. The rest of the matching then read invalid memory.

  - CVE-2017-13722: A malformed PCF file could cause the
    library to make reads from random heap memory that was
    behind the `strings` buffer, leading to an application
    crash or a information leak.

For Debian 7 'Wheezy', this issue has been fixed in libxfont version
1:1.4.5-5+deb7u1.

We recommend that you upgrade your libxfont packages.

NOTE: Tenable Network Security has extracted the preceding description
block directly from the DLA security advisory. Tenable has attempted
to automatically clean and format it as much as possible without
introducing additional issues."
  );
  script_set_attribute(
    attribute:"see_also",
    value:"https://lists.debian.org/debian-lts-announce/2017/10/msg00006.html"
  );
  script_set_attribute(
    attribute:"see_also",
    value:"https://packages.debian.org/source/wheezy/libxfont"
  );
  script_set_attribute(attribute:"solution", value:"Upgrade the affected packages.");
  script_set_attribute(attribute:"risk_factor", value:"High");

  script_set_attribute(attribute:"plugin_type", value:"local");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:libxfont-dev");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:libxfont1");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:libxfont1-dbg");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:libxfont1-udeb");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:debian:debian_linux:7.0");

  script_set_attribute(attribute:"patch_publication_date", value:"2017/10/07");
  script_set_attribute(attribute:"plugin_publication_date", value:"2017/10/09");
  script_end_attributes();

  script_category(ACT_GATHER_INFO);
  script_copyright(english:"This script is Copyright (C) 2017-2020 Tenable Network Security, Inc.");
  script_family(english:"Debian Local Security Checks");

  script_dependencies("ssh_get_info.nasl");
  script_require_keys("Host/local_checks_enabled", "Host/Debian/release", "Host/Debian/dpkg-l");

  exit(0);
}


include("audit.inc");
include("debian_package.inc");


if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
if (!get_kb_item("Host/Debian/release")) audit(AUDIT_OS_NOT, "Debian");
if (!get_kb_item("Host/Debian/dpkg-l")) audit(AUDIT_PACKAGE_LIST_MISSING);


flag = 0;
if (deb_check(release:"7.0", prefix:"libxfont-dev", reference:"1:1.4.5-5+deb7u1")) flag++;
if (deb_check(release:"7.0", prefix:"libxfont1", reference:"1:1.4.5-5+deb7u1")) flag++;
if (deb_check(release:"7.0", prefix:"libxfont1-dbg", reference:"1:1.4.5-5+deb7u1")) flag++;
if (deb_check(release:"7.0", prefix:"libxfont1-udeb", reference:"1:1.4.5-5+deb7u1")) flag++;

if (flag)
{
  if (report_verbosity > 0) security_hole(port:0, extra:deb_report_get());
  else security_hole(0);
  exit(0);
}
else audit(AUDIT_HOST_NOT, "affected");