Lucene search

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

Ubuntu 22.04 LTS / 23.04 : Linux kernel vulnerabilities (USN-6338-1)

2023-09-0500:00:00
Ubuntu Security Notice (C) 2023-2024 Canonical, Inc. / NASL script (C) 2023-2024 and is owned by Tenable, Inc. or an Affiliate thereof.
www.tenable.com
26
ubuntu
22.04
23.04
linux kernel
vulnerabilities
usn-6338-1
memory corruption
use after free
denial of service
smb server
privilege escalation
out-of-bounds access

7.6 High

AI Score

Confidence

High

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

  • In multiple functions of binder.c, there is a possible memory corruption due to a use after free. This could lead to local escalation of privilege with no additional execution privileges needed. User interaction is not needed for exploitation. (CVE-2023-21255)

  • There is a null-pointer-dereference flaw found in f2fs_write_end_io in fs/f2fs/data.c in the Linux kernel.
    This flaw allows a local privileged user to cause a denial of service problem. (CVE-2023-2898)

  • An issue was discovered in drivers/media/dvb-core/dvb_frontend.c in the Linux kernel 6.2. There is a blocking operation when a task is in !TASK_RUNNING. In dvb_frontend_get_event, wait_event_interruptible is called; the condition is dvb_frontend_test_event(fepriv,events). In dvb_frontend_test_event, down(&fepriv->sem) is called. However, wait_event_interruptible would put the process to sleep, and down(&fepriv->sem) may block the process. (CVE-2023-31084)

  • A flaw was found in the Linux kernel’s ksmbd, a high-performance in-kernel SMB server. The specific flaw exists within the handling of SMB2_SESSION_SETUP commands. The issue results from the lack of control of resource consumption. An attacker can leverage this vulnerability to create a denial-of-service condition on the system. (CVE-2023-32247)

  • A flaw was found in the Linux kernel’s ksmbd, a high-performance in-kernel SMB server. The specific flaw exists within the processing of SMB2_SESSION_SETUP commands. The issue results from the lack of proper locking when performing operations on an object. An attacker can leverage this vulnerability to execute code in the context of the kernel. (CVE-2023-32250)

  • A flaw was found in the Linux kernel’s ksmbd, a high-performance in-kernel SMB server. The specific flaw exists within the handling of SMB2_LOGOFF commands. The issue results from the lack of proper validation of a pointer prior to accessing it. An attacker can leverage this vulnerability to create a denial-of- service condition on the system. (CVE-2023-32252)

  • A flaw was found in the Linux kernel’s ksmbd, a high-performance in-kernel SMB server. The specific flaw exists within the processing of SMB2_SESSION_SETUP and SMB2_LOGOFF commands. The issue results from the lack of proper locking when performing operations on an object. An attacker can leverage this vulnerability to execute code in the context of the kernel. (CVE-2023-32257)

  • A flaw was found in the Linux kernel’s ksmbd, a high-performance in-kernel SMB server. The specific flaw exists within the processing of SMB2_LOGOFF and SMB2_CLOSE commands. The issue results from the lack of proper locking when performing operations on an object. An attacker can leverage this vulnerability to execute code in the context of the kernel. (CVE-2023-32258)

  • An issue was discovered in the Linux kernel before 6.3.4. ksmbd has an out-of-bounds read in smb2_find_context_vals when create_context’s name_len is larger than the tag length. (CVE-2023-38426)

  • An issue was discovered in the Linux kernel before 6.3.4. fs/ksmbd/smb2pdu.c in ksmbd does not properly check the UserName value because it does not consider the address of security buffer, leading to an out- of-bounds read. (CVE-2023-38428)

  • An issue was discovered in the Linux kernel before 6.3.4. fs/ksmbd/connection.c in ksmbd has an off-by-one error in memory allocation (because of ksmbd_smb2_check_message) that may lead to out-of-bounds access.
    (CVE-2023-38429)

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 80900
##
# (C) Tenable, Inc.
#
# The descriptive text and package checks in this plugin were
# extracted from Ubuntu Security Notice USN-6338-1. The text
# itself is copyright (C) Canonical, Inc. See
# <https://ubuntu.com/security/notices>. Ubuntu(R) is a registered
# trademark of Canonical, Inc.
##

