Linux Distros Unpatched Vulnerability : CVE-2026-89678
| Reporter | Title | Published | Views | Family All 8 |
|---|---|---|---|---|
| CVE-2026-89678 | 11 Sep 202619:46 | – | cve | |
| CVE-2026-89678 nfsd: fix partial-write detection in nfsd_direct_write | 11 Sep 202619:46 | – | cvelist | |
| CVE-2026-89678 | 11 Sep 202619:46 | – | debiancve | |
| EUVD-2026-76590 | 11 Sep 202619:46 | – | euvd | |
| CVE-2026-89678 | 11 Sep 202620:19 | – | nvd | |
| DEBIAN-CVE-2026-89678 | 11 Sep 202620:19 | – | osv | |
| PT-2026-90394 | 11 Sep 202600:00 | – | ptsecurity | |
| CVE-2026-89678 | 11 Sep 202621:45 | – | redhatcve |
| Source | Link |
|---|---|
| security-tracker | www.security-tracker.debian.org/tracker/CVE-2026-89678 |
| cve | www.cve.mitre.org/cgi-bin/cvename.cgi |
#%NASL_MIN_LEVEL 80900
##
# (C) Tenable, Inc.
##
include('compat.inc');
if (description)
{
script_id(345140);
script_version("1.1");
script_set_attribute(attribute:"plugin_modification_date", value:"2026/09/12");
script_cve_id("CVE-2026-89678");
script_name(english:"Linux Distros Unpatched Vulnerability : CVE-2026-89678");
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: fix partial-write detection in nfsd_direct_write nfsd_direct_write() walks a list of write segments
and, after each vfs_iocb_iter_write(), tries to detect a short write so the loop can stop before placing
the next segment at a wrong file offset: host_err = vfs_iocb_iter_write(file, kiocb, &segments[i].iter);
if (host_err < 0) return host_err; *cnt += host_err; if (host_err < segments[i].iter.count) break; /*
partial write */ vfs_iocb_iter_write() runs the iter through ->write_iter(), which advances the iter by
the number of bytes written. By the time the check runs, segments[i].iter.count is the residual, not the
original request length: before write_iter: iter.count == original_len after write_iter: iter.count ==
original_len - host_err The condition then reduces to host_err < original_len - host_err, so the break
fires only when less than half of the segment was written. Any short write completing between 50% and 99%
of the segment slips through; the loop advances to the next segment with kiocb->ki_pos only bumped by the
short amount, writing the next segment's payload at the wrong offset and over-reporting *cnt to the NFS
client. Snapshot the segment's byte count before the write and compare host_err against that snapshot so
any short write breaks the loop. (CVE-2026-89678)
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-89678");
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:C");
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-89678");
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.5
EPSS0.00354