Linux Distros Unpatched Vulnerability : CVE-2026-89754
| Reporter | Title | Published | Views | Family All 9 |
|---|---|---|---|---|
| CVE-2026-89754 | 13 Sep 202610:00 | – | circl | |
| CVE-2026-89754 | 11 Sep 202619:46 | – | cve | |
| CVE-2026-89754 mm/pagewalk: fix stale walk->action escaping walk_pmd_range() | 11 Sep 202619:46 | – | cvelist | |
| CVE-2026-89754 | 11 Sep 202619:46 | – | debiancve | |
| EUVD-2026-76666 | 11 Sep 202619:46 | – | euvd | |
| CVE-2026-89754 | 11 Sep 202620:20 | – | nvd | |
| DEBIAN-CVE-2026-89754 | 11 Sep 202620:20 | – | osv | |
| PT-2026-90470 | 11 Sep 202600:00 | – | ptsecurity | |
| CVE-2026-89754 | 11 Sep 202622:21 | – | redhatcve |
| Source | Link |
|---|---|
| security-tracker | www.security-tracker.debian.org/tracker/CVE-2026-89754 |
| cve | www.cve.mitre.org/cgi-bin/cvename.cgi |
#%NASL_MIN_LEVEL 80900
##
# (C) Tenable, Inc.
##
include('compat.inc');
if (description)
{
script_id(345391);
script_version("1.1");
script_set_attribute(attribute:"plugin_modification_date", value:"2026/09/12");
script_cve_id("CVE-2026-89754");
script_name(english:"Linux Distros Unpatched Vulnerability : CVE-2026-89754");
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.
- mm/pagewalk: fix stale walk->action escaping walk_pmd_range() If ->pmd_entry() sets walk->action =
ACTION_AGAIN, the pmd_none() check is retried. The PMD entry may be cleared at the point of retry. In this
case, if walk->ops->install_pte is not specified, the code continues to the next PMD entry in the range
without resetting walk->action to ACTION_SUBTREE. This leaves walk->action erroneously set to
ACTION_AGAIN, which is incorrect. This was incorrect but not problematic up until commit 3b89863c3fa4
(mm/pagewalk: fix race between concurrent split and refault) which updated walk_pud_range() to check for
walk->action == ACTION_AGAIN upon walk_pmd_range()'s return, causing the PUD walk to be retried. In this
case this results in duplicate walk callbacks being invoked, which is erroneous and will break any caller
that is not idempotent with respect to this (and waste time for those which are). The result is an out-of-
bounds write, triggered by a local fuzzer: [ 2.272695]
================================================================== [ 2.273471] BUG: KASAN: slab-out-of-
bounds in __mincore_unmapped_range+0x14f/0x190 [ 2.274302] Write of size 1 at addr ffff888008d9b000 by
task poc/106 [ 2.274966] [ 2.275154] CPU: 0 UID: 1000 PID: 106 Comm: poc Not tainted
7.2.0-rc6-00429-ga7c7074b58d2 #55 PREEMPT(lazy) [ 2.275159] Hardware name: QEMU Ubuntu 24.04 PC v2 (i440FX
+ PIIX, arch_caps fix, 1996), BIOS 1.16.3-debian-1.16.3-2 04/01/2014 [ 2.275164] Call Trace: [ 2.275170]
<TASK> [ 2.275172] dump_stack_lvl+0x53/0x70 [ 2.275200] print_report+0xd0/0x630 [ 2.275210] ?
__pfx__raw_spin_lock_irqsave+0x10/0x10 [ 2.275219] ? irqentry_exit+0xd2/0x670 [ 2.275224] ?
irqentry_exit+0xd2/0x670 [ 2.275226] ? __virt_addr_valid+0xef/0x1a0 [ 2.275239] ?
__mincore_unmapped_range+0x14f/0x190 [ 2.275242] kasan_report+0xce/0x100 [ 2.275245] ?
__mincore_unmapped_range+0x14f/0x190 [ 2.275248] __mincore_unmapped_range+0x14f/0x190 [ 2.275252]
mincore_unmapped_range+0x45/0x70 [ 2.275254] walk_pgd_range+0xafc/0xfc0 [ 2.275261] ?
__pfx_walk_pgd_range+0x10/0x10 [ 2.275264] ? __update_load_avg_se+0x3d1/0x670 [ 2.275275]
__walk_page_range+0xc0/0x310 [ 2.275278] ? __pfx_find_vma+0x10/0x10 [ 2.275281] ?
finish_task_switch.isra.0+0x16d/0x4f0 [ 2.275290] walk_page_range_mm_unsafe+0x26f/0x3a0 [ 2.275293] ?
__pfx_mtree_load+0x10/0x10 [ 2.275298] ? __pfx_walk_page_range_mm_unsafe+0x10/0x10 [ 2.275302] ?
__free_frozen_pages+0x54d/0x7e0 [ 2.275308] __do_sys_mincore+0x132/0x380 [ 2.275311]
do_syscall_64+0xf9/0x540 [ 2.275316] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 2.275322] RIP:
0033:0x422ccd [ 2.275326] Code: b3 66 2e 0f 1f 84 00 00 00 00 00 66 90 f3 0f 1e fa 48 89 f8 48 89 f7 48 89
d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 b8 ff ff ff f7 d8
64 89 01 48 [ 2.275329] RSP: 002b:00007fffffffec18 EFLAGS: 00000287 ORIG_RAX: 000000000000001b [ 2.275337]
RAX: ffffffffffffffda RBX: 0000000000000066 RCX: 0000000000422ccd [ 2.275339] RDX: 00000000004d0940 RSI:
0000000001000000 RDI: 00007ffff4000000 [ 2.275340] RBP: 00000000004d0940 R08: 0000000000000100 R09:
0000000000000100 [ 2.275342] R10: 0000000000000100 R11: 0000000000000287 R12: 20c49ba5e353f7cf [ 2.275343]
R13: 00000000004990d3 R14: 0000000000000000 R15: 0000000000000001 [ 2.275346] </TASK> [ 2.275347] [
2.296904] The buggy address belongs to the object at ffff888008d9b000 [ 2.296904] which belongs to the
cache sigqueue of size 80 [ 2.298151] The buggy address is located 0 bytes inside of [ 2.298151] allocated
80-byte region [ffff888008d9b000, ffff888008d9b050) [ 2.299408] [ 2.299601] The buggy address belongs to
the physical page: [ 2.300191] page: refcount:0 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x8d9b
---truncated--- (CVE-2026-89754)
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-89754");
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:L/AC:M/Au:N/C:N/I:C/A:P");
script_set_cvss_temporal_vector("CVSS2#E:U/RL:U/RC:C");
script_set_cvss3_base_vector("CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:N/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-89754");
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/09/11");
script_set_attribute(attribute:"plugin_publication_date", value:"2026/09/12");
script_set_attribute(attribute:"plugin_type", value:"local");
script_set_attribute(attribute:"cpe", value:"cpe:/o:debian:debian_linux:14.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-14");
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-14": {
"package_manager": "dpkg-l",
"constraints": [
{
"release": "14",
"pkgs": [
{"reference": "bpftool"},
{"reference": "hyperv-daemons"},
{"reference": "intel-sdsi"},
{"reference": "libcpupower-dev"},
{"reference": "libcpupower1"},
{"reference": "linux-base-7.1.13+deb14-alpha-generic"},
{"reference": "linux-base-7.1.13+deb14-alpha-smp"},
{"reference": "linux-base-7.1.13+deb14-amd64"},
{"reference": "linux-base-7.1.13+deb14-arm64"},
{"reference": "linux-base-7.1.13+deb14-arm64-16k"},
{"reference": "linux-base-7.1.13+deb14-armmp"},
{"reference": "linux-base-7.1.13+deb14-armmp-lpae"},
{"reference": "linux-base-7.1.13+deb14-cloud-amd64"},
{"reference": "linux-base-7.1.13+deb14-cloud-arm64"},
{"reference": "linux-base-7.1.13+deb14-loong64"},
{"reference": "linux-base-7.1.13+deb14-m68k"},
{"reference": "linux-base-7.1.13+deb14-parisc"},
{"reference": "linux-base-7.1.13+deb14-parisc64"},
{"reference": "linux-base-7.1.13+deb14-powerpc"},
{"reference": "linux-base-7.1.13+deb14-powerpc-smp"},
{"reference": "linux-base-7.1.13+deb14-powerpc64"},
{"reference": "linux-base-7.1.13+deb14-powerpc64-64k"},
{"reference": "linux-base-7.1.13+deb14-powerpc64le"},
{"reference": "linux-base-7.1.13+deb14-powerpc64le-64k"},
{"reference": "linux-base-7.1.13+deb14-riscv64"},
{"reference": "linux-base-7.1.13+deb14-rt-amd64"},
{"reference": "linux-base-7.1.13+deb14-rt-arm64"},
{"reference": "linux-base-7.1.13+deb14-s390x"},
{"reference": "linux-base-7.1.13+deb14-sh7751r"},
{"reference": "linux-base-7.1.13+deb14-sparc64"},
{"reference": "linux-base-7.1.13+deb14-sparc64-smp"}
]
}
]
}
};
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
12 Sep 2026 00:00Current
CVSS 3.17.8
EPSS0.00118