include('compat.inc');

if (description)
{
  script_id(180511);
  script_version("1.1");
  script_set_attribute(attribute:"plugin_modification_date", value:"2024/01/09");

  script_cve_id(
    "CVE-2023-2898",
    "CVE-2023-21255",
    "CVE-2023-31084",
    "CVE-2023-32247",
    "CVE-2023-32250",
    "CVE-2023-32252",
    "CVE-2023-32257",
    "CVE-2023-32258",
    "CVE-2023-38426",
    "CVE-2023-38428",
    "CVE-2023-38429"
  );
  script_xref(name:"USN", value:"6338-1");

  script_name(english:"Ubuntu 22.04 LTS / 23.04 : Linux kernel vulnerabilities (USN-6338-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 22.04 LTS / 23.04 host has a package installed that is affected by multiple vulnerabilities as
referenced in the USN-6338-1 advisory.

  - In multiple functions of binder.c, there is a possible memory corruption due to a use after free. This
    could lead to local escalation of privilege with no additional execution privileges needed. User
    interaction is not needed for exploitation. (CVE-2023-21255)

  - There is a null-pointer-dereference flaw found in f2fs_write_end_io in fs/f2fs/data.c in the Linux kernel.
    This flaw allows a local privileged user to cause a denial of service problem. (CVE-2023-2898)

  - An issue was discovered in drivers/media/dvb-core/dvb_frontend.c in the Linux kernel 6.2. There is a
    blocking operation when a task is in !TASK_RUNNING. In dvb_frontend_get_event, wait_event_interruptible is
    called; the condition is dvb_frontend_test_event(fepriv,events). In dvb_frontend_test_event,
    down(&fepriv->sem) is called. However, wait_event_interruptible would put the process to sleep, and
    down(&fepriv->sem) may block the process. (CVE-2023-31084)

  - A flaw was found in the Linux kernel's ksmbd, a high-performance in-kernel SMB server. The specific flaw
    exists within the handling of SMB2_SESSION_SETUP commands. The issue results from the lack of control of
    resource consumption. An attacker can leverage this vulnerability to create a denial-of-service condition
    on the system. (CVE-2023-32247)

  - A flaw was found in the Linux kernel's ksmbd, a high-performance in-kernel SMB server. The specific flaw
    exists within the processing of SMB2_SESSION_SETUP commands. The issue results from the lack of proper
    locking when performing operations on an object. An attacker can leverage this vulnerability to execute
    code in the context of the kernel. (CVE-2023-32250)

  - A flaw was found in the Linux kernel's ksmbd, a high-performance in-kernel SMB server. The specific flaw
    exists within the handling of SMB2_LOGOFF commands. The issue results from the lack of proper validation
    of a pointer prior to accessing it. An attacker can leverage this vulnerability to create a denial-of-
    service condition on the system. (CVE-2023-32252)

  - A flaw was found in the Linux kernel's ksmbd, a high-performance in-kernel SMB server. The specific flaw
    exists within the processing of SMB2_SESSION_SETUP and SMB2_LOGOFF commands. The issue results from the
    lack of proper locking when performing operations on an object. An attacker can leverage this
    vulnerability to execute code in the context of the kernel. (CVE-2023-32257)

  - A flaw was found in the Linux kernel's ksmbd, a high-performance in-kernel SMB server. The specific flaw
    exists within the processing of SMB2_LOGOFF and SMB2_CLOSE commands. The issue results from the lack of
    proper locking when performing operations on an object. An attacker can leverage this vulnerability to
    execute code in the context of the kernel. (CVE-2023-32258)

  - An issue was discovered in the Linux kernel before 6.3.4. ksmbd has an out-of-bounds read in
    smb2_find_context_vals when create_context's name_len is larger than the tag length. (CVE-2023-38426)

  - An issue was discovered in the Linux kernel before 6.3.4. fs/ksmbd/smb2pdu.c in ksmbd does not properly
    check the UserName value because it does not consider the address of security buffer, leading to an out-
    of-bounds read. (CVE-2023-38428)

  - An issue was discovered in the Linux kernel before 6.3.4. fs/ksmbd/connection.c in ksmbd has an off-by-one
    error in memory allocation (because of ksmbd_smb2_check_message) that may lead to out-of-bounds access.
    (CVE-2023-38429)

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-6338-1");
  script_set_attribute(attribute:"solution", value:
"Update the affected kernel package.");
  script_set_cvss_base_vector("CVSS2#AV:N/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:N/AC:L/PR:N/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-2023-38429");

  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:"2023/04/24");
  script_set_attribute(attribute:"patch_publication_date", value:"2023/09/05");
  script_set_attribute(attribute:"plugin_publication_date", value:"2023/09/05");

  script_set_attribute(attribute:"plugin_type", value:"local");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:canonical:ubuntu_linux:22.04:-:lts");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:canonical:ubuntu_linux:23.04");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-6.2.0-1011-aws");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-6.2.0-1012-lowlatency");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-6.2.0-1012-lowlatency-64k");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-6.2.0-1012-raspi");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-6.2.0-32-generic");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-6.2.0-32-generic-64k");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-6.2.0-32-generic-lpae");
  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) 2023-2024 Canonical, Inc. / NASL script (C) 2023-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 (! ('22.04' >< os_release || '23.04' >< os_release)) audit(AUDIT_OS_NOT, 'Ubuntu 22.04 / 23.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 = {
  '22.04': {
    '6.2.0': {
      'generic': '6.2.0-32',
      'generic-64k': '6.2.0-32',
      'generic-lpae': '6.2.0-32',
      'aws': '6.2.0-1011',
      'lowlatency': '6.2.0-1012',
      'lowlatency-64k': '6.2.0-1012'
    }
  },
  '23.04': {
    '6.2.0': {
      'generic': '6.2.0-32',
      'generic-64k': '6.2.0-32',
      'generic-lpae': '6.2.0-32',
      'aws': '6.2.0-1011',
      'raspi': '6.2.0-1012'
    }
  }
};

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 = 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-6338-1');
}

