The remote Redhat Enterprise Linux 6 host has one or more packages installed that are affected by multiple vulnerabilities that have been acknowledged by the vendor but will not be patched.
openldap: OpenLDAP SQL injection (CVE-2022-29155)
servers/slapd/back-mdb/search.c in OpenLDAP through 2.4.44 is prone to a double free vulnerability. A user with access to search the directory can crash slapd by issuing a search including the Paged Results control with a page size of 0. (CVE-2017-9287)
An issue was discovered in the server in OpenLDAP before 2.4.48. When the server administrator delegates rootDN (database admin) privileges for certain databases but wants to maintain isolation (e.g., for multi- tenant deployments), slapd does not properly stop a rootDN from requesting authorization as an identity from another database during a SASL bind or with a proxyAuthz (RFC 4370) control. (It is not a common configuration to deploy a system where the server administrator and a DB administrator enjoy different levels of trust.) (CVE-2019-13057)
An issue was discovered in OpenLDAP 2.x before 2.4.48. When using SASL authentication and session encryption, and relying on the SASL security layers in slapd access controls, it is possible to obtain access that would otherwise be denied via a simple bind for any identity covered in those ACLs. After the first SASL bind is completed, the sasl_ssf value is retained for all new non-SASL connections. Depending on the ACL configuration, this can affect different types of operations (searches, modifications, etc.).
In other words, a successful authorization step completed by one user affects the authorization requirement for a different user. (CVE-2019-13565)
In filter.c in slapd in OpenLDAP before 2.4.50, LDAP search filters with nested boolean expressions can result in denial of service (daemon crash). (CVE-2020-12243)
libldap in certain third-party OpenLDAP packages has a certificate-validation flaw when the third-party package is asserting RFC6125 support. It considers CN even when there is a non-matching subjectAltName (SAN). This is fixed in, for example, openldap-2.4.46-10.el8 in Red Hat Enterprise Linux. (CVE-2020-15719)
A NULL pointer dereference was found in OpenLDAP server and was fixed in openldap 2.4.55, during a request for renaming RDNs. An unauthenticated attacker could remotely crash the slapd process by sending a specially crafted request, causing a Denial of Service. (CVE-2020-25692)
A flaw was found in OpenLDAP. This flaw allows an attacker who can send a malicious packet to be processed by OpenLDAP’s slapd server, to trigger an assertion failure. The highest threat from this vulnerability is to system availability. (CVE-2020-25709)
A flaw was found in OpenLDAP in versions before 2.4.56. This flaw allows an attacker who sends a malicious packet processed by OpenLDAP to force a failed assertion in csnNormalize23(). The highest threat from this vulnerability is to system availability. (CVE-2020-25710)
An integer underflow was discovered in OpenLDAP before 2.4.57 leading to slapd crashes in the Certificate Exact Assertion processing, resulting in denial of service (schema_init.c serialNumberAndIssuerCheck).
(CVE-2020-36221)
A flaw was discovered in OpenLDAP before 2.4.57 leading to an assertion failure in slapd in the saslAuthzTo validation, resulting in denial of service. (CVE-2020-36222)
A flaw was discovered in OpenLDAP before 2.4.57 leading to a slapd crash in the Values Return Filter control handling, resulting in denial of service (double free and out-of-bounds read). (CVE-2020-36223)
A flaw was discovered in OpenLDAP before 2.4.57 leading to an invalid pointer free and slapd crash in the saslAuthzTo processing, resulting in denial of service. (CVE-2020-36224)
A flaw was discovered in OpenLDAP before 2.4.57 leading to a double free and slapd crash in the saslAuthzTo processing, resulting in denial of service. (CVE-2020-36225)
A flaw was discovered in OpenLDAP before 2.4.57 leading to a memch->bv_len miscalculation and slapd crash in the saslAuthzTo processing, resulting in denial of service. (CVE-2020-36226)
A flaw was discovered in OpenLDAP before 2.4.57 leading to an infinite loop in slapd with the cancel_extop Cancel operation, resulting in denial of service. (CVE-2020-36227)
An integer underflow was discovered in OpenLDAP before 2.4.57 leading to a slapd crash in the Certificate List Exact Assertion processing, resulting in denial of service. (CVE-2020-36228)
A flaw was discovered in ldap_X509dn2bv in OpenLDAP before 2.4.57 leading to a slapd crash in the X.509 DN parsing in ad_keystring, resulting in denial of service. (CVE-2020-36229)
A flaw was discovered in OpenLDAP before 2.4.57 leading in an assertion failure in slapd in the X.509 DN parsing in decode.c ber_next_element, resulting in denial of service. (CVE-2020-36230)
In OpenLDAP through 2.4.57 and 2.5.x through 2.5.1alpha, an assertion failure in slapd can occur in the issuerAndThisUpdateCheck function via a crafted packet, resulting in a denial of service (daemon exit) via a short timestamp. This is related to schema_init.c and checkTime. (CVE-2021-27212)
A vulnerability was found in openldap. This security flaw causes a null pointer dereference in ber_memalloc_x() function. (CVE-2023-2953)
Note that Nessus has not tested for these issues but has instead relied on the package manager’s report that the package is installed.
#%NASL_MIN_LEVEL 80900
##
# (C) Tenable, Inc.
#
# The descriptive text and package checks in this plugin were
# extracted from Red Hat Security Advisory openldap. The text
# itself is copyright (C) Red Hat, Inc.
##
include('compat.inc');
if (description)
{
script_id(196208);
script_version("1.0");
script_set_attribute(attribute:"plugin_modification_date", value:"2024/05/11");
script_cve_id(
"CVE-2017-9287",
"CVE-2019-13057",
"CVE-2019-13565",
"CVE-2020-12243",
"CVE-2020-15719",
"CVE-2020-25692",
"CVE-2020-25709",
"CVE-2020-25710",
"CVE-2020-36221",
"CVE-2020-36222",
"CVE-2020-36223",
"CVE-2020-36224",
"CVE-2020-36225",
"CVE-2020-36226",
"CVE-2020-36227",
"CVE-2020-36228",
"CVE-2020-36229",
"CVE-2020-36230",
"CVE-2021-27212",
"CVE-2022-29155",
"CVE-2023-2953"
);
script_name(english:"RHEL 6 : openldap (Unpatched Vulnerability)");
script_set_attribute(attribute:"synopsis", value:
"The remote Red Hat 6 host is affected by multiple vulnerabilities that will not be patched.");
script_set_attribute(attribute:"description", value:
"The remote Redhat Enterprise Linux 6 host has one or more packages installed that are affected by multiple
vulnerabilities that have been acknowledged by the vendor but will not be patched.
- openldap: OpenLDAP SQL injection (CVE-2022-29155)
- servers/slapd/back-mdb/search.c in OpenLDAP through 2.4.44 is prone to a double free vulnerability. A user
with access to search the directory can crash slapd by issuing a search including the Paged Results
control with a page size of 0. (CVE-2017-9287)
- An issue was discovered in the server in OpenLDAP before 2.4.48. When the server administrator delegates
rootDN (database admin) privileges for certain databases but wants to maintain isolation (e.g., for multi-
tenant deployments), slapd does not properly stop a rootDN from requesting authorization as an identity
from another database during a SASL bind or with a proxyAuthz (RFC 4370) control. (It is not a common
configuration to deploy a system where the server administrator and a DB administrator enjoy different
levels of trust.) (CVE-2019-13057)
- An issue was discovered in OpenLDAP 2.x before 2.4.48. When using SASL authentication and session
encryption, and relying on the SASL security layers in slapd access controls, it is possible to obtain
access that would otherwise be denied via a simple bind for any identity covered in those ACLs. After the
first SASL bind is completed, the sasl_ssf value is retained for all new non-SASL connections. Depending
on the ACL configuration, this can affect different types of operations (searches, modifications, etc.).
In other words, a successful authorization step completed by one user affects the authorization
requirement for a different user. (CVE-2019-13565)
- In filter.c in slapd in OpenLDAP before 2.4.50, LDAP search filters with nested boolean expressions can
result in denial of service (daemon crash). (CVE-2020-12243)
- libldap in certain third-party OpenLDAP packages has a certificate-validation flaw when the third-party
package is asserting RFC6125 support. It considers CN even when there is a non-matching subjectAltName
(SAN). This is fixed in, for example, openldap-2.4.46-10.el8 in Red Hat Enterprise Linux. (CVE-2020-15719)
- A NULL pointer dereference was found in OpenLDAP server and was fixed in openldap 2.4.55, during a request
for renaming RDNs. An unauthenticated attacker could remotely crash the slapd process by sending a
specially crafted request, causing a Denial of Service. (CVE-2020-25692)
- A flaw was found in OpenLDAP. This flaw allows an attacker who can send a malicious packet to be processed
by OpenLDAP's slapd server, to trigger an assertion failure. The highest threat from this vulnerability is
to system availability. (CVE-2020-25709)
- A flaw was found in OpenLDAP in versions before 2.4.56. This flaw allows an attacker who sends a malicious
packet processed by OpenLDAP to force a failed assertion in csnNormalize23(). The highest threat from this
vulnerability is to system availability. (CVE-2020-25710)
- An integer underflow was discovered in OpenLDAP before 2.4.57 leading to slapd crashes in the Certificate
Exact Assertion processing, resulting in denial of service (schema_init.c serialNumberAndIssuerCheck).
(CVE-2020-36221)
- A flaw was discovered in OpenLDAP before 2.4.57 leading to an assertion failure in slapd in the
saslAuthzTo validation, resulting in denial of service. (CVE-2020-36222)
- A flaw was discovered in OpenLDAP before 2.4.57 leading to a slapd crash in the Values Return Filter
control handling, resulting in denial of service (double free and out-of-bounds read). (CVE-2020-36223)
- A flaw was discovered in OpenLDAP before 2.4.57 leading to an invalid pointer free and slapd crash in the
saslAuthzTo processing, resulting in denial of service. (CVE-2020-36224)
- A flaw was discovered in OpenLDAP before 2.4.57 leading to a double free and slapd crash in the
saslAuthzTo processing, resulting in denial of service. (CVE-2020-36225)
- A flaw was discovered in OpenLDAP before 2.4.57 leading to a memch->bv_len miscalculation and slapd crash
in the saslAuthzTo processing, resulting in denial of service. (CVE-2020-36226)
- A flaw was discovered in OpenLDAP before 2.4.57 leading to an infinite loop in slapd with the cancel_extop
Cancel operation, resulting in denial of service. (CVE-2020-36227)
- An integer underflow was discovered in OpenLDAP before 2.4.57 leading to a slapd crash in the Certificate
List Exact Assertion processing, resulting in denial of service. (CVE-2020-36228)
- A flaw was discovered in ldap_X509dn2bv in OpenLDAP before 2.4.57 leading to a slapd crash in the X.509 DN
parsing in ad_keystring, resulting in denial of service. (CVE-2020-36229)
- A flaw was discovered in OpenLDAP before 2.4.57 leading in an assertion failure in slapd in the X.509 DN
parsing in decode.c ber_next_element, resulting in denial of service. (CVE-2020-36230)
- In OpenLDAP through 2.4.57 and 2.5.x through 2.5.1alpha, an assertion failure in slapd can occur in the
issuerAndThisUpdateCheck function via a crafted packet, resulting in a denial of service (daemon exit) via
a short timestamp. This is related to schema_init.c and checkTime. (CVE-2021-27212)
- A vulnerability was found in openldap. This security flaw causes a null pointer dereference in
ber_memalloc_x() function. (CVE-2023-2953)
Note that Nessus has not tested for these issues but has instead relied on the package manager's report that the package
is installed.");
script_set_attribute(attribute:"solution", value:
"The vendor has acknowledged the vulnerabilities but no solution has been provided. Refer to the vendor for remediation
guidance.");
script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:P");
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-2022-29155");
script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
script_set_attribute(attribute:"exploit_available", value:"true");
script_set_attribute(attribute:"vendor_unpatched", value:"true");
script_set_attribute(attribute:"vuln_publication_date", value:"2017/05/29");
script_set_attribute(attribute:"plugin_publication_date", value:"2024/05/11");
script_set_attribute(attribute:"plugin_type", value:"local");
script_set_attribute(attribute:"cpe", value:"cpe:/o:redhat:enterprise_linux:5");
script_set_attribute(attribute:"cpe", value:"cpe:/o:redhat:enterprise_linux:6");
script_set_attribute(attribute:"cpe", value:"cpe:/o:redhat:enterprise_linux:7");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:compat-openldap");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:openldap");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:openldap24-libs");
script_set_attribute(attribute:"generated_plugin", value:"current");
script_end_attributes();
script_category(ACT_GATHER_INFO);
script_family(english:"Red Hat Local Security Checks");
script_copyright(english:"This script is Copyright (C) 2024 and is owned by Tenable, Inc. or an Affiliate thereof.");
script_dependencies("ssh_get_info.nasl", "redhat_repos.nasl");
script_require_keys("Host/local_checks_enabled", "Host/RedHat/release", "Host/RedHat/rpm-list", "Host/cpu");
exit(0);
}
include('rpm.inc');
include('rhel.inc');
if (!get_kb_item("global_settings/vendor_unpatched"))
exit(0, "Unpatched Vulnerabilities Detection not active.");
if (!get_kb_item('Host/local_checks_enabled')) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
var os_release = get_kb_item('Host/RedHat/release');
if (isnull(os_release) || 'Red Hat' >!< os_release) audit(AUDIT_OS_NOT, 'Red Hat');
var os_ver = pregmatch(pattern: "Red Hat Enterprise Linux.*release ([0-9]+(\.[0-9]+)?)", string:os_release);
if (isnull(os_ver)) audit(AUDIT_UNKNOWN_APP_VER, 'Red Hat');
os_ver = os_ver[1];
if (!rhel_check_release(operator: 'ge', os_version: os_ver, rhel_version: '6')) audit(AUDIT_OS_NOT, 'Red Hat 6.x', 'Red Hat ' + os_ver);
if (!get_kb_item('Host/RedHat/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 && 'ppc' >!< cpu) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, 'Red Hat', cpu);
var constraints = [
{
'pkgs': [
{'reference':'compat-openldap', 'release':'6', 'rpm_spec_vers_cmp':TRUE, 'unpatched_pkg':'compat-openldap', 'cves':['CVE-2020-12243', 'CVE-2020-15719', 'CVE-2020-25709', 'CVE-2020-25710', 'CVE-2020-36221', 'CVE-2020-36222', 'CVE-2020-36223', 'CVE-2020-36224', 'CVE-2020-36225', 'CVE-2020-36226', 'CVE-2020-36227', 'CVE-2020-36228', 'CVE-2020-36229', 'CVE-2020-36230', 'CVE-2021-27212', 'CVE-2022-29155', 'CVE-2023-2953']},
{'reference':'openldap', 'release':'6', 'rpm_spec_vers_cmp':TRUE, 'unpatched_pkg':'openldap'}
]
}
];
var flag = 0;
foreach var constraint_array ( constraints ) {
var repo_relative_urls = NULL;
var enterprise_linux_flag = rhel_repo_urls_has_content_dist_rhel(repo_urls:repo_relative_urls);
foreach var pkg ( constraint_array['pkgs'] ) {
var unpatched_pkg = NULL;
var _release = NULL;
var sp = NULL;
var el_string = NULL;
var rpm_spec_vers_cmp = NULL;
var exists_check = NULL;
var cves = NULL;
if (!empty_or_null(pkg['unpatched_pkg'])) unpatched_pkg = pkg['unpatched_pkg'];
if (!empty_or_null(pkg['release'])) _release = 'RHEL' + pkg['release'];
if (!empty_or_null(pkg['sp'])) sp = pkg['sp'];
if (!empty_or_null(pkg['rpm_spec_vers_cmp'])) rpm_spec_vers_cmp = pkg['rpm_spec_vers_cmp'];
if (!empty_or_null(pkg['exists_check'])) exists_check = pkg['exists_check'];
if (!empty_or_null(pkg['cves'])) cves = pkg['cves'];
if (unpatched_pkg &&
_release &&
(!exists_check || rpm_exists(release:_release, rpm:exists_check)) &&
unpatched_package_exists(release:_release, package:unpatched_pkg, cves: cves)) flag++;
}
}
if (flag)
{
var extra = NULL;
security_report_v4(
port : 0,
severity : SECURITY_HOLE,
extra : unpatched_packages_report()
);
exit(0);
}
else
{
var tested = pkg_tests_get();
if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
else audit(AUDIT_PACKAGE_NOT_INSTALLED, 'compat-openldap / openldap');
}
Vendor | Product | Version | CPE |
---|---|---|---|
redhat | enterprise_linux | 5 | cpe:/o:redhat:enterprise_linux:5 |
redhat | enterprise_linux | 6 | cpe:/o:redhat:enterprise_linux:6 |
redhat | enterprise_linux | 7 | cpe:/o:redhat:enterprise_linux:7 |
redhat | enterprise_linux | compat-openldap | p-cpe:/a:redhat:enterprise_linux:compat-openldap |
redhat | enterprise_linux | openldap | p-cpe:/a:redhat:enterprise_linux:openldap |
redhat | enterprise_linux | openldap24-libs | p-cpe:/a:redhat:enterprise_linux:openldap24-libs |
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-9287
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-13057
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-13565
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-12243
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15719
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-25692
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-25709
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-25710
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-36221
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-36222
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-36223
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-36224
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-36225
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-36226
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-36227
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-36228
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-36229
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-36230
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-27212
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-29155
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-2953