AlmaLinux 9.6 [TuxCare] Security Update: vim-X11 / vim-common / vim-enhanced / vim-filesystem / vim-minimal Multiple Vulnerabilities (ALMALINUX9.6:CLSA-2026:1778260679)
| Reporter | Title | Published | Views | Family All 475 |
|---|---|---|---|---|
| Floating point exception in function num_divide at eval | 18 Oct 202203:11 | – | huntr | |
| CVE-2023-48235 | 16 Nov 202323:15 | – | attackerkb | |
| CVE-2023-48231 | 16 Nov 202323:15 | – | attackerkb | |
| Amazon Linux 2023 : vim-common, vim-data, vim-default-editor (ALAS2023-2023-447) | 15 Dec 202300:00 | – | nessus | |
| Amazon Linux 2023 : vim-common, vim-data, vim-default-editor (ALAS2023-2024-761) | 14 Nov 202400:00 | – | nessus | |
| Amazon Linux 2 : vim (ALAS-2023-2353) | 4 Dec 202300:00 | – | nessus | |
| Amazon Linux AMI : vim (ALAS-2024-1902) | 9 Jan 202400:00 | – | nessus | |
| Azure Linux 3.0 Security Update: vim (CVE-2024-41957) | 10 Feb 202500:00 | – | nessus | |
| Azure Linux 3.0 Security Update: vim (CVE-2024-43374) | 10 Feb 202500:00 | – | nessus | |
| Azure Linux 3.0 Security Update: vim (CVE-2024-47814) | 10 Feb 202500:00 | – | nessus |
10
#%NASL_MIN_LEVEL 80900
##
# (C) Tenable, Inc.
##
include('compat.inc');
if (description)
{
script_id(359893);
script_version("1.1");
script_set_attribute(attribute:"plugin_modification_date", value:"2026/10/01");
script_cve_id(
"CVE-2022-4293",
"CVE-2023-48231",
"CVE-2023-48235",
"CVE-2024-41957",
"CVE-2024-43374",
"CVE-2024-47814"
);
script_xref(name:"CLSA", value:"2026:1778260679");
script_name(english:"AlmaLinux 9.6 [TuxCare] Security Update: vim-X11 / vim-common / vim-enhanced / vim-filesystem / vim-minimal Multiple Vulnerabilities (ALMALINUX9.6:CLSA-2026:1778260679)");
script_set_attribute(attribute:"synopsis", value:
"The AlmaLinux host is missing one or more security updates.");
script_set_attribute(attribute:"description", value:
"The AlmaLinux 9.6 host has packages installed that are affected by multiple vulnerabilities as referenced in the TuxCare
ALMALINUX9.6:CLSA-2026:1778260679 advisory.
- Floating Point Comparison with Incorrect Operator in GitHub repository vim/vim prior to 9.0.0804.
(CVE-2022-4293)
- Vim is an open source command line text editor. When closing a window, vim may try to access already freed
window structure. Exploitation beyond crashing the application has not been shown to be viable. This issue
has been addressed in commit `25aabc2b` which has been included in release version 9.0.2106. Users are
advised to upgrade. There are no known workarounds for this vulnerability. (CVE-2023-48231)
- Vim is an open source command line text editor. When parsing relative ex addresses one may unintentionally
cause an overflow. Ironically this happens in the existing overflow check, because the line number becomes
negative and LONG_MAX - lnum will cause the overflow. Impact is low, user interaction is required and a
crash may not even happen in all situations. This issue has been addressed in commit `060623e` which has
been included in release version 9.0.2110. Users are advised to upgrade. There are no known workarounds
for this vulnerability. (CVE-2023-48235)
- Vim is an open source command line text editor. Vim < v9.1.0647 has double free in src/alloc.c:616. When
closing a window, the corresponding tagstack data will be cleared and freed. However a bit later, the
quickfix list belonging to that window will also be cleared and if that quickfix list points to the same
tagstack data, Vim will try to free it again, resulting in a double-free/use-after-free access exception.
Impact is low since the user must intentionally execute vim with several non-default flags, but it may
cause a crash of Vim. The issue has been fixed as of Vim patch v9.1.0647 (CVE-2024-41957)
- The UNIX editor Vim prior to version 9.1.0678 has a use-after-free error in argument list handling. When
adding a new file to the argument list, this triggers `Buf*` autocommands. If in such an autocommand the
buffer that was just opened is closed (including the window where it is shown), this causes the window
structure to be freed which contains a reference to the argument list that we are actually modifying. Once
the autocommands are completed, the references to the window and argument list are no longer valid and as
such cause an use-after-free. Impact is low since the user must either intentionally add some unusual
autocommands that wipe a buffer during creation (either manually or by sourcing a malicious plugin), but
it will crash Vim. The issue has been fixed as of Vim patch v9.1.0678. (CVE-2024-43374)
Note that Nessus has not tested for these issues but has instead relied only on the application's self-reported version
number.");
# https://security.tuxcare.com/csaf/v2/els_os/tuxcare9.6esu/advisories/2026/clsa-2026_1778260679.json
script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?5a2b091b");
script_set_attribute(attribute:"see_also", value:"https://cve.tuxcare.com/els/releases/CLSA-2026:1778260679");
script_set_attribute(attribute:"solution", value:
"Update the affected packages based on the guidance in TuxCare advisory ALMALINUX9.6:CLSA-2026:1778260679.");
script_set_cvss_base_vector("CVSS2#AV:L/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:L/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:L");
script_set_cvss3_temporal_vector("CVSS:3.0/E:P/RL:O/RC:C");
script_set_attribute(attribute:"cvss_score_source", value:"CVE-2024-41957");
script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
script_set_attribute(attribute:"exploit_available", value:"true");
script_set_attribute(attribute:"vendor_severity", value:"Moderate");
script_set_attribute(attribute:"vuln_publication_date", value:"2022/12/05");
script_set_attribute(attribute:"patch_publication_date", value:"2026/05/08");
script_set_attribute(attribute:"plugin_publication_date", value:"2026/10/01");
script_set_attribute(attribute:"plugin_type", value:"local");
script_set_attribute(attribute:"generated_plugin", value:"current");
script_end_attributes();
script_category(ACT_GATHER_INFO);
script_family(english:"Alma Linux Local Security Checks");
script_copyright(english:"This script is Copyright (C) 2026 and is owned by Tenable, Inc. or an Affiliate thereof.");
script_dependencies("ssh_get_info2.nasl");
script_require_keys("Host/OS/extended-third-party", "Host/local_checks_enabled", "Host/AlmaLinux/release", "Host/AlmaLinux/rpm-list", "Host/cpu");
exit(0);
}
include('rpm2.inc');
var third_party_support = get_kb_item('Host/OS/extended-third-party');
if (empty_or_null(third_party_support) || third_party_support != 'TuxCare') exit(0, 'TuxCare support not enabled.');
if (!get_kb_item('Host/local_checks_enabled')) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
var os_product = get_kb_item('installed_os/local/SSH/0/product');
if (isnull(os_product) || 'AlmaLinux' >!< os_product) audit(AUDIT_OS_NOT, 'AlmaLinux');
var os_version = get_kb_item('installed_os/local/SSH/0/version');
if (isnull(os_version)) audit(AUDIT_UNKNOWN_APP_VER, 'AlmaLinux');
if (! preg(pattern:"^9.6([^0-9]|$)", string:os_version)) audit(AUDIT_OS_NOT, 'AlmaLinux 9.6', 'AlmaLinux ' + os_version);
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) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, 'AlmaLinux', cpu);
var constraints = [
{
'release': '9',
'sp': '6',
'pkgs': [
{'reference':'vim-X11-8.2.2637-22.el9_6.1.tuxcare.els24', 'sp':'6', 'cpu':'x86_64', 'el_string':'el9_6', 'rpm_spec_vers_cmp':TRUE, 'epoch':'2'},
{'reference':'vim-common-8.2.2637-22.el9_6.1.tuxcare.els24', 'sp':'6', 'cpu':'x86_64', 'el_string':'el9_6', 'rpm_spec_vers_cmp':TRUE, 'epoch':'2'},
{'reference':'vim-enhanced-8.2.2637-22.el9_6.1.tuxcare.els24', 'sp':'6', 'cpu':'x86_64', 'el_string':'el9_6', 'rpm_spec_vers_cmp':TRUE, 'epoch':'2'},
{'reference':'vim-filesystem-8.2.2637-22.el9_6.1.tuxcare.els24', 'sp':'6', 'el_string':'el9_6', 'rpm_spec_vers_cmp':TRUE, 'epoch':'2'},
{'reference':'vim-minimal-8.2.2637-22.el9_6.1.tuxcare.els24', 'sp':'6', 'cpu':'x86_64', 'el_string':'el9_6', 'rpm_spec_vers_cmp':TRUE, 'epoch':'2'}
]
}
];
var os_release = get_one_kb_item('installed_os/local/SSH/0/release');
var os_sp = get_one_kb_item('Host/*/minor_release');
var flag = 0;
var reference;
var sp;
var _cpu;
var el_string;
var rpm_spec_vers_cmp;
var epoch;
var allowmaj;
var exists_check;
var cves;
foreach var constraint ( constraints ) {
# Check that the target release is equal to the affected release
if (!empty_or_null(constraint['release'])){
if (constraint['release'] != os_release) continue;
}
if (!empty_or_null(constraint['sp'])){
if (constraint['sp'] != os_sp) continue;
}
foreach var pkg ( constraint['pkgs'] ) {
reference = NULL;
sp = NULL;
_cpu = NULL;
el_string = NULL;
rpm_spec_vers_cmp = NULL;
epoch = NULL;
allowmaj = NULL;
exists_check = NULL;
cves = NULL;
if (!empty_or_null(pkg['reference'])) reference = pkg['reference'];
if (!empty_or_null(pkg['sp'])) sp = pkg['sp'];
if (!empty_or_null(pkg['cpu'])) _cpu = pkg['cpu'];
if (!empty_or_null(pkg['el_string'])) el_string = pkg['el_string'];
if (!empty_or_null(pkg['rpm_spec_vers_cmp'])) rpm_spec_vers_cmp = pkg['rpm_spec_vers_cmp'];
if (!empty_or_null(pkg['epoch'])) epoch = pkg['epoch'];
if (!empty_or_null(pkg['allowmaj'])) allowmaj = pkg['allowmaj'];
if (!empty_or_null(pkg['exists_check'])) exists_check = pkg['exists_check'];
if (!empty_or_null(pkg['cves'])) cves = pkg['cves'];
if (reference &&
## (no known rpm to check OR known rpm_exists)
(!exists_check || rpm_exists(rpm:exists_check)) &&
rpm_check(sp:sp, cpu:_cpu, reference:reference, epoch:epoch, el_string:el_string, rpm_spec_vers_cmp:rpm_spec_vers_cmp, allowmaj:allowmaj, cves:cves)) 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, 'vim-X11 / vim-common / vim-enhanced / vim-filesystem / vim-minimal');
}
Data
Build on a solid foundation with Vulners data
We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data
Api
Power your application with Vulners API
The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access
App
Assess and manage vulnerabilities with Vulners tools
Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation
01 Oct 2026 00:00Current
6.5Medium risk
Vulners AI Score6.5
CVSS 3.14.5 - 5.5
CVSS 36.8
EPSS0.00755
SSVC