Several security vulnerabilities were corrected in libxml2, the GNOME XML library.
CVE-2017-8872
Global buffer-overflow in the htmlParseTryOrFinish function.
CVE-2017-18258
The xz_head function in libxml2 allows remote attackers to cause a denial of service (memory consumption) via a crafted LZMA file, because the decoder functionality does not restrict memory usage to what is required for a legitimate file.
CVE-2018-14404
A NULL pointer dereference vulnerability exists in the xpath.c:xmlXPathCompOpEval() function of libxml2 when parsing an invalid XPath expression in the XPATH_OP_AND or XPATH_OP_OR case.
Applications processing untrusted XSL format inputs may be vulnerable to a denial of service attack.
CVE-2018-14567
If the option --with-lzma is used, allows remote attackers to cause a denial of service (infinite loop) via a crafted XML file.
CVE-2019-19956
The xmlParseBalancedChunkMemoryRecover function has a memory leak related to newDoc->oldNs.
CVE-2019-20388
A memory leak was found in the xmlSchemaValidateStream function of libxml2. Applications that use this library may be vulnerable to memory not being freed leading to a denial of service.
CVE-2020-7595
Infinite loop in xmlStringLenDecodeEntities can cause a denial of service.
CVE-2020-24977
Out-of-bounds read restricted to xmllint --htmlout.
For Debian 9 stretch, these problems have been fixed in version 2.9.4+dfsg1-2.2+deb9u3.
We recommend that you upgrade your libxml2 packages.
For the detailed security status of libxml2 please refer to its security tracker page at:
https://security-tracker.debian.org/tracker/libxml2
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.
#
# (C) Tenable Network Security, Inc.
#
# The descriptive text and package checks in this plugin were
# extracted from Debian Security Advisory DLA-2369-1. The text
# itself is copyright (C) Software in the Public Interest, Inc.
#
include('compat.inc');
if (description)
{
script_id(140469);
script_version("1.6");
script_set_attribute(attribute:"plugin_modification_date", value:"2024/02/21");
script_cve_id(
"CVE-2017-18258",
"CVE-2017-8872",
"CVE-2018-14404",
"CVE-2018-14567",
"CVE-2019-19956",
"CVE-2019-20388",
"CVE-2020-24977",
"CVE-2020-7595"
);
script_name(english:"Debian DLA-2369-1 : libxml2 security update");
script_set_attribute(attribute:"synopsis", value:
"The remote Debian host is missing a security update.");
script_set_attribute(attribute:"description", value:
"Several security vulnerabilities were corrected in libxml2, the GNOME
XML library.
CVE-2017-8872
Global buffer-overflow in the htmlParseTryOrFinish function.
CVE-2017-18258
The xz_head function in libxml2 allows remote attackers to cause a
denial of service (memory consumption) via a crafted LZMA file,
because the decoder functionality does not restrict memory usage to
what is required for a legitimate file.
CVE-2018-14404
A NULL pointer dereference vulnerability exists in the
xpath.c:xmlXPathCompOpEval() function of libxml2 when parsing an
invalid XPath expression in the XPATH_OP_AND or XPATH_OP_OR case.
Applications processing untrusted XSL format inputs may be vulnerable
to a denial of service attack.
CVE-2018-14567
If the option --with-lzma is used, allows remote attackers to cause a
denial of service (infinite loop) via a crafted XML file.
CVE-2019-19956
The xmlParseBalancedChunkMemoryRecover function has a memory leak
related to newDoc->oldNs.
CVE-2019-20388
A memory leak was found in the xmlSchemaValidateStream function of
libxml2. Applications that use this library may be vulnerable to
memory not being freed leading to a denial of service.
CVE-2020-7595
Infinite loop in xmlStringLenDecodeEntities can cause a denial of
service.
CVE-2020-24977
Out-of-bounds read restricted to xmllint --htmlout.
For Debian 9 stretch, these problems have been fixed in version
2.9.4+dfsg1-2.2+deb9u3.
We recommend that you upgrade your libxml2 packages.
For the detailed security status of libxml2 please refer to its
security tracker page at:
https://security-tracker.debian.org/tracker/libxml2
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/2020/09/msg00009.html");
script_set_attribute(attribute:"see_also", value:"https://packages.debian.org/source/stretch/libxml2");
script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/source-package/libxml2");
script_set_attribute(attribute:"solution", value:
"Upgrade the affected packages.");
script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:P/I:N/A:P");
script_set_cvss_temporal_vector("CVSS2#E:POC/RL:OF/RC:C");
script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H");
script_set_cvss3_temporal_vector("CVSS:3.0/E:P/RL:O/RC:C");
script_set_attribute(attribute:"cvss_score_source", value:"CVE-2020-24977");
script_set_attribute(attribute:"cvss3_score_source", value:"CVE-2017-8872");
script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
script_set_attribute(attribute:"exploit_available", value:"true");
script_set_attribute(attribute:"vuln_publication_date", value:"2017/05/10");
script_set_attribute(attribute:"patch_publication_date", value:"2020/09/09");
script_set_attribute(attribute:"plugin_publication_date", value:"2020/09/10");
script_set_attribute(attribute:"plugin_type", value:"local");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:libxml2");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:libxml2-dbg");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:libxml2-dev");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:libxml2-doc");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:libxml2-utils");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:libxml2-utils-dbg");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:python-libxml2");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:python-libxml2-dbg");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:python3-libxml2");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:python3-libxml2-dbg");
script_set_attribute(attribute:"cpe", value:"cpe:/o:debian:debian_linux:9.0");
script_set_attribute(attribute:"generated_plugin", value:"current");
script_end_attributes();
script_category(ACT_GATHER_INFO);
script_family(english:"Debian Local Security Checks");
script_copyright(english:"This script is Copyright (C) 2020-2024 and is owned by Tenable, Inc. or an Affiliate thereof.");
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:"9.0", prefix:"libxml2", reference:"2.9.4+dfsg1-2.2+deb9u3")) flag++;
if (deb_check(release:"9.0", prefix:"libxml2-dbg", reference:"2.9.4+dfsg1-2.2+deb9u3")) flag++;
if (deb_check(release:"9.0", prefix:"libxml2-dev", reference:"2.9.4+dfsg1-2.2+deb9u3")) flag++;
if (deb_check(release:"9.0", prefix:"libxml2-doc", reference:"2.9.4+dfsg1-2.2+deb9u3")) flag++;
if (deb_check(release:"9.0", prefix:"libxml2-utils", reference:"2.9.4+dfsg1-2.2+deb9u3")) flag++;
if (deb_check(release:"9.0", prefix:"libxml2-utils-dbg", reference:"2.9.4+dfsg1-2.2+deb9u3")) flag++;
if (deb_check(release:"9.0", prefix:"python-libxml2", reference:"2.9.4+dfsg1-2.2+deb9u3")) flag++;
if (deb_check(release:"9.0", prefix:"python-libxml2-dbg", reference:"2.9.4+dfsg1-2.2+deb9u3")) flag++;
if (deb_check(release:"9.0", prefix:"python3-libxml2", reference:"2.9.4+dfsg1-2.2+deb9u3")) flag++;
if (deb_check(release:"9.0", prefix:"python3-libxml2-dbg", reference:"2.9.4+dfsg1-2.2+deb9u3")) flag++;
if (flag)
{
if (report_verbosity > 0) security_warning(port:0, extra:deb_report_get());
else security_warning(0);
exit(0);
}
else audit(AUDIT_HOST_NOT, "affected");
Vendor | Product | Version | CPE |
---|---|---|---|
debian | debian_linux | libxml2 | p-cpe:/a:debian:debian_linux:libxml2 |
debian | debian_linux | libxml2-dbg | p-cpe:/a:debian:debian_linux:libxml2-dbg |
debian | debian_linux | libxml2-dev | p-cpe:/a:debian:debian_linux:libxml2-dev |
debian | debian_linux | libxml2-doc | p-cpe:/a:debian:debian_linux:libxml2-doc |
debian | debian_linux | libxml2-utils | p-cpe:/a:debian:debian_linux:libxml2-utils |
debian | debian_linux | libxml2-utils-dbg | p-cpe:/a:debian:debian_linux:libxml2-utils-dbg |
debian | debian_linux | python-libxml2 | p-cpe:/a:debian:debian_linux:python-libxml2 |
debian | debian_linux | python-libxml2-dbg | p-cpe:/a:debian:debian_linux:python-libxml2-dbg |
debian | debian_linux | python3-libxml2 | p-cpe:/a:debian:debian_linux:python3-libxml2 |
debian | debian_linux | python3-libxml2-dbg | p-cpe:/a:debian:debian_linux:python3-libxml2-dbg |
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-18258
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-8872
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-14404
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-14567
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-19956
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-20388
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-24977
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-7595
lists.debian.org/debian-lts-announce/2020/09/msg00009.html
packages.debian.org/source/stretch/libxml2
security-tracker.debian.org/tracker/source-package/libxml2