Lucene search

K
nessusUbuntu Security Notice (C) 2024 Canonical, Inc. / NASL script (C) 2024 and is owned by Tenable, Inc. or an Affiliate thereof.UBUNTU_USN-6851-2.NASL
HistoryJun 28, 2024 - 12:00 a.m.

Ubuntu 20.04 LTS / 22.04 LTS / 23.10 / 24.04 LTS : Netplan regression (USN-6851-2)

2024-06-2800:00:00
Ubuntu Security Notice (C) 2024 Canonical, Inc. / NASL script (C) 2024 and is owned by Tenable, Inc. or an Affiliate thereof.
www.tenable.com
1
netplan
regression
ubuntu
vulnerability
usn-6851-2
permissions
wireguard
configuration
network interfaces

8.4 High

AI Score

Confidence

Low

The remote Ubuntu 20.04 LTS / 22.04 LTS / 23.10 / 24.04 LTS host has packages installed that are affected by a vulnerability as referenced in the USN-6851-2 advisory.

USN-6851-1 fixed vulnerabilities in Netplan. The update lead to the discovery of a regression in netplan     which caused systemctl enable to fail on systems where systemd is not running. This update fixes the     problem.

We apologize for the inconvenience.

Original advisory details:

Andreas Hasenack discovered that netplan incorrectly handled the permissions for netdev files containing     wireguard configuration. An attacker could use this to obtain wireguard secret keys.

It was discovered that netplan configuration could be manipulated into injecting arbitrary commands while     setting up network interfaces. An attacker could use this to execute arbitrary commands or escalate     privileges.

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

Note that Nessus has not tested for this issue 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-6851-2. 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(201128);
  script_version("1.1");
  script_set_attribute(attribute:"plugin_modification_date", value:"2024/06/28");
  script_xref(name:"USN", value:"6851-2");

  script_name(english:"Ubuntu 20.04 LTS / 22.04 LTS / 23.10 / 24.04 LTS : Netplan regression (USN-6851-2)");

  script_set_attribute(attribute:"synopsis", value:
"The remote Ubuntu host is missing a security update.");
  script_set_attribute(attribute:"description", value:
"The remote Ubuntu 20.04 LTS / 22.04 LTS / 23.10 / 24.04 LTS host has packages installed that are affected by a
vulnerability as referenced in the USN-6851-2 advisory.

    USN-6851-1 fixed vulnerabilities in Netplan. The update lead to the discovery of a regression in netplan
    which caused systemctl enable to fail on systems where systemd is not running. This update fixes the
    problem.

    We apologize for the inconvenience.

    Original advisory details:

    Andreas Hasenack discovered that netplan incorrectly handled the permissions for netdev files containing
    wireguard configuration. An attacker could use this to obtain wireguard secret keys.

    It was discovered that netplan configuration could be manipulated into injecting arbitrary commands while
    setting up network interfaces. An attacker could use this to execute arbitrary commands or escalate
    privileges.

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

Note that Nessus has not tested for this issue 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-6851-2");
  script_set_attribute(attribute:"solution", value:
"Update the affected packages.");
  script_set_attribute(attribute:"risk_factor", value:"None");

  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:"2024/06/28");
  script_set_attribute(attribute:"patch_publication_date", value:"2024/06/28");
  script_set_attribute(attribute:"plugin_publication_date", value:"2024/06/28");

  script_set_attribute(attribute:"plugin_type", value:"local");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:canonical:ubuntu_linux:20.04:-:lts");
  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.10");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:canonical:ubuntu_linux:24.04:-:lts");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:libnetplan-dev");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:libnetplan0");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:libnetplan1");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:netplan-generator");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:netplan.io");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:python3-netplan");
  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) 2024 Canonical, Inc. / NASL script (C) 2024 and is owned by Tenable, Inc. or an Affiliate thereof.");

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

  exit(0);
}

