According to the versions of the samba packages installed, the EulerOS installation on the remote host is affected by the following vulnerabilities :
A NULL pointer dereference, or possible use-after-free flaw was found in Samba AD LDAP server in versions before 4.10.17, before 4.11.11 and before 4.12.4.
Although some versions of Samba shipped with Red Hat Enterprise Linux do not support Samba in AD mode, the affected code is shipped with the libldb package. This flaw allows an authenticated user to possibly trigger a use-after-free or NULL pointer dereference. The highest threat from this vulnerability is to system availability.(CVE-2020-10730)
A flaw was found in Samba’s libldb. Multiple, consecutive leading spaces in an LDAP attribute can lead to an out-of-bounds memory write, leading to a crash of the LDAP server process handling the request.
The highest threat from this vulnerability is to system availability.(CVE-2021-20277)
A flaw was found in samba. Spaces used in a string around a domain name (DN), while supposed to be ignored, can cause invalid DN strings with spaces to instead write a zero-byte into out-of-bounds memory, resulting in a crash. The highest threat from this vulnerability is to system availability.(CVE-2020-27840)
A flaw was found in samba. The Samba smbd file server must map Windows group identities (SIDs) into unix group ids (gids). The code that performs this had a flaw that could allow it to read data beyond the end of the array in the case where a negative cache entry had been added to the mapping cache. This could cause the calling code to return those values into the process token that stores the group membership for a user. The highest threat from this vulnerability is to data confidentiality and integrity.(CVE-2021-20254)
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(153277);
script_version("1.2");
script_set_attribute(attribute:"plugin_modification_date", value:"2021/09/16");
script_cve_id(
"CVE-2020-10730",
"CVE-2020-27840",
"CVE-2021-20254",
"CVE-2021-20277"
);
script_name(english:"EulerOS 2.0 SP2 : samba (EulerOS-SA-2021-2446)");
script_summary(english:"Checks the rpm output for the updated packages.");
script_set_attribute(attribute:"synopsis", value:
"The remote EulerOS host is missing multiple security updates.");
script_set_attribute(attribute:"description", value:
"According to the versions of the samba packages installed, the
EulerOS installation on the remote host is affected by the following
vulnerabilities :
- A NULL pointer dereference, or possible use-after-free
flaw was found in Samba AD LDAP server in versions
before 4.10.17, before 4.11.11 and before 4.12.4.
Although some versions of Samba shipped with Red Hat
Enterprise Linux do not support Samba in AD mode, the
affected code is shipped with the libldb package. This
flaw allows an authenticated user to possibly trigger a
use-after-free or NULL pointer dereference. The highest
threat from this vulnerability is to system
availability.(CVE-2020-10730)
- A flaw was found in Samba's libldb. Multiple,
consecutive leading spaces in an LDAP attribute can
lead to an out-of-bounds memory write, leading to a
crash of the LDAP server process handling the request.
The highest threat from this vulnerability is to system
availability.(CVE-2021-20277)
- A flaw was found in samba. Spaces used in a string
around a domain name (DN), while supposed to be
ignored, can cause invalid DN strings with spaces to
instead write a zero-byte into out-of-bounds memory,
resulting in a crash. The highest threat from this
vulnerability is to system
availability.(CVE-2020-27840)
- A flaw was found in samba. The Samba smbd file server
must map Windows group identities (SIDs) into unix
group ids (gids). The code that performs this had a
flaw that could allow it to read data beyond the end of
the array in the case where a negative cache entry had
been added to the mapping cache. This could cause the
calling code to return those values into the process
token that stores the group membership for a user. The
highest threat from this vulnerability is to data
confidentiality and integrity.(CVE-2021-20254)
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-2021-2446
script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?f159e5a1");
script_set_attribute(attribute:"solution", value:
"Update the affected samba packages.");
script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:S/C:P/I:P/A:N");
script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C");
script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/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-2021-20254");
script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");
script_set_attribute(attribute:"exploit_available", value:"false");
script_set_attribute(attribute:"patch_publication_date", value:"2021/09/14");
script_set_attribute(attribute:"plugin_publication_date", value:"2021/09/14");
script_set_attribute(attribute:"plugin_type", value:"local");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:libsmbclient");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:libwbclient");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:samba");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:samba-client");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:samba-client-libs");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:samba-common");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:samba-common-libs");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:samba-common-tools");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:samba-libs");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:samba-python");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:samba-winbind");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:samba-winbind-clients");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:samba-winbind-modules");
script_set_attribute(attribute:"cpe", value:"cpe:/o:huawei:euleros: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) 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/EulerOS/release", "Host/EulerOS/rpm-list", "Host/EulerOS/sp");
script_exclude_keys("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");
if (release !~ "^EulerOS release 2\.0(\D|$)") audit(AUDIT_OS_NOT, "EulerOS 2.0");
sp = get_kb_item("Host/EulerOS/sp");
if (isnull(sp) || sp !~ "^(2)$") audit(AUDIT_OS_NOT, "EulerOS 2.0 SP2");
uvp = get_kb_item("Host/EulerOS/uvp_version");
if (!empty_or_null(uvp)) audit(AUDIT_OS_NOT, "EulerOS 2.0 SP2", "EulerOS UVP " + uvp);
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 ("x86_64" >!< cpu && cpu !~ "^i[3-6]86$") audit(AUDIT_ARCH_NOT, "i686 / x86_64", cpu);
flag = 0;
pkgs = ["libsmbclient-4.6.2-8.h20",
"libwbclient-4.6.2-8.h20",
"samba-4.6.2-8.h20",
"samba-client-4.6.2-8.h20",
"samba-client-libs-4.6.2-8.h20",
"samba-common-4.6.2-8.h20",
"samba-common-libs-4.6.2-8.h20",
"samba-common-tools-4.6.2-8.h20",
"samba-libs-4.6.2-8.h20",
"samba-python-4.6.2-8.h20",
"samba-winbind-4.6.2-8.h20",
"samba-winbind-clients-4.6.2-8.h20",
"samba-winbind-modules-4.6.2-8.h20"];
foreach (pkg in pkgs)
if (rpm_check(release:"EulerOS-2.0", sp:"2", reference:pkg)) flag++;
if (flag)
{
security_report_v4(
port : 0,
severity : SECURITY_WARNING,
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, "samba");
}
Vendor | Product | Version | CPE |
---|---|---|---|
huawei | euleros | libsmbclient | p-cpe:/a:huawei:euleros:libsmbclient |
huawei | euleros | libwbclient | p-cpe:/a:huawei:euleros:libwbclient |
huawei | euleros | samba | p-cpe:/a:huawei:euleros:samba |
huawei | euleros | samba-client | p-cpe:/a:huawei:euleros:samba-client |
huawei | euleros | samba-client-libs | p-cpe:/a:huawei:euleros:samba-client-libs |
huawei | euleros | samba-common | p-cpe:/a:huawei:euleros:samba-common |
huawei | euleros | samba-common-libs | p-cpe:/a:huawei:euleros:samba-common-libs |
huawei | euleros | samba-common-tools | p-cpe:/a:huawei:euleros:samba-common-tools |
huawei | euleros | samba-libs | p-cpe:/a:huawei:euleros:samba-libs |
huawei | euleros | samba-python | p-cpe:/a:huawei:euleros:samba-python |