Lucene search

K
nessusUbuntu Security Notice (C) 2020-2024 Canonical, Inc. / NASL script (C) 2020-2024 and is owned by Tenable, Inc. or an Affiliate thereof.UBUNTU_USN-4300-1.NASL
HistoryMar 18, 2020 - 12:00 a.m.

Ubuntu 18.04 LTS : Linux kernel vulnerabilities (USN-4300-1)

2020-03-1800:00:00
Ubuntu Security Notice (C) 2020-2024 Canonical, Inc. / NASL script (C) 2020-2024 and is owned by Tenable, Inc. or an Affiliate thereof.
www.tenable.com
33
ubuntu 18.04 lts
linux kernel
vulnerabilities
usn-4300-1
kvm
hypervisor
dvb-t usb
ethernet controller
rpmsg
marvell wi-fi
intel wi-fi
spi driver
brocade bfa fibre channel
realtek wi-fi

CVSS2

7.8

Attack Vector

NETWORK

Attack Complexity

LOW

Authentication

NONE

Confidentiality Impact

NONE

Integrity Impact

NONE

Availability Impact

COMPLETE

AV:N/AC:L/Au:N/C:N/I:N/A:C

CVSS3

7.5

Attack Vector

NETWORK

Attack Complexity

LOW

Privileges Required

NONE

User Interaction

NONE

Scope

UNCHANGED

Confidentiality Impact

NONE

Integrity Impact

NONE

Availability Impact

HIGH

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

AI Score

7.5

Confidence

High

EPSS

0.003

Percentile

66.0%

The remote Ubuntu 18.04 LTS host has a package installed that is affected by multiple vulnerabilities as referenced in the USN-4300-1 advisory.

It was discovered that the KVM implementation in the Linux kernel, when paravirtual TLB flushes are     enabled in guests, the hypervisor in some situations could miss deferred TLB flushes or otherwise     mishandle them. An attacker in a guest VM could use this to expose sensitive information (read memory from     another guest VM). (CVE-2019-3016)

Paulo Bonzini discovered that the KVM hypervisor implementation in the Linux kernel could improperly let a     nested (level 2) guest access the resources of a parent (level 1) guest in certain situations. An attacker     could use this to expose sensitive information. (CVE-2020-2732)

It was discovered that the Afatech AF9005 DVB-T USB device driver in the Linux kernel did not properly     deallocate memory in certain error conditions. A local attacker could possibly use this to cause a denial     of service (kernel memory exhaustion). (CVE-2019-18809)

It was discovered that the Intel(R) XL710 Ethernet Controller device driver in the Linux kernel did not     properly deallocate memory in certain error conditions. A local attacker could possibly use this to cause     a denial of service (kernel memory exhaustion). (CVE-2019-19043)

It was discovered that the RPMSG character device interface in the Linux kernel did not properly     deallocate memory in certain error conditions. A local attacker could possibly use this to cause a denial     of service (kernel memory exhaustion). (CVE-2019-19053)

It was discovered that the Marvell Wi-Fi device driver in the Linux kernel did not properly deallocate     memory in certain error conditions. A local attacker could use this to possibly cause a denial of service     (kernel memory exhaustion). (CVE-2019-19056)

It was discovered that the Intel(R) Wi-Fi device driver in the Linux kernel device driver in the Linux     kernel did not properly deallocate memory in certain error conditions. A local attacker could possibly use     this to cause a denial of service (kernel memory exhaustion). (CVE-2019-19058, CVE-2019-19059)

It was discovered that the Serial Peripheral Interface (SPI) driver in the Linux kernel device driver in     the Linux kernel did not properly deallocate memory in certain error conditions. A local attacker could     possibly use this to cause a denial of service (kernel memory exhaustion). (CVE-2019-19064)

It was discovered that the Brocade BFA Fibre Channel device driver in the Linux kernel did not properly     deallocate memory in certain error conditions. A local attacker could possibly use this to cause a denial     of service (kernel memory exhaustion). (CVE-2019-19066)

It was discovered that the Realtek RTL8xxx USB Wi-Fi device driver in the Linux kernel did not properly     deallocate memory in certain error conditions. A local attacker could possibly use this to cause a denial     of service (kernel memory exhaustion). (CVE-2019-19068)

Tenable has extracted the preceding description block directly from the Ubuntu security advisory.

Note that Nessus has not tested for these issues but has instead relied only on the application’s self-reported version number.