include('debian_package.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 (! ('20.04' >< os_release || '22.04' >< os_release || '23.10' >< os_release || '24.04' >< os_release)) audit(AUDIT_OS_NOT, 'Ubuntu 20.04 / 22.04 / 23.10 / 24.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 pkgs = [
    {'osver': '20.04', 'pkgname': 'libnetplan-dev', 'pkgver': '0.104-0ubuntu2~20.04.6'},
    {'osver': '20.04', 'pkgname': 'libnetplan0', 'pkgver': '0.104-0ubuntu2~20.04.6'},
    {'osver': '20.04', 'pkgname': 'netplan.io', 'pkgver': '0.104-0ubuntu2~20.04.6'},
    {'osver': '22.04', 'pkgname': 'libnetplan-dev', 'pkgver': '0.106.1-7ubuntu0.22.04.4'},
    {'osver': '22.04', 'pkgname': 'libnetplan0', 'pkgver': '0.106.1-7ubuntu0.22.04.4'},
    {'osver': '22.04', 'pkgname': 'netplan.io', 'pkgver': '0.106.1-7ubuntu0.22.04.4'},
    {'osver': '23.10', 'pkgname': 'libnetplan-dev', 'pkgver': '0.107-5ubuntu0.4'},
    {'osver': '23.10', 'pkgname': 'libnetplan0', 'pkgver': '0.107-5ubuntu0.4'},
    {'osver': '23.10', 'pkgname': 'netplan-generator', 'pkgver': '0.107-5ubuntu0.4'},
    {'osver': '23.10', 'pkgname': 'netplan.io', 'pkgver': '0.107-5ubuntu0.4'},
    {'osver': '23.10', 'pkgname': 'python3-netplan', 'pkgver': '0.107-5ubuntu0.4'},
    {'osver': '24.04', 'pkgname': 'libnetplan-dev', 'pkgver': '1.0-2ubuntu1.2'},
    {'osver': '24.04', 'pkgname': 'libnetplan1', 'pkgver': '1.0-2ubuntu1.2'},
    {'osver': '24.04', 'pkgname': 'netplan-generator', 'pkgver': '1.0-2ubuntu1.2'},
    {'osver': '24.04', 'pkgname': 'netplan.io', 'pkgver': '1.0-2ubuntu1.2'},
    {'osver': '24.04', 'pkgname': 'python3-netplan', 'pkgver': '1.0-2ubuntu1.2'}
];

var flag = 0;
foreach package_array ( pkgs ) {
  var osver = NULL;
  var pkgname = NULL;
  var pkgver = NULL;
  if (!empty_or_null(package_array['osver'])) osver = package_array['osver'];
  if (!empty_or_null(package_array['pkgname'])) pkgname = package_array['pkgname'];
  if (!empty_or_null(package_array['pkgver'])) pkgver = package_array['pkgver'];
  if (osver && pkgname && pkgver) {
    if (ubuntu_check(osver:osver, pkgname:pkgname, pkgver:pkgver)) flag++;
  }
}

if (flag)
{
  security_report_v4(
    port       : 0,
    severity   : SECURITY_NOTE,
    extra      : ubuntu_report_get()
  );
  exit(0);
}
else
{
  var tested = ubuntu_pkg_tests_get();
  if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
  else audit(AUDIT_PACKAGE_NOT_INSTALLED, 'libnetplan-dev / libnetplan0 / libnetplan1 / netplan-generator / etc');
}
VendorProductVersionCPE
canonicalubuntu_linux20.04cpe:/o:canonical:ubuntu_linux:20.04:-:lts
canonicalubuntu_linux22.04cpe:/o:canonical:ubuntu_linux:22.04:-:lts
canonicalubuntu_linux23.10cpe:/o:canonical:ubuntu_linux:23.10
canonicalubuntu_linux24.04cpe:/o:canonical:ubuntu_linux:24.04:-:lts
canonicalubuntu_linuxlibnetplan-devp-cpe:/a:canonical:ubuntu_linux:libnetplan-dev
canonicalubuntu_linuxlibnetplan0p-cpe:/a:canonical:ubuntu_linux:libnetplan0
canonicalubuntu_linuxlibnetplan1p-cpe:/a:canonical:ubuntu_linux:libnetplan1
canonicalubuntu_linuxnetplan-generatorp-cpe:/a:canonical:ubuntu_linux:netplan-generator
canonicalubuntu_linuxnetplan.iop-cpe:/a:canonical:ubuntu_linux:netplan.io
canonicalubuntu_linuxpython3-netplanp-cpe:/a:canonical:ubuntu_linux:python3-netplan

8.4 High

AI Score

Confidence

Low