AlmaLinux 9.2 [TuxCare] Security Update: bpftool / kernel / kernel-abi-stablelists / kernel-core / etc Multiple Vulnerabilities (ALMALINUX9.2:CLSA-2026:1773139548)
10
10
#%NASL_MIN_LEVEL 80900
##
# (C) Tenable, Inc.
##
include('compat.inc');
if (description)
{
script_id(362121);
script_version("1.1");
script_set_attribute(attribute:"plugin_modification_date", value:"2026/10/01");
script_cve_id(
"CVE-2022-49687",
"CVE-2022-50422",
"CVE-2022-50470",
"CVE-2022-50846",
"CVE-2022-50882",
"CVE-2023-3773",
"CVE-2023-53085",
"CVE-2023-53105",
"CVE-2023-53347",
"CVE-2023-53392",
"CVE-2023-53454",
"CVE-2023-53471",
"CVE-2023-53500",
"CVE-2023-53506",
"CVE-2023-53515",
"CVE-2023-53524",
"CVE-2023-53535",
"CVE-2023-53540",
"CVE-2023-53556",
"CVE-2023-53560",
"CVE-2023-53571",
"CVE-2023-53574",
"CVE-2023-53587",
"CVE-2023-53588",
"CVE-2023-53589",
"CVE-2023-53600",
"CVE-2023-53601",
"CVE-2023-53604",
"CVE-2023-53619",
"CVE-2023-53622",
"CVE-2023-53629",
"CVE-2023-53652",
"CVE-2023-54114",
"CVE-2023-54148",
"CVE-2023-54173",
"CVE-2023-54184",
"CVE-2023-54186",
"CVE-2023-54195",
"CVE-2023-54202",
"CVE-2023-54234",
"CVE-2023-54242",
"CVE-2023-54244",
"CVE-2023-54246",
"CVE-2023-54283",
"CVE-2023-54289",
"CVE-2023-54294",
"CVE-2023-54296",
"CVE-2023-54299",
"CVE-2023-54303",
"CVE-2023-54306",
"CVE-2023-54321",
"CVE-2024-43892",
"CVE-2024-58020",
"CVE-2025-38022",
"CVE-2025-38201",
"CVE-2025-38494",
"CVE-2025-38495",
"CVE-2025-38535",
"CVE-2025-38565",
"CVE-2025-38691",
"CVE-2025-38728",
"CVE-2025-38732",
"CVE-2025-39683",
"CVE-2025-39693",
"CVE-2025-39760",
"CVE-2025-39824",
"CVE-2025-39835",
"CVE-2025-39866",
"CVE-2025-39913",
"CVE-2025-39945",
"CVE-2025-39949",
"CVE-2025-40251",
"CVE-2025-40304",
"CVE-2025-40322",
"CVE-2025-68349",
"CVE-2025-68811",
"CVE-2025-71085",
"CVE-2026-22998"
);
script_xref(name:"CLSA", value:"2026:1773139548");
script_name(english:"AlmaLinux 9.2 [TuxCare] Security Update: bpftool / kernel / kernel-abi-stablelists / kernel-core / etc Multiple Vulnerabilities (ALMALINUX9.2:CLSA-2026:1773139548)");
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.2 host has packages installed that are affected by multiple vulnerabilities as referenced in the TuxCare
ALMALINUX9.2:CLSA-2026:1773139548 advisory.
- In the Linux kernel, the following vulnerability has been resolved: virtio_net: fix xdp_rxq_info bug after
suspend/resume The following sequence currently causes a driver bug warning when using virtio_net: # ip
link set eth0 up # echo mem > /sys/power/state (or e.g. # rtcwake -s 10 -m mem) <resume> # ip link set
eth0 down Missing register, driver bug WARNING: CPU: 0 PID: 375 at net/core/xdp.c:138
xdp_rxq_info_unreg+0x58/0x60 Call trace: xdp_rxq_info_unreg+0x58/0x60 virtnet_close+0x58/0xac
__dev_close_many+0xac/0x140 __dev_change_flags+0xd8/0x210 dev_change_flags+0x24/0x64
do_setlink+0x230/0xdd0 ... This happens because virtnet_freeze() frees the receive_queue completely
(including struct xdp_rxq_info) but does not call xdp_rxq_info_unreg(). Similarly, virtnet_restore() sets
up the receive_queue again but does not call xdp_rxq_info_reg(). Actually, parts of virtnet_freeze_down()
and virtnet_restore_up() are almost identical to virtnet_close() and virtnet_open(): only the calls to
xdp_rxq_info_(un)reg() are missing. This means that we can fix this easily and avoid such problems in the
future by just calling virtnet_close()/open() from the freeze/restore handlers. Aside from adding the
missing xdp_rxq_info calls the only difference is that the refill work is only cancelled if
netif_running(). However, this should not make any functional difference since the refill work should only
be active if the network interface is actually up. (CVE-2022-49687)
- In the Linux kernel, the following vulnerability has been resolved: scsi: libsas: Fix use-after-free bug
in smp_execute_task_sg() When executing SMP task failed, the smp_execute_task_sg() calls del_timer() to
delete slow_task->timer. However, if the timer handler sas_task_internal_timedout() is running, the
del_timer() in smp_execute_task_sg() will not stop it and a UAF will happen. The process is shown below:
(thread 1) | (thread 2) smp_execute_task_sg() | sas_task_internal_timedout() ... | del_timer() | ... | ...
sas_free_task(task) | kfree(task->slow_task) //FREE| | task->slow_task->... //USE Fix by calling
del_timer_sync() in smp_execute_task_sg(), which makes sure the timer handler have finished before the
task->slow_task is deallocated. (CVE-2022-50422)
- In the Linux kernel, the following vulnerability has been resolved: xhci: Remove device endpoints from
bandwidth list when freeing the device Endpoints are normally deleted from the bandwidth list when they
are dropped, before the virt device is freed. If xHC host is dying or being removed then the endpoints
aren't dropped cleanly due to functions returning early to avoid interacting with a non-accessible host
controller. So check and delete endpoints that are still on the bandwidth list when freeing the virt
device. Solves a list_del corruption kernel crash when unbinding xhci-pci, caused by xhci_mem_cleanup()
when it later tried to delete already freed endpoints from the bandwidth list. This only affects hosts
that use software bandwidth checking, which currenty is only the xHC in intel Panther Point PCH (Ivy
Bridge) (CVE-2022-50470)
- In the Linux kernel, the following vulnerability has been resolved: mmc: via-sdmmc: fix return value check
of mmc_add_host() mmc_add_host() may return error, if we ignore its return value, it will lead two issues:
1. The memory that allocated in mmc_alloc_host() is leaked. 2. In the remove() path, mmc_remove_host()
will be called to delete device, but it's not added yet, it will lead a kernel crash because of null-ptr-
deref in device_del(). Fix this by checking the return value and goto error path which will call
mmc_free_host(). (CVE-2022-50846)
- In the Linux kernel, the following vulnerability has been resolved: media: uvcvideo: Fix memory leak in
uvc_gpio_parse Previously the unit buffer was allocated before checking the IRQ for privacy GPIO. In case
of error, the unit buffer was leaked. Allocate the unit buffer after the IRQ to avoid it. Addresses-
Coverity-ID: 1474639 (Resource leak) (CVE-2022-50882)
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/almalinux9.2esu/advisories/2026/clsa-2026_1773139548.json
script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?52e0f903");
script_set_attribute(attribute:"see_also", value:"https://cve.tuxcare.com/els/releases/CLSA-2026:1773139548");
script_set_attribute(attribute:"solution", value:
"Update the affected packages based on the guidance in TuxCare advisory ALMALINUX9.2:CLSA-2026:1773139548.");
script_set_cvss_base_vector("CVSS2#AV:L/AC:L/Au:S/C:C/I:C/A:C");
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:L/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-2025-39945");
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:"Important");
script_set_attribute(attribute:"vuln_publication_date", value:"2021/07/21");
script_set_attribute(attribute:"patch_publication_date", value:"2026/03/10");
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.2([^0-9]|$)", string:os_version)) audit(AUDIT_OS_NOT, 'AlmaLinux 9.2', '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 (cpu !~ "^i[3-6]86$" && 'x86_64' >!< cpu) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, 'AlmaLinux', cpu);
var constraints = [
{
'release': '9',
'sp': '2',
'pkgs': [
{'reference':'bpftool-7.0.0-284.1101.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-5.14.0-284.1101.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-abi-stablelists-5.14.0-284.1101.el9_2.tuxcare.7.els29', 'sp':'2', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-core-5.14.0-284.1101.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-cross-headers-5.14.0-284.1101.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-debug-5.14.0-284.1101.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-debug-core-5.14.0-284.1101.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-debug-devel-5.14.0-284.1101.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-debug-devel-matched-5.14.0-284.1101.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-debug-modules-5.14.0-284.1101.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-debug-modules-core-5.14.0-284.1101.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-debug-modules-extra-5.14.0-284.1101.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-debug-modules-internal-5.14.0-284.1101.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-debug-modules-partner-5.14.0-284.1101.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-debug-uki-virt-5.14.0-284.1101.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-devel-5.14.0-284.1101.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-devel-matched-5.14.0-284.1101.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-headers-5.14.0-284.1101.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-ipaclones-internal-5.14.0-284.1101.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-modules-5.14.0-284.1101.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-modules-core-5.14.0-284.1101.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-modules-extra-5.14.0-284.1101.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-modules-internal-5.14.0-284.1101.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-modules-partner-5.14.0-284.1101.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-selftests-internal-5.14.0-284.1101.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-tools-5.14.0-284.1101.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-tools-libs-5.14.0-284.1101.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-tools-libs-devel-5.14.0-284.1101.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-uki-virt-5.14.0-284.1101.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE},
{'reference':'libbpf-1.0.0-2.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'i686', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE, 'epoch':'2'},
{'reference':'libbpf-1.0.0-2.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE, 'epoch':'2'},
{'reference':'libbpf-devel-1.0.0-2.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'i686', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE, 'epoch':'2'},
{'reference':'libbpf-devel-1.0.0-2.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE, 'epoch':'2'},
{'reference':'libbpf-static-1.0.0-2.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'i686', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE, 'epoch':'2'},
{'reference':'libbpf-static-1.0.0-2.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE, 'epoch':'2'},
{'reference':'perf-5.14.0-284.1101.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE},
{'reference':'python3-perf-5.14.0-284.1101.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE},
{'reference':'rtla-5.14.0-284.1101.el9_2.tuxcare.7.els29', 'sp':'2', 'cpu':'x86_64', 'el_string':'el9_2', 'rpm_spec_vers_cmp':TRUE}
]
}
];
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, 'bpftool / kernel / kernel-abi-stablelists / kernel-core / etc');
}
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.7Medium risk
Vulners AI Score6.7
CVSS 3.17.8 - 9.8
EPSS0.0079
SSVC