According to the versions of the systemd packages installed, the EulerOS Virtualization for ARM 64 installation on the remote host is affected by the following vulnerabilities :
It was discovered systemd does not correctly check the content of PIDFile files before using it to kill processes. When a service is run from an unprivileged user (e.g. User field set in the service file), a local attacker who is able to write to the PIDFile of the mentioned service may use this flaw to trick systemd into killing other services and/or privileged processes. Versions before v237 are vulnerable.(CVE-2018-16888)
An out of bounds read was discovered in systemd-journald in the way it parses log messages that terminate with a colon ‘:’. A local attacker can use this flaw to disclose process memory data. Versions from v221 to v239 are vulnerable.(CVE-2018-16866)
It was discovered that systemd is vulnerable to a state injection attack when deserializing the state of a service. Properties longer than LINE_MAX are not correctly parsed and an attacker may abuse this flaw in particularly configured services to inject, change, or corrupt the service state.(CVE-2018-15686)
Note that Tenable Network Security has extracted the preceding description block directly from the EulerOS security advisory. Tenable has attempted to automatically clean and format it as much as possible without introducing additional issues.
#%NASL_MIN_LEVEL 70300
#
# (C) Tenable Network Security, Inc.
#
include('deprecated_nasl_level.inc');
include('compat.inc');
if (description)
{
script_id(134505);
script_version("1.5");
script_set_attribute(attribute:"plugin_modification_date", value:"2021/07/30");
script_cve_id(
"CVE-2018-15686",
"CVE-2018-16866",
"CVE-2018-16888"
);
script_name(english:"EulerOS Virtualization for ARM 64 3.0.2.0 : systemd (EulerOS-SA-2020-1216)");
script_summary(english:"Checks the rpm output for the updated packages.");
script_set_attribute(attribute:"synopsis", value:
"The remote EulerOS Virtualization for ARM 64 host is missing multiple security
updates.");
script_set_attribute(attribute:"description", value:
"According to the versions of the systemd packages installed, the
EulerOS Virtualization for ARM 64 installation on the remote host is
affected by the following vulnerabilities :
- It was discovered systemd does not correctly check the
content of PIDFile files before using it to kill
processes. When a service is run from an unprivileged
user (e.g. User field set in the service file), a local
attacker who is able to write to the PIDFile of the
mentioned service may use this flaw to trick systemd
into killing other services and/or privileged
processes. Versions before v237 are
vulnerable.(CVE-2018-16888)
- An out of bounds read was discovered in
systemd-journald in the way it parses log messages that
terminate with a colon ':'. A local attacker can use
this flaw to disclose process memory data. Versions
from v221 to v239 are vulnerable.(CVE-2018-16866)
- It was discovered that systemd is vulnerable to a state
injection attack when deserializing the state of a
service. Properties longer than LINE_MAX are not
correctly parsed and an attacker may abuse this flaw in
particularly configured services to inject, change, or
corrupt the service state.(CVE-2018-15686)
Note that Tenable Network Security has extracted the preceding
description block directly from the EulerOS security advisory. Tenable
has attempted to automatically clean and format it as much as possible
without introducing additional issues.");
# https://developer.huaweicloud.com/ict/en/site-euleros/euleros/security-advisories/EulerOS-SA-2020-1216
script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?8b7a720e");
script_set_attribute(attribute:"solution", value:
"Update the affected systemd packages.");
script_set_cvss_base_vector("CVSS2#AV:L/AC:L/Au:N/C:C/I:C/A:C");
script_set_cvss_temporal_vector("CVSS2#E:POC/RL:OF/RC:C");
script_set_cvss3_base_vector("CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/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-2018-15686");
script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
script_set_attribute(attribute:"exploit_available", value:"true");
script_set_attribute(attribute:"patch_publication_date", value:"2020/03/13");
script_set_attribute(attribute:"plugin_publication_date", value:"2020/03/13");
script_set_attribute(attribute:"plugin_type", value:"local");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:libgudev1");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:systemd");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:systemd-libs");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:systemd-networkd");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:systemd-python");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:systemd-resolved");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:systemd-sysv");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:systemd-udev-compat");
script_set_attribute(attribute:"cpe", value:"cpe:/o:huawei:euleros:uvp:3.0.2.0");
script_set_attribute(attribute:"generated_plugin", value:"current");
script_end_attributes();
script_category(ACT_GATHER_INFO);
script_family(english:"Huawei Local Security Checks");
script_copyright(english:"This script is Copyright (C) 2020-2021 and is owned by Tenable, Inc. or an Affiliate thereof.");
script_dependencies("ssh_get_info.nasl");
script_require_keys("Host/local_checks_enabled", "Host/cpu", "Host/EulerOS/release", "Host/EulerOS/rpm-list", "Host/EulerOS/uvp_version");
exit(0);
}
include("audit.inc");
include("global_settings.inc");
include("rpm.inc");
if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
release = get_kb_item("Host/EulerOS/release");
if (isnull(release) || release !~ "^EulerOS") audit(AUDIT_OS_NOT, "EulerOS");
uvp = get_kb_item("Host/EulerOS/uvp_version");
if (uvp != "3.0.2.0") audit(AUDIT_OS_NOT, "EulerOS Virtualization 3.0.2.0");
if (!get_kb_item("Host/EulerOS/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
cpu = get_kb_item("Host/cpu");
if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
if ("x86_64" >!< cpu && cpu !~ "^i[3-6]86$" && "aarch64" >!< cpu) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "EulerOS", cpu);
if ("aarch64" >!< cpu) audit(AUDIT_ARCH_NOT, "aarch64", cpu);
flag = 0;
pkgs = ["libgudev1-219-62.5.h110",
"systemd-219-62.5.h110",
"systemd-libs-219-62.5.h110",
"systemd-networkd-219-62.5.h110",
"systemd-python-219-62.5.h110",
"systemd-resolved-219-62.5.h110",
"systemd-sysv-219-62.5.h110",
"systemd-udev-compat-219-62.5.h110"];
foreach (pkg in pkgs)
if (rpm_check(release:"EulerOS-2.0", reference:pkg)) flag++;
if (flag)
{
security_report_v4(
port : 0,
severity : SECURITY_HOLE,
extra : rpm_report_get()
);
exit(0);
}
else
{
tested = pkg_tests_get();
if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
else audit(AUDIT_PACKAGE_NOT_INSTALLED, "systemd");
}
Vendor | Product | Version | CPE |
---|---|---|---|
huawei | euleros | libgudev1 | p-cpe:/a:huawei:euleros:libgudev1 |
huawei | euleros | systemd | p-cpe:/a:huawei:euleros:systemd |
huawei | euleros | systemd-libs | p-cpe:/a:huawei:euleros:systemd-libs |
huawei | euleros | systemd-networkd | p-cpe:/a:huawei:euleros:systemd-networkd |
huawei | euleros | systemd-python | p-cpe:/a:huawei:euleros:systemd-python |
huawei | euleros | systemd-resolved | p-cpe:/a:huawei:euleros:systemd-resolved |
huawei | euleros | systemd-sysv | p-cpe:/a:huawei:euleros:systemd-sysv |
huawei | euleros | systemd-udev-compat | p-cpe:/a:huawei:euleros:systemd-udev-compat |
huawei | euleros | uvp | cpe:/o:huawei:euleros:uvp:3.0.2.0 |