The remote SUSE Linux SLES11 host has a package installed that is affected by multiple vulnerabilities as referenced in the SUSE-SU-2021:14772-1 advisory.
iscsi_aio_ioctl_cb in block/iscsi.c in QEMU 4.1.0 has a heap-based buffer over-read that may disclose unrelated information from process memory to an attacker. (CVE-2020-11947)
In QEMU 4.2.0, a MemoryRegionOps object may lack read/write callback methods, leading to a NULL pointer dereference. (CVE-2020-15469)
hw/net/xgmac.c in the XGMAC Ethernet controller in QEMU before 07-20-2020 has a buffer overflow. This occurs during packet transmission and affects the highbank and midway emulated machines. A guest user or process could use this flaw to crash the QEMU process on the host, resulting in a denial of service or potential privileged code execution. This was fixed in commit 5519724a13664b43e225ca05351c60b4468e4555.
(CVE-2020-15863)
An out-of-bounds heap buffer access issue was found in the ARM Generic Interrupt Controller emulator of QEMU up to and including qemu 4.2.0on aarch64 platform. The issue occurs because while writing an interrupt ID to the controller memory area, it is not masked to be 4 bits wide. It may lead to the said issue while updating controller state fields and their subsequent processing. A privileged guest user may use this flaw to crash the QEMU process on the host resulting in DoS scenario. (CVE-2021-20221)
A potential stack overflow via infinite loop issue was found in various NIC emulators of QEMU in versions up to and including 5.2.0. The issue occurs in loopback mode of a NIC wherein reentrant DMA checks get bypassed. A guest user/process may use this flaw to consume CPU cycles or crash the QEMU process on the host resulting in DoS scenario. (CVE-2021-3416)
An invalid pointer initialization issue was found in the SLiRP networking implementation of QEMU. The flaw exists in the bootp_input() function and could occur while processing a udp packet that is smaller than the size of the ‘bootp_t’ structure. A malicious guest could use this flaw to leak 10 bytes of uninitialized heap memory from the host. The highest threat from this vulnerability is to data confidentiality. This flaw affects libslirp versions prior to 4.6.0. (CVE-2021-3592)
An invalid pointer initialization issue was found in the SLiRP networking implementation of QEMU. The flaw exists in the udp_input() function and could occur while processing a udp packet that is smaller than the size of the ‘udphdr’ structure. This issue may lead to out-of-bounds read access or indirect host memory disclosure to the guest. The highest threat from this vulnerability is to data confidentiality. This flaw affects libslirp versions prior to 4.6.0. (CVE-2021-3594)
Note that Nessus has not tested for these issues but has instead relied only on the application’s self-reported version number.
#%NASL_MIN_LEVEL 70300
##
# (C) Tenable, Inc.
#
# The package checks in this plugin were extracted from
# SUSE update advisory SUSE-SU-2021:14772-1. The text itself
# is copyright (C) SUSE.
##
include('deprecated_nasl_level.inc');
include('compat.inc');
if (description)
{
script_id(152199);
script_version("1.5");
script_set_attribute(attribute:"plugin_modification_date", value:"2023/07/13");
script_cve_id(
"CVE-2020-11947",
"CVE-2020-15469",
"CVE-2020-15863",
"CVE-2020-25707",
"CVE-2021-3416",
"CVE-2021-3592",
"CVE-2021-3594",
"CVE-2021-20221"
);
script_xref(name:"IAVB", value:"2020-B-0041-S");
script_xref(name:"SuSE", value:"SUSE-SU-2021:14772-1");
script_name(english:"SUSE SLES11 Security Update : kvm (SUSE-SU-2021:14772-1)");
script_set_attribute(attribute:"synopsis", value:
"The remote SUSE host is missing one or more security updates.");
script_set_attribute(attribute:"description", value:
"The remote SUSE Linux SLES11 host has a package installed that is affected by multiple vulnerabilities as referenced in
the SUSE-SU-2021:14772-1 advisory.
- iscsi_aio_ioctl_cb in block/iscsi.c in QEMU 4.1.0 has a heap-based buffer over-read that may disclose
unrelated information from process memory to an attacker. (CVE-2020-11947)
- In QEMU 4.2.0, a MemoryRegionOps object may lack read/write callback methods, leading to a NULL pointer
dereference. (CVE-2020-15469)
- hw/net/xgmac.c in the XGMAC Ethernet controller in QEMU before 07-20-2020 has a buffer overflow. This
occurs during packet transmission and affects the highbank and midway emulated machines. A guest user or
process could use this flaw to crash the QEMU process on the host, resulting in a denial of service or
potential privileged code execution. This was fixed in commit 5519724a13664b43e225ca05351c60b4468e4555.
(CVE-2020-15863)
- An out-of-bounds heap buffer access issue was found in the ARM Generic Interrupt Controller emulator of
QEMU up to and including qemu 4.2.0on aarch64 platform. The issue occurs because while writing an
interrupt ID to the controller memory area, it is not masked to be 4 bits wide. It may lead to the said
issue while updating controller state fields and their subsequent processing. A privileged guest user may
use this flaw to crash the QEMU process on the host resulting in DoS scenario. (CVE-2021-20221)
- A potential stack overflow via infinite loop issue was found in various NIC emulators of QEMU in versions
up to and including 5.2.0. The issue occurs in loopback mode of a NIC wherein reentrant DMA checks get
bypassed. A guest user/process may use this flaw to consume CPU cycles or crash the QEMU process on the
host resulting in DoS scenario. (CVE-2021-3416)
- An invalid pointer initialization issue was found in the SLiRP networking implementation of QEMU. The flaw
exists in the bootp_input() function and could occur while processing a udp packet that is smaller than
the size of the 'bootp_t' structure. A malicious guest could use this flaw to leak 10 bytes of
uninitialized heap memory from the host. The highest threat from this vulnerability is to data
confidentiality. This flaw affects libslirp versions prior to 4.6.0. (CVE-2021-3592)
- An invalid pointer initialization issue was found in the SLiRP networking implementation of QEMU. The flaw
exists in the udp_input() function and could occur while processing a udp packet that is smaller than the
size of the 'udphdr' structure. This issue may lead to out-of-bounds read access or indirect host memory
disclosure to the guest. The highest threat from this vulnerability is to data confidentiality. This flaw
affects libslirp versions prior to 4.6.0. (CVE-2021-3594)
Note that Nessus has not tested for these issues but has instead relied only on the application's self-reported version
number.");
script_set_attribute(attribute:"see_also", value:"https://bugzilla.suse.com/1173612");
script_set_attribute(attribute:"see_also", value:"https://bugzilla.suse.com/1174386");
script_set_attribute(attribute:"see_also", value:"https://bugzilla.suse.com/1178683");
script_set_attribute(attribute:"see_also", value:"https://bugzilla.suse.com/1180523");
script_set_attribute(attribute:"see_also", value:"https://bugzilla.suse.com/1181933");
script_set_attribute(attribute:"see_also", value:"https://bugzilla.suse.com/1186473");
script_set_attribute(attribute:"see_also", value:"https://bugzilla.suse.com/1187364");
script_set_attribute(attribute:"see_also", value:"https://bugzilla.suse.com/1187367");
script_set_attribute(attribute:"see_also", value:"https://www.suse.com/security/cve/CVE-2020-11947");
script_set_attribute(attribute:"see_also", value:"https://www.suse.com/security/cve/CVE-2020-15469");
script_set_attribute(attribute:"see_also", value:"https://www.suse.com/security/cve/CVE-2020-15863");
script_set_attribute(attribute:"see_also", value:"https://www.suse.com/security/cve/CVE-2020-25707");
script_set_attribute(attribute:"see_also", value:"https://www.suse.com/security/cve/CVE-2021-20221");
script_set_attribute(attribute:"see_also", value:"https://www.suse.com/security/cve/CVE-2021-3416");
script_set_attribute(attribute:"see_also", value:"https://www.suse.com/security/cve/CVE-2021-3592");
script_set_attribute(attribute:"see_also", value:"https://www.suse.com/security/cve/CVE-2021-3594");
# https://lists.suse.com/pipermail/sle-security-updates/2021-August/009246.html
script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?714dfca8");
script_set_attribute(attribute:"solution", value:
"Update the affected kvm package.");
script_set_cvss_base_vector("CVSS2#AV:L/AC:M/Au:N/C:P/I:P/A:P");
script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C");
script_set_cvss3_base_vector("CVSS:3.0/AV:L/AC:H/PR:L/UI:N/S:C/C:L/I:L/A:L");
script_set_cvss3_temporal_vector("CVSS:3.0/E:U/RL:O/RC:C");
script_set_attribute(attribute:"cvss_score_source", value:"CVE-2020-15863");
script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");
script_set_attribute(attribute:"exploit_available", value:"false");
script_set_attribute(attribute:"vuln_publication_date", value:"2020/07/02");
script_set_attribute(attribute:"patch_publication_date", value:"2021/08/03");
script_set_attribute(attribute:"plugin_publication_date", value:"2021/08/04");
script_set_attribute(attribute:"plugin_type", value:"local");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:kvm");
script_set_attribute(attribute:"cpe", value:"cpe:/o:novell:suse_linux:11");
script_set_attribute(attribute:"generated_plugin", value:"current");
script_set_attribute(attribute:"stig_severity", value:"II");
script_end_attributes();
script_category(ACT_GATHER_INFO);
script_family(english:"SuSE Local Security Checks");
script_copyright(english:"This script is Copyright (C) 2021-2023 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/SuSE/release", "Host/SuSE/rpm-list");
exit(0);
}
include('rpm.inc');
if (!get_kb_item('Host/local_checks_enabled')) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
var os_release = get_kb_item("Host/SuSE/release");
if (isnull(os_release) || os_release !~ "^(SLED|SLES)") audit(AUDIT_OS_NOT, "SUSE");
var os_ver = pregmatch(pattern: "^(SLE(S|D)\d+)", string:os_release);
if (isnull(os_ver)) audit(AUDIT_UNKNOWN_APP_VER, 'SUSE');
os_ver = os_ver[1];
if (! preg(pattern:"^(SLES11)$", string:os_ver)) audit(AUDIT_OS_NOT, 'SUSE SLES11', 'SUSE (' + os_ver + ')');
if (!get_kb_item("Host/SuSE/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
var cpu = get_kb_item('Host/cpu');
if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
if ('x86_64' >!< cpu && cpu !~ "^i[3-6]86$" && 's390' >!< cpu && 'aarch64' >!< cpu) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, 'SUSE (' + os_ver + ')', cpu);
var service_pack = get_kb_item("Host/SuSE/patchlevel");
if (isnull(service_pack)) service_pack = "0";
if (os_ver == "SLES11" && (! preg(pattern:"^(4)$", string:service_pack))) audit(AUDIT_OS_NOT, "SLES11 SP4", os_ver + " SP" + service_pack);
var pkgs = [
{'reference':'kvm-1.4.2-60.37.1', 'sp':'4', 'release':'SLES11', 'rpm_spec_vers_cmp':TRUE, 'exists_check':['sles-release-11.4']}
];
var ltss_caveat_required = FALSE;
var flag = 0;
foreach var package_array ( pkgs ) {
var reference = NULL;
var _release = NULL;
var sp = NULL;
var _cpu = NULL;
var exists_check = NULL;
var rpm_spec_vers_cmp = NULL;
if (!empty_or_null(package_array['reference'])) reference = package_array['reference'];
if (!empty_or_null(package_array['release'])) _release = package_array['release'];
if (!empty_or_null(package_array['sp'])) sp = package_array['sp'];
if (!empty_or_null(package_array['cpu'])) _cpu = package_array['cpu'];
if (!empty_or_null(package_array['exists_check'])) exists_check = package_array['exists_check'];
if (!empty_or_null(package_array['rpm_spec_vers_cmp'])) rpm_spec_vers_cmp = package_array['rpm_spec_vers_cmp'];
if (reference && _release) {
if (exists_check) {
var check_flag = 0;
foreach var check (exists_check) {
if (!rpm_exists(release:_release, rpm:check)) continue;
if ('ltss' >< tolower(check)) ltss_caveat_required = TRUE;
check_flag++;
}
if (!check_flag) continue;
}
if (rpm_check(release:_release, sp:sp, cpu:_cpu, reference:reference, rpm_spec_vers_cmp:rpm_spec_vers_cmp)) flag++;
}
}
if (flag)
{
var ltss_plugin_caveat = NULL;
if(ltss_caveat_required) ltss_plugin_caveat = '\n' +
'NOTE: This vulnerability check contains fixes that apply to\n' +
'packages only available in SUSE Enterprise Linux Server LTSS\n' +
'repositories. Access to these package security updates require\n' +
'a paid SUSE LTSS subscription.\n';
security_report_v4(
port : 0,
severity : SECURITY_WARNING,
extra : rpm_report_get() + ltss_plugin_caveat
);
exit(0);
}
else
{
var tested = pkg_tests_get();
if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
else audit(AUDIT_PACKAGE_NOT_INSTALLED, 'kvm');
}
Vendor | Product | Version | CPE |
---|---|---|---|
novell | suse_linux | kvm | p-cpe:/a:novell:suse_linux:kvm |
novell | suse_linux | 11 | cpe:/o:novell:suse_linux:11 |
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-11947
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15469
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15863
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-25707
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-20221
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-3416
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-3592
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-3594
www.nessus.org/u?714dfca8
bugzilla.suse.com/1173612
bugzilla.suse.com/1174386
bugzilla.suse.com/1178683
bugzilla.suse.com/1180523
bugzilla.suse.com/1181933
bugzilla.suse.com/1186473
bugzilla.suse.com/1187364
bugzilla.suse.com/1187367
www.suse.com/security/cve/CVE-2020-11947
www.suse.com/security/cve/CVE-2020-15469
www.suse.com/security/cve/CVE-2020-15863
www.suse.com/security/cve/CVE-2020-25707
www.suse.com/security/cve/CVE-2021-20221
www.suse.com/security/cve/CVE-2021-3416
www.suse.com/security/cve/CVE-2021-3592
www.suse.com/security/cve/CVE-2021-3594