CentOS Linux 8.4 [TuxCare] Security Update: bpftool / kernel / kernel-core / kernel-cross-headers / etc Multiple Vulnerabilities (CENTOS8.4:CLSA-2026:1780079196)
| Reporter | Title | Published | Views | Family All 1000 |
|---|---|---|---|---|
| Exploit for CVE-2026-46243 | 3 Jun 202600:15 | – | githubexploit | |
| CIFSwitch | 28 May 202605:38 | – | githubexploit | |
| Exploit for CVE-2026-46243 | 2 Jun 202611:39 | – | githubexploit | |
| Exploit for CVE-2026-46243 | 2 Jun 202611:39 | – | githubexploit | |
| LPE | 9 Oct 202610:53 | – | githubexploit | |
| Security Bulletin: IBM Guardium Data Protection is affected by multiple vulnerabilities | 7 Sep 202606:51 | – | ibm | |
| CVE-2026-23216 | 18 Feb 202614:21 | – | attackerkb | |
| CVE-2026-46243 | 1 Jun 202616:22 | – | attackerkb | |
| CVE-2026-23388 | 25 Mar 202610:28 | – | attackerkb | |
| CVE-2026-43040 | 1 May 202614:15 | – | attackerkb |
10
10
#%NASL_MIN_LEVEL 80900
##
# (C) Tenable, Inc.
##
include('compat.inc');
if (description)
{
script_id(360231);
script_version("1.2");
script_set_attribute(attribute:"plugin_modification_date", value:"2026/10/02");
script_cve_id(
"CVE-2021-46992",
"CVE-2021-47191",
"CVE-2021-47219",
"CVE-2021-47245",
"CVE-2021-47280",
"CVE-2021-47281",
"CVE-2021-47288",
"CVE-2021-47293",
"CVE-2021-47309",
"CVE-2021-47483",
"CVE-2021-47541",
"CVE-2021-47576",
"CVE-2021-47600",
"CVE-2022-50344",
"CVE-2025-71093",
"CVE-2025-71116",
"CVE-2026-23076",
"CVE-2026-23216",
"CVE-2026-23388",
"CVE-2026-31602",
"CVE-2026-31778",
"CVE-2026-43040",
"CVE-2026-43450",
"CVE-2026-46243"
);
script_xref(name:"CLSA", value:"2026:1780079196");
script_name(english:"CentOS Linux 8.4 [TuxCare] Security Update: bpftool / kernel / kernel-core / kernel-cross-headers / etc Multiple Vulnerabilities (CENTOS8.4:CLSA-2026:1780079196)");
script_set_attribute(attribute:"synopsis", value:
"The CentOS Linux host is missing one or more security updates.");
script_set_attribute(attribute:"description", value:
"The CentOS Linux 8.4 host has packages installed that are affected by multiple vulnerabilities as referenced in the
TuxCare CENTOS8.4:CLSA-2026:1780079196 advisory.
- In the Linux kernel, the following vulnerability has been resolved: netfilter: nftables: avoid overflows
in nft_hash_buckets() Number of buckets being stored in 32bit variables, we have to ensure that no
overflows occur in nft_hash_buckets() syzbot injected a size == 0x40000000 and reported: UBSAN: shift-out-
of-bounds in ./include/linux/log2.h:57:13 shift exponent 64 is too large for 64-bit type 'long unsigned
int' CPU: 1 PID: 29539 Comm: syz-executor.4 Not tainted 5.12.0-rc7-syzkaller #0 Hardware name: Google
Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack
lib/dump_stack.c:79 [inline] dump_stack+0x141/0x1d7 lib/dump_stack.c:120 ubsan_epilogue+0xb/0x5a
lib/ubsan.c:148 __ubsan_handle_shift_out_of_bounds.cold+0xb1/0x181 lib/ubsan.c:327 __roundup_pow_of_two
include/linux/log2.h:57 [inline] nft_hash_buckets net/netfilter/nft_set_hash.c:411 [inline]
nft_hash_estimate.cold+0x19/0x1e net/netfilter/nft_set_hash.c:652 nft_select_set_ops
net/netfilter/nf_tables_api.c:3586 [inline] nf_tables_newset+0xe62/0x3110
net/netfilter/nf_tables_api.c:4322 nfnetlink_rcv_batch+0xa09/0x24b0 net/netfilter/nfnetlink.c:488
nfnetlink_rcv_skb_batch net/netfilter/nfnetlink.c:612 [inline] nfnetlink_rcv+0x3af/0x420
net/netfilter/nfnetlink.c:630 netlink_unicast_kernel net/netlink/af_netlink.c:1312 [inline]
netlink_unicast+0x533/0x7d0 net/netlink/af_netlink.c:1338 netlink_sendmsg+0x856/0xd90
net/netlink/af_netlink.c:1927 sock_sendmsg_nosec net/socket.c:654 [inline] sock_sendmsg+0xcf/0x120
net/socket.c:674 ____sys_sendmsg+0x6e8/0x810 net/socket.c:2350 ___sys_sendmsg+0xf3/0x170 net/socket.c:2404
__sys_sendmsg+0xe5/0x1b0 net/socket.c:2433 do_syscall_64+0x2d/0x70 arch/x86/entry/common.c:46
(CVE-2021-46992)
- In the Linux kernel, the following vulnerability has been resolved: scsi: scsi_debug: Fix out-of-bound
read in resp_readcap16() The following warning was observed running syzkaller: [ 3813.830724] sg_write:
data in/out 65466/242 bytes for SCSI command 0x9e-- guessing data in; [ 3813.830724] program syz-executor
not setting count and/or reply_len properly [ 3813.836956]
================================================================== [ 3813.839465] BUG: KASAN: stack-out-
of-bounds in sg_copy_buffer+0x157/0x1e0 [ 3813.841773] Read of size 4096 at addr ffff8883cf80f540 by task
syz-executor/1549 [ 3813.846612] Call Trace: [ 3813.846995] dump_stack+0x108/0x15f [ 3813.847524]
print_address_description+0xa5/0x372 [ 3813.848243] kasan_report.cold+0x236/0x2a8 [ 3813.849439]
check_memory_region+0x240/0x270 [ 3813.850094] memcpy+0x30/0x80 [ 3813.850553] sg_copy_buffer+0x157/0x1e0
[ 3813.853032] sg_copy_from_buffer+0x13/0x20 [ 3813.853660] fill_from_dev_buffer+0x135/0x370 [
3813.854329] resp_readcap16+0x1ac/0x280 [ 3813.856917] schedule_resp+0x41f/0x1630 [ 3813.858203]
scsi_debug_queuecommand+0xb32/0x17e0 [ 3813.862699] scsi_dispatch_cmd+0x330/0x950 [ 3813.863329]
scsi_request_fn+0xd8e/0x1710 [ 3813.863946] __blk_run_queue+0x10b/0x230 [ 3813.864544]
blk_execute_rq_nowait+0x1d8/0x400 [ 3813.865220] sg_common_write.isra.0+0xe61/0x2420 [ 3813.871637]
sg_write+0x6c8/0xef0 [ 3813.878853] __vfs_write+0xe4/0x800 [ 3813.883487] vfs_write+0x17b/0x530 [
3813.884008] ksys_write+0x103/0x270 [ 3813.886268] __x64_sys_write+0x77/0xc0 [ 3813.886841]
do_syscall_64+0x106/0x360 [ 3813.887415] entry_SYSCALL_64_after_hwframe+0x44/0xa9 This issue can be
reproduced with the following syzkaller log: r0 = openat(0xffffffffffffff9c,
&(0x7f0000000040)='./file0\x00', 0x26e1, 0x0) r1 = syz_open_procfs(0xffffffffffffffff,
&(0x7f0000000000)='fd/3\x00') open_by_handle_at(r1, &(0x7f00000003c0)=ANY=[@ANYRESHEX], 0x602000) r2 =
syz_open_dev$sg(&(0x7f0000000000), 0x0, 0x40782) write$binfmt_aout(r2, &(0x7f0000000340)=ANY=[@ANYBLOB=00
000000deff000000000000000000000000000000000000000000000000000047f007af9e107a41ec395f1bded7be24277a1501ff61
96a83366f4e6362bc0ff2b247f68a972989b094b2da4fb3607fcf611a22dd04310d28c75039d], 0x126) In resp_readcap16()
we get int alloc_len value -1104926854, and then pass the huge arr_len to fill_from_dev_buffer(), but
arr is only 32 bytes. This leads to OOB in sg_copy_buffer(). To solve this issue, define alloc_len as u32.
(CVE-2021-47191)
- In the Linux kernel, the following vulnerability has been resolved: scsi: scsi_debug: Fix out-of-bound
read in resp_report_tgtpgs() The following issue was observed running syzkaller: BUG: KASAN: slab-out-of-
bounds in memcpy include/linux/string.h:377 [inline] BUG: KASAN: slab-out-of-bounds in
sg_copy_buffer+0x150/0x1c0 lib/scatterlist.c:831 Read of size 2132 at addr ffff8880aea95dc8 by task syz-
executor.0/9815 CPU: 0 PID: 9815 Comm: syz-executor.0 Not tainted 4.19.202-00874-gfc0fe04215a9 #2 Hardware
name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.10.2-1ubuntu1 04/01/2014 Call Trace: __dump_stack
lib/dump_stack.c:77 [inline] dump_stack+0xe4/0x14a lib/dump_stack.c:118
print_address_description+0x73/0x280 mm/kasan/report.c:253 kasan_report_error mm/kasan/report.c:352
[inline] kasan_report+0x272/0x370 mm/kasan/report.c:410 memcpy+0x1f/0x50 mm/kasan/kasan.c:302 memcpy
include/linux/string.h:377 [inline] sg_copy_buffer+0x150/0x1c0 lib/scatterlist.c:831
fill_from_dev_buffer+0x14f/0x340 drivers/scsi/scsi_debug.c:1021 resp_report_tgtpgs+0x5aa/0x770
drivers/scsi/scsi_debug.c:1772 schedule_resp+0x464/0x12f0 drivers/scsi/scsi_debug.c:4429
scsi_debug_queuecommand+0x467/0x1390 drivers/scsi/scsi_debug.c:5835 scsi_dispatch_cmd+0x3fc/0x9b0
drivers/scsi/scsi_lib.c:1896 scsi_request_fn+0x1042/0x1810 drivers/scsi/scsi_lib.c:2034
__blk_run_queue_uncond block/blk-core.c:464 [inline] __blk_run_queue+0x1a4/0x380 block/blk-core.c:484
blk_execute_rq_nowait+0x1c2/0x2d0 block/blk-exec.c:78 sg_common_write.isra.19+0xd74/0x1dc0
drivers/scsi/sg.c:847 sg_write.part.23+0x6e0/0xd00 drivers/scsi/sg.c:716 sg_write+0x64/0xa0
drivers/scsi/sg.c:622 __vfs_write+0xed/0x690 fs/read_write.c:485 kill_bdev:block_device:00000000e138492c
vfs_write+0x184/0x4c0 fs/read_write.c:549 ksys_write+0x107/0x240 fs/read_write.c:599
do_syscall_64+0xc2/0x560 arch/x86/entry/common.c:293 entry_SYSCALL_64_after_hwframe+0x49/0xbe We get
'alen' from command its type is int. If userspace passes a large length we will get a negative 'alen'.
Switch n, alen, and rlen to u32. (CVE-2021-47219)
- In the Linux kernel, the following vulnerability has been resolved: netfilter: synproxy: Fix out of bounds
when parsing TCP options The TCP option parser in synproxy (synproxy_parse_options) could read one byte
out of bounds. When the length is 1, the execution flow gets into the loop, reads one byte of the opcode,
and if the opcode is neither TCPOPT_EOL nor TCPOPT_NOP, it reads one more byte, which exceeds the length
of 1. This fix is inspired by commit 9609dad263f8 (ipv4: tcp_input: fix stack out of bounds when parsing
TCP options.). v2 changes: Added an early return when length < 0 to avoid calling skb_header_pointer with
negative length. (CVE-2021-47245)
- In the Linux kernel, the following vulnerability has been resolved: drm: Fix use-after-free read in
drm_getunique() There is a time-of-check-to-time-of-use error in drm_getunique() due to retrieving
file_priv->master prior to locking the device's master mutex. An example can be seen in the crash report
of the use-after-free error found by Syzbot:
https://syzkaller.appspot.com/bug?id=148d2f1dfac64af52ffd27b661981a540724f803 In the report, the master
pointer was used after being freed. This is because another process had acquired the device's master mutex
in drm_setmaster_ioctl(), then overwrote fpriv->master in drm_new_set_master(). The old value of
fpriv->master was subsequently freed before the mutex was unlocked. To fix this, we lock the device's
master mutex before retrieving the pointer from from fpriv->master. This patch passes the Syzbot
reproducer test. (CVE-2021-47280)
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/centos8.4els/advisories/2026/clsa-2026_1780079196.json
script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?16755466");
script_set_attribute(attribute:"see_also", value:"https://cve.tuxcare.com/els/releases/CLSA-2026:1780079196");
script_set_attribute(attribute:"solution", value:
"Update the affected packages based on the guidance in TuxCare advisory CENTOS8.4:CLSA-2026:1780079196.");
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:H/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:H/RL:O/RC:C");
script_set_attribute(attribute:"cvss_score_source", value:"CVE-2026-23216");
script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
script_set_attribute(attribute:"exploit_available", value:"true");
script_set_attribute(attribute:"exploited_by_malware", value:"true");
script_set_attribute(attribute:"vendor_severity", value:"Important");
script_set_attribute(attribute:"vuln_publication_date", value:"2021/07/16");
script_set_attribute(attribute:"patch_publication_date", value:"2026/05/29");
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:"CentOS 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/CentOS/release", "Host/CentOS/rpm-list");
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) || 'CentOS Linux' >!< os_product) audit(AUDIT_OS_NOT, 'CentOS Linux');
var os_version = get_kb_item('installed_os/local/SSH/0/version');
if (isnull(os_version)) audit(AUDIT_UNKNOWN_APP_VER, 'CentOS Linux');
if (! preg(pattern:"^8.4([^0-9]|$)", string:os_version)) audit(AUDIT_OS_NOT, 'CentOS Linux 8.4', 'CentOS Linux ' + os_version);
if (!get_kb_item('Host/CentOS/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, 'CentOS Linux', cpu);
var constraints = [
{
'release': '8',
'sp': '4',
'pkgs': [
{'reference':'bpftool-4.18.0-305.25.1.el8_4.tuxcare.els41', 'sp':'4', 'cpu':'x86_64', 'el_string':'el8_4', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-4.18.0-305.25.1.el8_4.tuxcare.els41', 'sp':'4', 'cpu':'x86_64', 'el_string':'el8_4', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-core-4.18.0-305.25.1.el8_4.tuxcare.els41', 'sp':'4', 'cpu':'x86_64', 'el_string':'el8_4', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-cross-headers-4.18.0-305.25.1.el8_4.tuxcare.els41', 'sp':'4', 'cpu':'x86_64', 'el_string':'el8_4', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-debug-4.18.0-305.25.1.el8_4.tuxcare.els41', 'sp':'4', 'cpu':'x86_64', 'el_string':'el8_4', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-debug-core-4.18.0-305.25.1.el8_4.tuxcare.els41', 'sp':'4', 'cpu':'x86_64', 'el_string':'el8_4', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-debug-devel-4.18.0-305.25.1.el8_4.tuxcare.els41', 'sp':'4', 'cpu':'x86_64', 'el_string':'el8_4', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-debug-modules-4.18.0-305.25.1.el8_4.tuxcare.els41', 'sp':'4', 'cpu':'x86_64', 'el_string':'el8_4', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-debug-modules-extra-4.18.0-305.25.1.el8_4.tuxcare.els41', 'sp':'4', 'cpu':'x86_64', 'el_string':'el8_4', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-debug-modules-internal-4.18.0-305.25.1.el8_4.tuxcare.els41', 'sp':'4', 'cpu':'x86_64', 'el_string':'el8_4', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-devel-4.18.0-305.25.1.el8_4.tuxcare.els41', 'sp':'4', 'cpu':'x86_64', 'el_string':'el8_4', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-headers-4.18.0-305.25.1.el8_4.tuxcare.els41', 'sp':'4', 'cpu':'x86_64', 'el_string':'el8_4', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-ipaclones-internal-4.18.0-305.25.1.el8_4.tuxcare.els41', 'sp':'4', 'cpu':'x86_64', 'el_string':'el8_4', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-modules-4.18.0-305.25.1.el8_4.tuxcare.els41', 'sp':'4', 'cpu':'x86_64', 'el_string':'el8_4', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-modules-extra-4.18.0-305.25.1.el8_4.tuxcare.els41', 'sp':'4', 'cpu':'x86_64', 'el_string':'el8_4', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-modules-internal-4.18.0-305.25.1.el8_4.tuxcare.els41', 'sp':'4', 'cpu':'x86_64', 'el_string':'el8_4', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-selftests-internal-4.18.0-305.25.1.el8_4.tuxcare.els41', 'sp':'4', 'cpu':'x86_64', 'el_string':'el8_4', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-tools-4.18.0-305.25.1.el8_4.tuxcare.els41', 'sp':'4', 'cpu':'x86_64', 'el_string':'el8_4', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-tools-libs-4.18.0-305.25.1.el8_4.tuxcare.els41', 'sp':'4', 'cpu':'x86_64', 'el_string':'el8_4', 'rpm_spec_vers_cmp':TRUE},
{'reference':'kernel-tools-libs-devel-4.18.0-305.25.1.el8_4.tuxcare.els41', 'sp':'4', 'cpu':'x86_64', 'el_string':'el8_4', 'rpm_spec_vers_cmp':TRUE},
{'reference':'perf-4.18.0-305.25.1.el8_4.tuxcare.els41', 'sp':'4', 'cpu':'x86_64', 'el_string':'el8_4', 'rpm_spec_vers_cmp':TRUE},
{'reference':'python3-perf-4.18.0-305.25.1.el8_4.tuxcare.els41', 'sp':'4', 'cpu':'x86_64', 'el_string':'el8_4', '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-core / kernel-cross-headers / 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
02 Oct 2026 00:00Current
6.9Medium risk
Vulners AI Score6.9
CVSS 3.17.8 - 9.1
EPSS0.00784
SSVC