#
# (C) Tenable Network Security, Inc.
#
# The descriptive text and package checks in this plugin were
# extracted from Ubuntu Security Notice USN-4300-1. The text 
# itself is copyright (C) Canonical, Inc. See 
# <http://www.ubuntu.com/usn/>. Ubuntu(R) is a registered 
# trademark of Canonical, Inc.
#

include('compat.inc');

if (description)
{
  script_id(134658);
  script_version("1.9");
  script_set_attribute(attribute:"plugin_modification_date", value:"2024/08/29");

  script_cve_id(
    "CVE-2019-18809",
    "CVE-2019-19043",
    "CVE-2019-19053",
    "CVE-2019-19056",
    "CVE-2019-19058",
    "CVE-2019-19059",
    "CVE-2019-19064",
    "CVE-2019-19066",
    "CVE-2019-19068",
    "CVE-2019-3016",
    "CVE-2020-2732"
  );
  script_xref(name:"USN", value:"4300-1");

  script_name(english:"Ubuntu 18.04 LTS : Linux kernel vulnerabilities (USN-4300-1)");

  script_set_attribute(attribute:"synopsis", value:
"The remote Ubuntu host is missing one or more security updates.");
  script_set_attribute(attribute:"description", value:
"The remote Ubuntu 18.04 LTS host has a package installed that is affected by multiple vulnerabilities as referenced in
the USN-4300-1 advisory.

    It was discovered that the KVM implementation in the Linux kernel, when paravirtual TLB flushes are
    enabled in guests, the hypervisor in some situations could miss deferred TLB flushes or otherwise
    mishandle them. An attacker in a guest VM could use this to expose sensitive information (read memory from
    another guest VM). (CVE-2019-3016)

    Paulo Bonzini discovered that the KVM hypervisor implementation in the Linux kernel could improperly let a
    nested (level 2) guest access the resources of a parent (level 1) guest in certain situations. An attacker
    could use this to expose sensitive information. (CVE-2020-2732)

    It was discovered that the Afatech AF9005 DVB-T USB device driver in the Linux kernel did not properly
    deallocate memory in certain error conditions. A local attacker could possibly use this to cause a denial
    of service (kernel memory exhaustion). (CVE-2019-18809)

    It was discovered that the Intel(R) XL710 Ethernet Controller device driver in the Linux kernel did not
    properly deallocate memory in certain error conditions. A local attacker could possibly use this to cause
    a denial of service (kernel memory exhaustion). (CVE-2019-19043)

    It was discovered that the RPMSG character device interface in the Linux kernel did not properly
    deallocate memory in certain error conditions. A local attacker could possibly use this to cause a denial
    of service (kernel memory exhaustion). (CVE-2019-19053)

    It was discovered that the Marvell Wi-Fi device driver in the Linux kernel did not properly deallocate
    memory in certain error conditions. A local attacker could use this to possibly cause a denial of service
    (kernel memory exhaustion). (CVE-2019-19056)

    It was discovered that the Intel(R) Wi-Fi device driver in the Linux kernel device driver in the Linux
    kernel did not properly deallocate memory in certain error conditions. A local attacker could possibly use
    this to cause a denial of service (kernel memory exhaustion). (CVE-2019-19058, CVE-2019-19059)

    It was discovered that the Serial Peripheral Interface (SPI) driver in the Linux kernel device driver in
    the Linux kernel did not properly deallocate memory in certain error conditions. A local attacker could
    possibly use this to cause a denial of service (kernel memory exhaustion). (CVE-2019-19064)

    It was discovered that the Brocade BFA Fibre Channel device driver in the Linux kernel did not properly
    deallocate memory in certain error conditions. A local attacker could possibly use this to cause a denial
    of service (kernel memory exhaustion). (CVE-2019-19066)

    It was discovered that the Realtek RTL8xxx USB Wi-Fi device driver in the Linux kernel did not properly
    deallocate memory in certain error conditions. A local attacker could possibly use this to cause a denial
    of service (kernel memory exhaustion). (CVE-2019-19068)

Tenable has extracted the preceding description block directly from the Ubuntu security advisory.

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://ubuntu.com/security/notices/USN-4300-1");
  script_set_attribute(attribute:"solution", value:
"Update the affected kernel package.");
  script_set_cvss_base_vector("CVSS2#AV:A/AC:M/Au:S/C:P/I:N/A:N");
  script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C");
  script_set_cvss3_base_vector("CVSS:3.0/AV:A/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N");
  script_set_cvss3_temporal_vector("CVSS:3.0/E:U/RL:O/RC:C");
  script_set_attribute(attribute:"cvss_score_source", value:"CVE-2020-2732");

  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:"2019/11/07");
  script_set_attribute(attribute:"patch_publication_date", value:"2020/03/25");
  script_set_attribute(attribute:"plugin_publication_date", value:"2020/03/18");

  script_set_attribute(attribute:"plugin_type", value:"local");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-5.3.0-1014-gcp");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-5.3.0-1014-gke");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-5.3.0-1016-azure");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-5.3.0-1019-raspi2");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-5.3.0-42-generic");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-5.3.0-42-generic-lpae");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-5.3.0-42-lowlatency");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:canonical:ubuntu_linux:18.04:-:lts");
  script_set_attribute(attribute:"generated_plugin", value:"current");
  script_end_attributes();

  script_category(ACT_GATHER_INFO);
  script_family(english:"Ubuntu Local Security Checks");

  script_copyright(english:"Ubuntu Security Notice (C) 2020-2024 Canonical, Inc. / NASL script (C) 2020-2024 and is owned by Tenable, Inc. or an Affiliate thereof.");

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

  exit(0);
}

