Amazon Linux AMI openssl version prior to 1.0.2k-16.165 is vulnerable to excessive DH key generation leading to Denial of Servic
Reporter | Title | Published | Views | Family All 199 |
---|---|---|---|---|
Amazon | Medium: openssl | 29 Nov 202322:19 | – | amazon |
Amazon | Medium: openssl | 29 Nov 202323:18 | – | amazon |
Amazon | Medium: openssl11 | 29 Nov 202322:19 | – | amazon |
OpenVAS | Huawei EulerOS: Security Advisory for openssl (EulerOS-SA-2024-1109) | 29 Jan 202400:00 | – | openvas |
OpenVAS | Huawei EulerOS: Security Advisory for compat-openssl10 (EulerOS-SA-2024-1258) | 12 Mar 202400:00 | – | openvas |
OpenVAS | Huawei EulerOS: Security Advisory for openssl (EulerOS-SA-2024-1287) | 12 Mar 202400:00 | – | openvas |
OpenVAS | Huawei EulerOS: Security Advisory for openssl (EulerOS-SA-2024-1366) | 14 Mar 202400:00 | – | openvas |
OpenVAS | Huawei EulerOS: Security Advisory for shim (EulerOS-SA-2024-1206) | 9 Feb 202400:00 | – | openvas |
OpenVAS | Huawei EulerOS: Security Advisory for shim (EulerOS-SA-2024-1477) | 21 Mar 202400:00 | – | openvas |
OpenVAS | Huawei EulerOS: Security Advisory for shim (EulerOS-SA-2024-1129) | 29 Jan 202400:00 | – | openvas |
#%NASL_MIN_LEVEL 80900
##
# (C) Tenable, Inc.
#
# The descriptive text and package checks in this plugin were
# extracted from Amazon Linux AMI Security Advisory ALAS-2023-1891.
##
include('compat.inc');
if (description)
{
script_id(186589);
script_version("1.2");
script_set_attribute(attribute:"plugin_modification_date", value:"2024/04/11");
script_cve_id("CVE-2023-5678");
script_xref(name:"IAVA", value:"2024-A-0121-S");
script_name(english:"Amazon Linux AMI : openssl (ALAS-2023-1891)");
script_set_attribute(attribute:"synopsis", value:
"The remote Amazon Linux AMI host is missing a security update.");
script_set_attribute(attribute:"description", value:
"The version of openssl installed on the remote host is prior to 1.0.2k-16.165. It is, therefore, affected by a
vulnerability as referenced in the ALAS-2023-1891 advisory.
- Issue summary: Generating excessively long X9.42 DH keys or checking excessively long X9.42 DH keys or
parameters may be very slow. Impact summary: Applications that use the functions DH_generate_key() to
generate an X9.42 DH key may experience long delays. Likewise, applications that use DH_check_pub_key(),
DH_check_pub_key_ex() or EVP_PKEY_public_check() to check an X9.42 DH key or X9.42 DH parameters may
experience long delays. Where the key or parameters that are being checked have been obtained from an
untrusted source this may lead to a Denial of Service. While DH_check() performs all the necessary checks
(as of CVE-2023-3817), DH_check_pub_key() doesn't make any of these checks, and is therefore vulnerable
for excessively large P and Q parameters. Likewise, while DH_generate_key() performs a check for an
excessively large P, it doesn't check for an excessively large Q. An application that calls
DH_generate_key() or DH_check_pub_key() and supplies a key or parameters obtained from an untrusted source
could be vulnerable to a Denial of Service attack. DH_generate_key() and DH_check_pub_key() are also
called by a number of other OpenSSL functions. An application calling any of those other functions may
similarly be affected. The other functions affected by this are DH_check_pub_key_ex(),
EVP_PKEY_public_check(), and EVP_PKEY_generate(). Also vulnerable are the OpenSSL pkey command line
application when using the -pubcheck option, as well as the OpenSSL genpkey command line application.
The OpenSSL SSL/TLS implementation is not affected by this issue. The OpenSSL 3.0 and 3.1 FIPS providers
are not affected by this issue. (CVE-2023-5678)
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://alas.aws.amazon.com/ALAS-2023-1891.html");
script_set_attribute(attribute:"see_also", value:"https://alas.aws.amazon.com/cve/html/CVE-2023-5678.html");
script_set_attribute(attribute:"see_also", value:"https://alas.aws.amazon.com/faqs.html");
script_set_attribute(attribute:"solution", value:
"Run 'yum update openssl' to update your system.");
script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:N/I:N/A:P");
script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C");
script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L");
script_set_cvss3_temporal_vector("CVSS:3.0/E:U/RL:O/RC:C");
script_set_attribute(attribute:"cvss_score_source", value:"CVE-2023-5678");
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:"2023/11/06");
script_set_attribute(attribute:"patch_publication_date", value:"2023/11/29");
script_set_attribute(attribute:"plugin_publication_date", value:"2023/12/05");
script_set_attribute(attribute:"plugin_type", value:"local");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:amazon:linux:openssl");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:amazon:linux:openssl-debuginfo");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:amazon:linux:openssl-devel");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:amazon:linux:openssl-perl");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:amazon:linux:openssl-static");
script_set_attribute(attribute:"cpe", value:"cpe:/o:amazon:linux");
script_set_attribute(attribute:"generated_plugin", value:"current");
script_set_attribute(attribute:"stig_severity", value:"I");
script_end_attributes();
script_category(ACT_GATHER_INFO);
script_family(english:"Amazon Linux Local Security Checks");
script_copyright(english:"This script is Copyright (C) 2023-2024 and is owned by Tenable, Inc. or an Affiliate thereof.");
script_dependencies("ssh_get_info.nasl");
script_require_keys("Host/local_checks_enabled", "Host/AmazonLinux/release", "Host/AmazonLinux/rpm-list");
exit(0);
}
include("rpm.inc");
if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
var alas_release = get_kb_item("Host/AmazonLinux/release");
if (isnull(alas_release) || !strlen(alas_release)) audit(AUDIT_OS_NOT, "Amazon Linux");
var os_ver = pregmatch(pattern: "^AL(A|\d+|-\d+)", string:alas_release);
if (isnull(os_ver)) audit(AUDIT_UNKNOWN_APP_VER, "Amazon Linux");
os_ver = os_ver[1];
if (os_ver != "A")
{
if (os_ver == 'A') os_ver = 'AMI';
audit(AUDIT_OS_NOT, "Amazon Linux AMI", "Amazon Linux " + os_ver);
}
if (!get_kb_item("Host/AmazonLinux/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
var pkgs = [
{'reference':'openssl-1.0.2k-16.165.amzn1', 'cpu':'i686', 'release':'ALA', 'rpm_spec_vers_cmp':TRUE},
{'reference':'openssl-1.0.2k-16.165.amzn1', 'cpu':'x86_64', 'release':'ALA', 'rpm_spec_vers_cmp':TRUE},
{'reference':'openssl-debuginfo-1.0.2k-16.165.amzn1', 'cpu':'i686', 'release':'ALA', 'rpm_spec_vers_cmp':TRUE},
{'reference':'openssl-debuginfo-1.0.2k-16.165.amzn1', 'cpu':'x86_64', 'release':'ALA', 'rpm_spec_vers_cmp':TRUE},
{'reference':'openssl-devel-1.0.2k-16.165.amzn1', 'cpu':'i686', 'release':'ALA', 'rpm_spec_vers_cmp':TRUE},
{'reference':'openssl-devel-1.0.2k-16.165.amzn1', 'cpu':'x86_64', 'release':'ALA', 'rpm_spec_vers_cmp':TRUE},
{'reference':'openssl-perl-1.0.2k-16.165.amzn1', 'cpu':'i686', 'release':'ALA', 'rpm_spec_vers_cmp':TRUE},
{'reference':'openssl-perl-1.0.2k-16.165.amzn1', 'cpu':'x86_64', 'release':'ALA', 'rpm_spec_vers_cmp':TRUE},
{'reference':'openssl-static-1.0.2k-16.165.amzn1', 'cpu':'i686', 'release':'ALA', 'rpm_spec_vers_cmp':TRUE},
{'reference':'openssl-static-1.0.2k-16.165.amzn1', 'cpu':'x86_64', 'release':'ALA', 'rpm_spec_vers_cmp':TRUE}
];
var flag = 0;
foreach var package_array ( pkgs ) {
var reference = NULL;
var _release = NULL;
var sp = NULL;
var _cpu = NULL;
var el_string = NULL;
var rpm_spec_vers_cmp = NULL;
var epoch = NULL;
var allowmaj = NULL;
var exists_check = NULL;
if (!empty_or_null(package_array['reference'])) reference = package_array['reference'];
if (!empty_or_null(package_array['release'])) _release = package_array['release'];
if (!empty_or_null(package_array['sp'])) sp = package_array['sp'];
if (!empty_or_null(package_array['cpu'])) _cpu = package_array['cpu'];
if (!empty_or_null(package_array['el_string'])) el_string = package_array['el_string'];
if (!empty_or_null(package_array['rpm_spec_vers_cmp'])) rpm_spec_vers_cmp = package_array['rpm_spec_vers_cmp'];
if (!empty_or_null(package_array['epoch'])) epoch = package_array['epoch'];
if (!empty_or_null(package_array['allowmaj'])) allowmaj = package_array['allowmaj'];
if (!empty_or_null(package_array['exists_check'])) exists_check = package_array['exists_check'];
if (reference && _release && (!exists_check || rpm_exists(release:_release, rpm:exists_check))) {
if (rpm_check(release:_release, sp:sp, cpu:_cpu, reference:reference, epoch:epoch, el_string:el_string, rpm_spec_vers_cmp:rpm_spec_vers_cmp, allowmaj:allowmaj)) flag++;
}
}
if (flag)
{
security_report_v4(
port : 0,
severity : SECURITY_WARNING,
extra : rpm_report_get()
);
exit(0);
}
else
{
var tested = pkg_tests_get();
if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
else audit(AUDIT_PACKAGE_NOT_INSTALLED, "openssl / openssl-debuginfo / openssl-devel / etc");
}
Transform Your Security Services
Elevate your offerings with Vulners' advanced Vulnerability Intelligence. Contact us for a demo and discover the difference comprehensive, actionable intelligence can make in your security strategy.
Book a live demo