Linux Distros Unpatched Vulnerability : CVE-2026-89689
| Reporter | Title | Published | Views | Family All 9 |
|---|---|---|---|---|
| CVE-2026-89689 | 13 Sep 202612:00 | – | circl | |
| CVE-2026-89689 | 11 Sep 202619:46 | – | cve | |
| CVE-2026-89689 nfsd: don't free session slots that are still in use | 11 Sep 202619:46 | – | cvelist | |
| CVE-2026-89689 | 11 Sep 202619:46 | – | debiancve | |
| EUVD-2026-76601 | 11 Sep 202619:46 | – | euvd | |
| CVE-2026-89689 | 11 Sep 202620:19 | – | nvd | |
| DEBIAN-CVE-2026-89689 | 11 Sep 202620:19 | – | osv | |
| PT-2026-90405 | 11 Sep 202600:00 | – | ptsecurity | |
| CVE-2026-89689 | 11 Sep 202623:51 | – | redhatcve |
| Source | Link |
|---|---|
| security-tracker | www.security-tracker.debian.org/tracker/CVE-2026-89689 |
| cve | www.cve.mitre.org/cgi-bin/cvename.cgi |
#%NASL_MIN_LEVEL 80900
##
# (C) Tenable, Inc.
##
include('compat.inc');
if (description)
{
script_id(345028);
script_version("1.1");
script_set_attribute(attribute:"plugin_modification_date", value:"2026/09/12");
script_cve_id("CVE-2026-89689");
script_name(english:"Linux Distros Unpatched Vulnerability : CVE-2026-89689");
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.
- nfsd: don't free session slots that are still in use nfsd4_sequence() can free the very slot it is
currently processing. When the session shrinker has reduced se_target_maxslots below se_fchannel.maxreqs,
the shrink path checks three conditions before calling free_session_slots(): 1. se_target_maxslots <
maxreqs (shrink was advertised) 2. slot->sl_generation == se_slot_gen (slot is up-to-date) 3.
seq->maxslots <= se_target_maxslots (client acknowledges) However, seq->slotid is never checked against
se_target_maxslots. A client using a slot in the range [se_target_maxslots, maxreqs) can satisfy all three
conditions: its slot has the current generation (set by a prior SEQUENCE), and it sends sa_highest_slotid
<= se_target_maxslots to acknowledge the reduction. free_session_slots() then kfrees every slot at index
>= se_target_maxslots, including the caller's own slot. The function continues to write sl_seqid,
sl_flags, sl_generation, and stores the dangling pointer in cstate->slot. Later, nfsd4_store_cache_entry()
copies up to maxresp_cached bytes of the compound reply into the freed sl_data[] array, corrupting
whatever slab object now occupies that address. Additionally, a concurrent thread processing SEQUENCE on a
different high-numbered slot can have its slot freed out from under it. NFSD4_SLOT_INUSE is set under
nn->client_lock before the lock is released, so any concurrent thread past SEQUENCE will have its slot
marked. However, free_session_slots() does not check NFSD4_SLOT_INUSE before freeing. Fix both problems
by: 1. Checking that the current request's slotid is below the shrink boundary. 2. Scanning slots in the
to-be-freed range for NFSD4_SLOT_INUSE and deferring the shrink if any are active. (CVE-2026-89689)
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-89689");
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:L/Au:N/C:N/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: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-89689");
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.19.8
EPSS0.00605