CVSS3
Attack Vector
NETWORK
Attack Complexity
LOW
Privileges Required
NONE
User Interaction
REQUIRED
Scope
UNCHANGED
Confidentiality Impact
HIGH
Integrity Impact
HIGH
Availability Impact
HIGH
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
EPSS
Percentile
59.6%
The remote AlmaLinux 9 host has packages installed that are affected by multiple vulnerabilities as referenced in the ALSA-2023:4958 advisory.
A website could have obscured the full screen notification by using the file open dialog. This could have led to user confusion and possible spoofing attacks. This vulnerability affects Firefox < 116.
(CVE-2023-4051)
A website could have obscured the full screen notification by using a URL with a scheme handled by an external program, such as a mailto URL. This could have led to user confusion and possible spoofing attacks. This vulnerability affects Firefox < 116. (CVE-2023-4053)
When receiving rendering data over IPC <code>mStream</code> could have been destroyed when initialized, which could have led to a use-after-free causing a potentially exploitable crash. (CVE-2023-4573)
When creating a callback over IPC for showing the Color Picker window, multiple of the same callbacks could have been created at a time and eventually all simultaneously destroyed as soon as one of the callbacks finished. This could have led to a use-after-free causing a potentially exploitable crash.
(CVE-2023-4574)
When creating a callback over IPC for showing the File Picker window, multiple of the same callbacks could have been created at a time and eventually all simultaneously destroyed as soon as one of the callbacks finished. This could have led to a use-after-free causing a potentially exploitable crash.
(CVE-2023-4575)
When <code>UpdateRegExpStatics</code> attempted to access <code>initialStringHeap</code> it could already have been garbage collected prior to entering the function, which could potentially have led to an exploitable crash. (CVE-2023-4577)
When calling <code>JS::CheckRegExpSyntax</code> a Syntax Error could have been set which would end in calling <code>convertToRuntimeErrorAndClear</code>. A path in the function could attempt to allocate memory when none is available which would have caused a newly created Out of Memory exception to be mishandled as a Syntax Error. (CVE-2023-4578)
Push notifications stored on disk in private browsing mode were not being encrypted potentially allowing the leak of sensitive information. (CVE-2023-4580)
Excel <code>.xll</code> add-in files did not have a blocklist entry in Firefox’s executable blocklist which allowed them to be downloaded without any warning of their potential harm. (CVE-2023-4581)
Memory safety bugs present in Firefox 116, Firefox ESR 102.14, Firefox ESR 115.1, Thunderbird 102.14, and Thunderbird 115.1. Some of these bugs showed evidence of memory corruption and we presume that with enough effort some of these could have been exploited to run arbitrary code. (CVE-2023-4584)
Memory safety bugs present in Firefox 116, Firefox ESR 115.1, and Thunderbird 115.1. Some of these bugs showed evidence of memory corruption and we presume that with enough effort some of these could have been exploited to run arbitrary code. (CVE-2023-4585)
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 package checks in this plugin were extracted from
# AlmaLinux Security Advisory ALSA-2023:4958.
##
include('compat.inc');
if (description)
{
script_id(180553);
script_version("1.3");
script_set_attribute(attribute:"plugin_modification_date", value:"2023/09/25");
script_cve_id(
"CVE-2023-4051",
"CVE-2023-4053",
"CVE-2023-4573",
"CVE-2023-4574",
"CVE-2023-4575",
"CVE-2023-4577",
"CVE-2023-4578",
"CVE-2023-4580",
"CVE-2023-4581",
"CVE-2023-4584",
"CVE-2023-4585"
);
script_xref(name:"ALSA", value:"2023:4958");
script_xref(name:"IAVA", value:"2023-A-0388-S");
script_xref(name:"IAVA", value:"2023-A-0449-S");
script_name(english:"AlmaLinux 9 : firefox (ALSA-2023:4958)");
script_set_attribute(attribute:"synopsis", value:
"The remote AlmaLinux host is missing one or more security updates.");
script_set_attribute(attribute:"description", value:
"The remote AlmaLinux 9 host has packages installed that are affected by multiple vulnerabilities as referenced in the
ALSA-2023:4958 advisory.
- A website could have obscured the full screen notification by using the file open dialog. This could have
led to user confusion and possible spoofing attacks. This vulnerability affects Firefox < 116.
(CVE-2023-4051)
- A website could have obscured the full screen notification by using a URL with a scheme handled by an
external program, such as a mailto URL. This could have led to user confusion and possible spoofing
attacks. This vulnerability affects Firefox < 116. (CVE-2023-4053)
- When receiving rendering data over IPC <code>mStream</code> could have been destroyed when initialized,
which could have led to a use-after-free causing a potentially exploitable crash. (CVE-2023-4573)
- When creating a callback over IPC for showing the Color Picker window, multiple of the same callbacks
could have been created at a time and eventually all simultaneously destroyed as soon as one of the
callbacks finished. This could have led to a use-after-free causing a potentially exploitable crash.
(CVE-2023-4574)
- When creating a callback over IPC for showing the File Picker window, multiple of the same callbacks could
have been created at a time and eventually all simultaneously destroyed as soon as one of the callbacks
finished. This could have led to a use-after-free causing a potentially exploitable crash.
(CVE-2023-4575)
- When <code>UpdateRegExpStatics</code> attempted to access <code>initialStringHeap</code> it could already
have been garbage collected prior to entering the function, which could potentially have led to an
exploitable crash. (CVE-2023-4577)
- When calling <code>JS::CheckRegExpSyntax</code> a Syntax Error could have been set which would end in
calling <code>convertToRuntimeErrorAndClear</code>. A path in the function could attempt to allocate
memory when none is available which would have caused a newly created Out of Memory exception to be
mishandled as a Syntax Error. (CVE-2023-4578)
- Push notifications stored on disk in private browsing mode were not being encrypted potentially allowing
the leak of sensitive information. (CVE-2023-4580)
- Excel <code>.xll</code> add-in files did not have a blocklist entry in Firefox's executable blocklist
which allowed them to be downloaded without any warning of their potential harm. (CVE-2023-4581)
- Memory safety bugs present in Firefox 116, Firefox ESR 102.14, Firefox ESR 115.1, Thunderbird 102.14, and
Thunderbird 115.1. Some of these bugs showed evidence of memory corruption and we presume that with enough
effort some of these could have been exploited to run arbitrary code. (CVE-2023-4584)
- Memory safety bugs present in Firefox 116, Firefox ESR 115.1, and Thunderbird 115.1. Some of these bugs
showed evidence of memory corruption and we presume that with enough effort some of these could have been
exploited to run arbitrary code. (CVE-2023-4585)
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://errata.almalinux.org/9/ALSA-2023-4958.html");
script_set_attribute(attribute:"see_also", value:"https://access.redhat.com/security/cve/CVE-2023-4583");
script_set_attribute(attribute:"solution", value:
"Update the affected firefox and / or firefox-x11 packages.");
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:U/RL:OF/RC:C");
script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H");
script_set_cvss3_temporal_vector("CVSS:3.0/E:U/RL:O/RC:C");
script_set_attribute(attribute:"cvss_score_source", value:"CVE-2023-4585");
script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");
script_set_attribute(attribute:"exploit_available", value:"false");
script_cwe_id(120);
script_set_attribute(attribute:"vuln_publication_date", value:"2023/08/01");
script_set_attribute(attribute:"patch_publication_date", value:"2023/09/04");
script_set_attribute(attribute:"plugin_publication_date", value:"2023/09/06");
script_set_attribute(attribute:"plugin_type", value:"local");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:alma:linux:firefox");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:alma:linux:firefox-x11");
script_set_attribute(attribute:"cpe", value:"cpe:/o:alma:linux:9");
script_set_attribute(attribute:"cpe", value:"cpe:/o:alma:linux:9::appstream");
script_set_attribute(attribute:"cpe", value:"cpe:/o:alma:linux:9::baseos");
script_set_attribute(attribute:"cpe", value:"cpe:/o:alma:linux:9::crb");
script_set_attribute(attribute:"cpe", value:"cpe:/o:alma:linux:9::highavailability");
script_set_attribute(attribute:"cpe", value:"cpe:/o:alma:linux:9::nfv");
script_set_attribute(attribute:"cpe", value:"cpe:/o:alma:linux:9::realtime");
script_set_attribute(attribute:"cpe", value:"cpe:/o:alma:linux:9::resilientstorage");
script_set_attribute(attribute:"cpe", value:"cpe:/o:alma:linux:9::sap");
script_set_attribute(attribute:"cpe", value:"cpe:/o:alma:linux:9::sap_hana");
script_set_attribute(attribute:"cpe", value:"cpe:/o:alma:linux:9::supplementary");
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:"Alma Linux Local Security Checks");
script_copyright(english:"This script is Copyright (C) 2023 and is owned by Tenable, Inc. or an Affiliate thereof.");
script_dependencies("ssh_get_info.nasl");
script_require_keys("Host/local_checks_enabled", "Host/AlmaLinux/release", "Host/AlmaLinux/rpm-list", "Host/cpu");
exit(0);
}
include('rpm.inc');
if (!get_kb_item('Host/local_checks_enabled')) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
var os_release = get_kb_item('Host/AlmaLinux/release');
if (isnull(os_release) || 'AlmaLinux' >!< os_release) audit(AUDIT_OS_NOT, 'AlmaLinux');
var os_ver = pregmatch(pattern: "AlmaLinux release ([0-9]+(\.[0-9]+)?)", string:os_release);
if (isnull(os_ver)) audit(AUDIT_UNKNOWN_APP_VER, 'AlmaLinux');
os_ver = os_ver[1];
if (! preg(pattern:"^9([^0-9]|$)", string:os_ver)) audit(AUDIT_OS_NOT, 'AlmaLinux 9.x', 'AlmaLinux ' + os_ver);
if (!get_kb_item('Host/AlmaLinux/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) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, 'AlmaLinux', cpu);
var pkgs = [
{'reference':'firefox-102.15.0-1.el9_2.alma.plus', 'cpu':'aarch64', 'release':'9', 'rpm_spec_vers_cmp':TRUE, 'allowmaj':TRUE},
{'reference':'firefox-102.15.0-1.el9_2.alma.plus', 'cpu':'x86_64', 'release':'9', 'rpm_spec_vers_cmp':TRUE, 'allowmaj':TRUE},
{'reference':'firefox-x11-102.15.0-1.el9_2.alma.plus', 'cpu':'aarch64', 'release':'9', 'rpm_spec_vers_cmp':TRUE, 'allowmaj':TRUE},
{'reference':'firefox-x11-102.15.0-1.el9_2.alma.plus', 'cpu':'x86_64', 'release':'9', 'rpm_spec_vers_cmp':TRUE, 'allowmaj':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 = 'Alma-' + 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_HOLE,
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, 'firefox / firefox-x11');
}
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-4051
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-4053
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-4573
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-4574
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-4575
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-4577
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-4578
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-4580
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-4581
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-4584
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-4585
access.redhat.com/security/cve/CVE-2023-4583
errata.almalinux.org/9/ALSA-2023-4958.html