if (get_one_kb_item('Host/ksplice/kernel-cves'))
{
  var cve_list = make_list('CVE-2023-2898', 'CVE-2023-21255', 'CVE-2023-31084', 'CVE-2023-32247', 'CVE-2023-32250', 'CVE-2023-32252', 'CVE-2023-32257', 'CVE-2023-32258', 'CVE-2023-38426', 'CVE-2023-38428', 'CVE-2023-38429');
  if (ksplice_cves_check(cve_list))
  {
    audit(AUDIT_PATCH_INSTALLED, 'KSplice hotfix for USN-6338-1');
  }
  else
  {
    extra = extra + ksplice_reporting_text();
  }
}
if (extra) {
  security_report_v4(
    port       : 0,
    severity   : SECURITY_HOLE,
    extra      : extra
  );
  exit(0);
}
VendorProductVersionCPE
canonicalubuntu_linuxlinux-image-6.2.0-1012-raspip-cpe:/a:canonical:ubuntu_linux:linux-image-6.2.0-1012-raspi
canonicalubuntu_linuxlinux-image-6.2.0-32-genericp-cpe:/a:canonical:ubuntu_linux:linux-image-6.2.0-32-generic
canonicalubuntu_linux22.04cpe:/o:canonical:ubuntu_linux:22.04:-:lts
canonicalubuntu_linux23.04cpe:/o:canonical:ubuntu_linux:23.04
canonicalubuntu_linuxlinux-image-6.2.0-1011-awsp-cpe:/a:canonical:ubuntu_linux:linux-image-6.2.0-1011-aws
canonicalubuntu_linuxlinux-image-6.2.0-1012-lowlatency-64kp-cpe:/a:canonical:ubuntu_linux:linux-image-6.2.0-1012-lowlatency-64k
canonicalubuntu_linuxlinux-image-6.2.0-1012-lowlatencyp-cpe:/a:canonical:ubuntu_linux:linux-image-6.2.0-1012-lowlatency
canonicalubuntu_linuxlinux-image-6.2.0-32-generic-lpaep-cpe:/a:canonical:ubuntu_linux:linux-image-6.2.0-32-generic-lpae
canonicalubuntu_linuxlinux-image-6.2.0-32-generic-64kp-cpe:/a:canonical:ubuntu_linux:linux-image-6.2.0-32-generic-64k