include('debian_package.inc');
include('ksplice.inc');

if ( ! get_kb_item('Host/local_checks_enabled') ) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
var os_release = get_kb_item('Host/Ubuntu/release');
if ( isnull(os_release) ) audit(AUDIT_OS_NOT, 'Ubuntu');
os_release = chomp(os_release);
if (! ('18.04' >< os_release)) audit(AUDIT_OS_NOT, 'Ubuntu 18.04', 'Ubuntu ' + os_release);
if ( ! get_kb_item('Host/Debian/dpkg-l') ) 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, 'Ubuntu', cpu);

var kernel_mappings = {
  '18.04': {
    '5.3.0': {
      'generic': '5.3.0-42',
      'generic-lpae': '5.3.0-42',
      'lowlatency': '5.3.0-42',
      'gcp': '5.3.0-1014',
      'gke': '5.3.0-1014',
      'azure': '5.3.0-1016',
      'raspi2': '5.3.0-1019'
    }
  }
};

var host_kernel_release = get_kb_item('Host/uptrack-uname-r');
if (empty_or_null(host_kernel_release)) host_kernel_release = get_kb_item_or_exit('Host/uname-r');
var host_kernel_base_version = get_kb_item_or_exit('Host/Debian/kernel-base-version');
var host_kernel_type = get_kb_item_or_exit('Host/Debian/kernel-type');
if(empty_or_null(kernel_mappings[os_release][host_kernel_base_version][host_kernel_type])) audit(AUDIT_INST_VER_NOT_VULN, 'kernel ' + host_kernel_release);

var extra = '';
var kernel_fixed_version = kernel_mappings[os_release][host_kernel_base_version][host_kernel_type] + "-" + host_kernel_type;
if (deb_ver_cmp(ver1:host_kernel_release, ver2:kernel_fixed_version) < 0)
{
  extra += 'Running Kernel level of ' + host_kernel_release + ' does not meet the minimum fixed level of ' + kernel_fixed_version + ' for this advisory.\n\n';
}
  else
{
  audit(AUDIT_PATCH_INSTALLED, 'Kernel package for USN-4300-1');
}

if (get_one_kb_item('Host/ksplice/kernel-cves'))
{
  var cve_list = make_list('CVE-2019-3016', 'CVE-2019-18809', 'CVE-2019-19043', 'CVE-2019-19053', 'CVE-2019-19056', 'CVE-2019-19058', 'CVE-2019-19059', 'CVE-2019-19064', 'CVE-2019-19066', 'CVE-2019-19068', 'CVE-2020-2732');
  if (ksplice_cves_check(cve_list))
  {
    audit(AUDIT_PATCH_INSTALLED, 'KSplice hotfix for USN-4300-1');
  }
  else
  {
    extra = extra + ksplice_reporting_text();
  }
}
if (extra) {
  security_report_v4(
    port       : 0,
    severity   : SECURITY_NOTE,
    extra      : extra
  );
  exit(0);
}

CVSS2

7.8

Attack Vector

NETWORK

Attack Complexity

LOW

Authentication

NONE

Confidentiality Impact

NONE

Integrity Impact

NONE

Availability Impact

COMPLETE

AV:N/AC:L/Au:N/C:N/I:N/A:C

CVSS3

7.5

Attack Vector

NETWORK

Attack Complexity

LOW

Privileges Required

NONE

User Interaction

NONE

Scope

UNCHANGED

Confidentiality Impact

NONE

Integrity Impact

NONE

Availability Impact

HIGH

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

AI Score

7.5

Confidence

High

EPSS

0.003

Percentile

66.0%