Linux Distros Unpatched Vulnerability : CVE-2026-98401
| Reporter | Title | Published | Views | Family All 12 |
|---|---|---|---|---|
| CVE-2026-98401 | 14 Oct 202618:32 | – | circl | |
| CVE-2026-98401 | 14 Oct 202613:26 | – | cve | |
| CVE-2026-98401 net: iptunnel: fix stale transport header during tunnel decapsulation | 14 Oct 202613:26 | – | cvelist | |
| CVE-2026-98401 | 14 Oct 202613:26 | – | debiancve | |
| EUVD-2026-101050 | 14 Oct 202613:26 | – | euvd | |
| net: iptunnel: fix stale transport header during tunnel decapsulation | 16 Oct 202608:04 | – | mscve | |
| CVE-2026-98401 | 14 Oct 202614:17 | – | nvd | |
| AZL-108141 CVE-2026-98401 affecting package kernel 6.6.157.1-1 | 14 Oct 202614:17 | – | osv-azl | |
| DEBIAN-CVE-2026-98401 | 14 Oct 202614:17 | – | osv-debian | |
| PT-2026-114380 | 14 Oct 202600:00 | – | ptsecurity |
10
| Source | Link |
|---|---|
| security-tracker | www.security-tracker.debian.org/tracker/CVE-2026-98401 |
| cve | www.cve.mitre.org/cgi-bin/cvename.cgi |
#%NASL_MIN_LEVEL 80900
##
# (C) Tenable, Inc.
##
include('compat.inc');
if (description)
{
script_id(365941);
script_version("1.1");
script_set_attribute(attribute:"plugin_modification_date", value:"2026/10/14");
script_cve_id("CVE-2026-98401");
script_name(english:"Linux Distros Unpatched Vulnerability : CVE-2026-98401");
script_set_attribute(attribute:"synopsis", value:
"The Linux/Unix host has one or more packages installed with a vulnerability that the vendor indicates will not be
patched.");
script_set_attribute(attribute:"description", value:
"The Linux/Unix host has one or more packages installed that are impacted by a vulnerability without a vendor supplied
patch available.
- net: iptunnel: fix stale transport header during tunnel decapsulation Syzbot reported a crash in
qdisc_pkt_len_segs_init() caused by a stale transport_header offset after tunnel decapsulation. BUG:
unable to handle page fault for address: ffffed102091a42e Oops: Oops: 0000 [#1] SMP KASAN NOPTI CPU: 0
UID: 0 PID: 340 Comm: qdisc_uaf_repro Not tainted 7.2.0-rc4-00061-g248951ddc14d #256 PREEMPT(full)
Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014 RIP:
0010:__asan_load2 <IRQ> qdisc_pkt_len_segs_init (net/core/dev.c:4145) __dev_queue_xmit
(net/core/dev.c:4787) br_dev_queue_push_xmit (net/bridge/br_forward.c:53) br_handle_frame_finish
(net/bridge/br_input.c:229) br_handle_frame (net/bridge/br_input.c:315)
__netif_receive_skb_core.constprop.0 (net/core/dev.c:6099) __netif_receive_skb_list_core
(net/core/dev.c:6287) netif_receive_skb_list_internal (net/core/dev.c:6445) napi_complete_done
(net/core/dev.c:6813) gro_cell_poll (net/core/gro_cells.c:74) __napi_poll (net/core/dev.c:7735)
net_rx_action (net/core/dev.c:7798 net/core/dev.c:7955) handle_softirqs (kernel/softirq.c:622) do_softirq
(kernel/softirq.c:523 kernel/softirq.c:510 ) __local_bh_enable_ip (kernel/softirq.c:450) tun_get_user
(drivers/net/tun.c:1986 (discriminator 1)) tun_chr_write_iter (drivers/net/tun.c:2032) The issue is
completely latent until qdisc read transport header in commit 7fb4c1967011 (net: pull headers in
qdisc_pkt_len_segs_init()). The crash requires four conditions to line up: 1. The incoming packet is
encapsulated and carries GSO metadata. The outer transport header offset is stored in
skb->transport_header while the packet is still in the outer tunnel context. 2. The tunnel receiver strips
the outer headers. skb->data is advanced to the inner frame, but skb->transport_header is left pointing to
the now-removed outer L4 header, so it becomes a negative offset relative to the new data. 3. The inner
frame is not delivered to the local IP stack. Instead, it is forwarded at L2 by a bridge or HSR, so
ip_rcv_core() never runs and the transport header is not reset to the inner L4 offset. 4. The forwarding
path calls __dev_queue_xmit(), which enters qdisc_pkt_len_segs_init(). That function computes the GSO
header length from skb_transport_offset(skb). Because the offset is negative, the unsigned cast overflows
and pskb_may_pull(skb, hdr_len + sizeof(struct tcphdr)) reads past the end of the skb, triggering a KASAN
fault or page fault. The issue specifically requires GSO packets (shinfo->gso_size != 0), which are
processed/aggregated through gro_cells. Fix this by clearing transport_header to the ~0U sentinel in
gro_cell for all tunnnel driver. GTP does not support GRO/GSO, drop the evil GSO packets in GTP directly.
(CVE-2026-98401)
Note that Nessus relies on the presence of the package as reported by the vendor.");
script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-98401");
script_set_attribute(attribute:"solution", value:
"There is no known solution at this time.");
script_set_attribute(attribute:"agent", value:"unix");
script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:P");
script_set_cvss_temporal_vector("CVSS2#E:U/RL:U/RC:C");
script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H");
script_set_cvss3_temporal_vector("CVSS:3.0/E:U/RL:U/RC:C");
script_set_attribute(attribute:"cvss_score_source", value:"CVE-2026-98401");
script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");
script_set_attribute(attribute:"exploit_available", value:"false");
script_set_attribute(attribute:"vendor_unpatched", value:"true");
script_set_attribute(attribute:"vuln_publication_date", value:"2026/10/14");
script_set_attribute(attribute:"plugin_publication_date", value:"2026/10/14");
script_set_attribute(attribute:"plugin_type", value:"local");
script_set_attribute(attribute:"cpe", value:"cpe:/o:debian:debian_linux:12.0");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:linux");
script_set_attribute(attribute:"generated_plugin", value:"current");
script_end_attributes();
script_category(ACT_GATHER_INFO);
script_family(english:"Misc.");
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", "set_linux_os_id.nasl");
script_require_keys("Host/cpu", "Host/local_checks_enabled", "global_settings/vendor_unpatched", "Host/OS/identifier");
script_require_ports("Host/OS/Debian Linux-12");
exit(0);
}
if (!get_kb_item("global_settings/vendor_unpatched")) exit(0, "Unpatched Vulnerabilities Detection not active.");
if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
if (empty_or_null(get_one_kb_item("Host/Debian/dpkg-l"))) audit(AUDIT_PACKAGE_LIST_MISSING);
include('linux_unpatched.inc');
var distro_constraints_array = {
"Debian Linux-12": {
"package_manager": "dpkg-l",
"constraints": [
{
"release": "12",
"pkgs": [
{"reference": "btrfs-modules-6.1.0-50-alpha-generic-di"},
{"reference": "cdrom-core-modules-6.1.0-50-alpha-generic-di"},
{"reference": "ext4-modules-6.1.0-50-alpha-generic-di"},
{"reference": "fat-modules-6.1.0-50-alpha-generic-di"},
{"reference": "isofs-modules-6.1.0-50-alpha-generic-di"},
{"reference": "jfs-modules-6.1.0-50-alpha-generic-di"},
{"reference": "kernel-image-6.1.0-50-alpha-generic-di"},
{"reference": "linux-doc"},
{"reference": "linux-doc-6.1"},
{"reference": "linux-headers-6.1.0"},
{"reference": "linux-source"},
{"reference": "linux-source-6.1"},
{"reference": "linux-support-6.1.0"},
{"reference": "loop-modules-6.1.0-50-alpha-generic-di"},
{"reference": "nic-modules-6.1.0-50-alpha-generic-di"},
{"reference": "nic-shared-modules-6.1.0-50-alpha-generic-di"},
{"reference": "nic-wireless-modules-6.1.0-50-alpha-generic-di"},
{"reference": "pata-modules-6.1.0-50-alpha-generic-di"},
{"reference": "ppp-modules-6.1.0-50-alpha-generic-di"},
{"reference": "scsi-core-modules-6.1.0-50-alpha-generic-di"},
{"reference": "scsi-modules-6.1.0-50-alpha-generic-di"},
{"reference": "scsi-nic-modules-6.1.0-50-alpha-generic-di"},
{"reference": "serial-modules-6.1.0-50-alpha-generic-di"},
{"reference": "usb-serial-modules-6.1.0-50-alpha-generic-di"},
{"reference": "xfs-modules-6.1.0-50-alpha-generic-di"}
]
}
]
}
};
var distro_constraints_values = linux_unpatched::get_distro_constraints(distro_constraints_arr:distro_constraints_array);
if (empty_or_null(distro_constraints_values)) audit(AUDIT_HOST_NOT, 'affected');
var third_party_support = get_kb_item('Host/OS/extended-third-party');
if (!empty_or_null(third_party_support)) {
var third_party_vendors = distro_constraints_values['third_party'];
if (!empty_or_null(third_party_vendors)) {
var vendor;
foreach vendor (third_party_vendors) {
if (vendor == third_party_support) exit(0, 'A third party management patch is available for this vulnerability from ' + vendor + '.\n');
}
}
}
var report = linux_unpatched::check_unpatched_constraints(distro_constraints_values:distro_constraints_values);
if (!empty_or_null(report))
{
security_report_v4(
port : 0,
severity : SECURITY_WARNING,
extra : report
);
exit(0);
}
else
{
audit(AUDIT_HOST_NOT, 'affected');
}
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
14 Oct 2026 00:00Current
5.8Medium risk
Vulners AI Score5.8
EPSS0.00209