CVE-2015-8785
Medium · 6.2CVSS
6.2
EPSS
0.6%
Published
Feb 8, 2016
CISA due date
—
Cloudanix analysis
A local user on certain older Linux systems can make the computer freeze by running a specially crafted program that talks to certain types of file storage.
- Exploitation
- Local Privilege
- Attacker needs
- Local User
- Complexity
- Low
- Impact
- Denial Of Service
- Component
- OS kernel
- Class
- Improper Input Validation
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Medium
What it actually does
The fuse_fill_write_pages function in fs/fuse/file.c allows a local user to trigger an infinite loop by issuing a writev system call whose first iov segment has zero length, resulting in denial of service.
Why it matters to the business
A local process can render affected systems unresponsive, interrupting workloads and requiring manual intervention or reboot to restore service; older systems that remain unpatched continue to carry this availability risk years after disclosure.
How an attack unfolds
An attacker with local access on a system using FUSE mounts crafts a writev call that supplies a zero-length first segment, causing the kernel loop in fuse_fill_write_pages to execute indefinitely and consume CPU resources until the system is rebooted.
How to fix it
Upgrade the Linux kernel to version 4.4 or later on all affected distributions; apply vendor-supplied packages that contain the corrected fuse_fill_write_pages logic; where immediate patching is not feasible, restrict untrusted local accounts and limit FUSE usage to trusted workloads.
How to confirm the fix worked
Confirm the running kernel is 4.4 or newer with uname -r; review package manager history for the applied security update; attempt to reproduce the zero-length iov writev condition in a controlled test environment and verify the loop no longer occurs.
Typical attack path
- Obtain local shell or process execution on target host
- Locate or create a FUSE-mounted filesystem
- Invoke writev system call with first iov segment length set to zero
- Observe kernel thread enter infinite loop and system resources become exhausted
How to detect it
Review system and audit logs for repeated writev calls from untrusted processes; monitor for sustained high CPU usage in kernel threads associated with FUSE without corresponding user activity; examine crash dumps or hung-task reports that reference fuse_fill_write_pages.
What your security team should do
- Prioritize kernel upgrades on all internet-facing or multi-tenant systems within the next maintenance window
- Add kernel version checks to existing vulnerability scanning and asset inventory processes
- Restrict FUSE filesystem mounts to administrative users until patches are deployed
The record
The fuse_fill_write_pages function in fs/fuse/file.c in the Linux kernel before 4.4 allows local users to cause a denial of service (infinite loop) via a writev system call that triggers a zero length for the first segment of an iov.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Debian:11 | linux | 0 | 4.3.5-1 |
| Debian:12 | linux | 0 | 4.3.5-1 |
| Debian:13 | linux | 0 | 4.3.5-1 |
| Debian:6.0 | linux-2.6 | 0 | 2.6.32-48squeeze19 |
| Debian:7 | linux | 0 | 3.2.73-2+deb7u3 |
| Debian:8 | linux | 0 | 3.16.7-ckt20-1+deb8u4 |
| SUSE:Linux Enterprise Desktop 11 SP4 | kernel-default | 0 | 3.0.101-71.1 |
| SUSE:Linux Enterprise Desktop 11 SP4 | kernel-pae | 0 | 3.0.101-71.1 |
| SUSE:Linux Enterprise Desktop 11 SP4 | kernel-source | 0 | 3.0.101-71.1 |
| SUSE:Linux Enterprise Desktop 11 SP4 | kernel-syms | 0 | 3.0.101-71.1 |
| SUSE:Linux Enterprise Desktop 11 SP4 | kernel-trace | 0 | 3.0.101-71.1 |
| SUSE:Linux Enterprise Desktop 11 SP4 | kernel-xen | 0 | 3.0.101-71.1 |
| SUSE:Linux Enterprise Desktop 12 | kernel-default | 0 | 3.12.55-52.42.1 |
| SUSE:Linux Enterprise Desktop 12 | kernel-source | 0 | 3.12.55-52.42.1 |
| SUSE:Linux Enterprise Desktop 12 | kernel-syms | 0 | 3.12.55-52.42.1 |
| SUSE:Linux Enterprise Desktop 12 | kernel-xen | 0 | 3.12.55-52.42.1 |
| SUSE:Linux Enterprise Desktop 12 SP1 | kernel-default | 0 | 3.12.53-60.30.1 |
| SUSE:Linux Enterprise Desktop 12 SP1 | kernel-source | 0 | 3.12.53-60.30.1 |
| SUSE:Linux Enterprise Desktop 12 SP1 | kernel-syms | 0 | 3.12.53-60.30.1 |
| SUSE:Linux Enterprise Desktop 12 SP1 | kernel-xen | 0 | 3.12.53-60.30.1 |
| SUSE:Linux Enterprise Live Patching 12 | kgraft-patch-SLE12-SP1_Update_3 | 0 | 1-2.1 |
| SUSE:Linux Enterprise Live Patching 12 | kgraft-patch-SLE12_Update_12 | 0 | 1-2.1 |
| SUSE:Linux Enterprise Module for Public Cloud 12 | kernel-ec2 | 0 | 3.12.53-60.30.1 |
| SUSE:Linux Enterprise Module for Public Cloud 12 | kernel-ec2 | 0 | 3.12.55-52.42.1 |
| SUSE:Linux Enterprise Real Time 11 SP4 | kernel-rt | 0 | 3.0.101.rt130-51.1 |
| SUSE:Linux Enterprise Real Time 11 SP4 | kernel-rt_trace | 0 | 3.0.101.rt130-51.1 |
| SUSE:Linux Enterprise Real Time 11 SP4 | kernel-source-rt | 0 | 3.0.101.rt130-51.1 |
| SUSE:Linux Enterprise Real Time 11 SP4 | kernel-syms-rt | 0 | 3.0.101.rt130-51.1 |
| SUSE:Linux Enterprise Real Time 12 SP1 | kernel-compute | 0 | 3.12.58-14.1 |
| SUSE:Linux Enterprise Real Time 12 SP1 | kernel-compute_debug | 0 | 3.12.58-14.1 |
| SUSE:Linux Enterprise Real Time 12 SP1 | kernel-rt | 0 | 3.12.58-14.1 |
| SUSE:Linux Enterprise Real Time 12 SP1 | kernel-rt_debug | 0 | 3.12.58-14.1 |
| SUSE:Linux Enterprise Real Time 12 SP1 | kernel-source-rt | 0 | 3.12.58-14.1 |
| SUSE:Linux Enterprise Real Time 12 SP1 | kernel-syms-rt | 0 | 3.12.58-14.1 |
| SUSE:Linux Enterprise Server 11 SP2-LTSS | kernel-default | 0 | 3.0.101-0.7.40.1 |
| SUSE:Linux Enterprise Server 11 SP2-LTSS | kernel-ec2 | 0 | 3.0.101-0.7.40.1 |
| SUSE:Linux Enterprise Server 11 SP2-LTSS | kernel-pae | 0 | 3.0.101-0.7.40.1 |
| SUSE:Linux Enterprise Server 11 SP2-LTSS | kernel-source | 0 | 3.0.101-0.7.40.1 |
| SUSE:Linux Enterprise Server 11 SP2-LTSS | kernel-syms | 0 | 3.0.101-0.7.40.1 |
| SUSE:Linux Enterprise Server 11 SP2-LTSS | kernel-trace | 0 | 3.0.101-0.7.40.1 |
| SUSE:Linux Enterprise Server 11 SP2-LTSS | kernel-xen | 0 | 3.0.101-0.7.40.1 |
| SUSE:Linux Enterprise Server 11 SP3-LTSS | kernel-bigsmp | 0 | 3.0.101-0.47.79.1 |
| SUSE:Linux Enterprise Server 11 SP3-LTSS | kernel-default | 0 | 3.0.101-0.47.79.1 |
| SUSE:Linux Enterprise Server 11 SP3-LTSS | kernel-ec2 | 0 | 3.0.101-0.47.79.1 |
| SUSE:Linux Enterprise Server 11 SP3-LTSS | kernel-pae | 0 | 3.0.101-0.47.79.1 |
| SUSE:Linux Enterprise Server 11 SP3-LTSS | kernel-source | 0 | 3.0.101-0.47.79.1 |
| SUSE:Linux Enterprise Server 11 SP3-LTSS | kernel-syms | 0 | 3.0.101-0.47.79.1 |
| SUSE:Linux Enterprise Server 11 SP3-LTSS | kernel-trace | 0 | 3.0.101-0.47.79.1 |
| SUSE:Linux Enterprise Server 11 SP3-LTSS | kernel-xen | 0 | 3.0.101-0.47.79.1 |
| SUSE:Linux Enterprise Server 11 SP4 | kernel-default | 0 | 3.0.101-71.1 |
| SUSE:Linux Enterprise Server 11 SP4 | kernel-ec2 | 0 | 3.0.101-71.1 |
| SUSE:Linux Enterprise Server 11 SP4 | kernel-pae | 0 | 3.0.101-71.1 |
| SUSE:Linux Enterprise Server 11 SP4 | kernel-ppc64 | 0 | 3.0.101-71.1 |
| SUSE:Linux Enterprise Server 11 SP4 | kernel-source | 0 | 3.0.101-71.1 |
| SUSE:Linux Enterprise Server 11 SP4 | kernel-syms | 0 | 3.0.101-71.1 |
| SUSE:Linux Enterprise Server 11 SP4 | kernel-trace | 0 | 3.0.101-71.1 |
| SUSE:Linux Enterprise Server 11 SP4 | kernel-xen | 0 | 3.0.101-71.1 |
| SUSE:Linux Enterprise Server 12 | kernel-default | 0 | 3.12.55-52.42.1 |
| SUSE:Linux Enterprise Server 12 | kernel-source | 0 | 3.12.55-52.42.1 |
| SUSE:Linux Enterprise Server 12 | kernel-syms | 0 | 3.12.55-52.42.1 |
| SUSE:Linux Enterprise Server 12 | kernel-xen | 0 | 3.12.55-52.42.1 |
| SUSE:Linux Enterprise Server 12 SP1 | kernel-default | 0 | 3.12.53-60.30.1 |
| SUSE:Linux Enterprise Server 12 SP1 | kernel-source | 0 | 3.12.53-60.30.1 |
| SUSE:Linux Enterprise Server 12 SP1 | kernel-syms | 0 | 3.12.53-60.30.1 |
| SUSE:Linux Enterprise Server 12 SP1 | kernel-xen | 0 | 3.12.53-60.30.1 |
| SUSE:Linux Enterprise Server 12 SP1 | lttng-modules | 0 | 2.7.0-3.1 |
| SUSE:Linux Enterprise Server for SAP Applications 11 SP4 | kernel-default | 0 | 3.0.101-71.1 |
| SUSE:Linux Enterprise Server for SAP Applications 11 SP4 | kernel-ec2 | 0 | 3.0.101-71.1 |
| SUSE:Linux Enterprise Server for SAP Applications 11 SP4 | kernel-pae | 0 | 3.0.101-71.1 |
| SUSE:Linux Enterprise Server for SAP Applications 11 SP4 | kernel-ppc64 | 0 | 3.0.101-71.1 |
| SUSE:Linux Enterprise Server for SAP Applications 11 SP4 | kernel-source | 0 | 3.0.101-71.1 |
| SUSE:Linux Enterprise Server for SAP Applications 11 SP4 | kernel-syms | 0 | 3.0.101-71.1 |
| SUSE:Linux Enterprise Server for SAP Applications 11 SP4 | kernel-trace | 0 | 3.0.101-71.1 |
| SUSE:Linux Enterprise Server for SAP Applications 11 SP4 | kernel-xen | 0 | 3.0.101-71.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 | kernel-default | 0 | 3.12.55-52.42.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 | kernel-source | 0 | 3.12.55-52.42.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 | kernel-syms | 0 | 3.12.55-52.42.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 | kernel-xen | 0 | 3.12.55-52.42.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP1 | kernel-default | 0 | 3.12.53-60.30.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP1 | kernel-source | 0 | 3.12.53-60.30.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP1 | kernel-syms | 0 | 3.12.53-60.30.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP1 | kernel-xen | 0 | 3.12.53-60.30.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP1 | lttng-modules | 0 | 2.7.0-3.1 |
| SUSE:Linux Enterprise Software Development Kit 11 SP4 | kernel-docs | 0 | 3.0.101-71.2 |
| SUSE:Linux Enterprise Software Development Kit 12 | kernel-docs | 0 | 3.12.55-52.42.2 |
| SUSE:Linux Enterprise Software Development Kit 12 | kernel-obs-build | 0 | 3.12.55-52.42.2 |
| SUSE:Linux Enterprise Software Development Kit 12 SP1 | kernel-docs | 0 | 3.12.53-60.30.2 |
| SUSE:Linux Enterprise Software Development Kit 12 SP1 | kernel-obs-build | 0 | 3.12.53-60.30.2 |
| SUSE:Linux Enterprise Workstation Extension 12 | kernel-default | 0 | 3.12.55-52.42.1 |
| SUSE:Linux Enterprise Workstation Extension 12 SP1 | kernel-default | 0 | 3.12.53-60.30.1 |
| SUSE:Manager 2.1 | kernel-bigsmp | 0 | 3.0.101-0.47.79.1 |
| SUSE:Manager 2.1 | kernel-default | 0 | 3.0.101-0.47.79.1 |
| SUSE:Manager 2.1 | kernel-ec2 | 0 | 3.0.101-0.47.79.1 |
| SUSE:Manager 2.1 | kernel-source | 0 | 3.0.101-0.47.79.1 |
| SUSE:Manager 2.1 | kernel-syms | 0 | 3.0.101-0.47.79.1 |
| SUSE:Manager 2.1 | kernel-trace | 0 | 3.0.101-0.47.79.1 |
| SUSE:Manager 2.1 | kernel-xen | 0 | 3.0.101-0.47.79.1 |
| SUSE:Manager Proxy 2.1 | kernel-bigsmp | 0 | 3.0.101-0.47.79.1 |
| SUSE:Manager Proxy 2.1 | kernel-default | 0 | 3.0.101-0.47.79.1 |
| SUSE:Manager Proxy 2.1 | kernel-ec2 | 0 | 3.0.101-0.47.79.1 |
| SUSE:Manager Proxy 2.1 | kernel-source | 0 | 3.0.101-0.47.79.1 |
| SUSE:Manager Proxy 2.1 | kernel-syms | 0 | 3.0.101-0.47.79.1 |
| SUSE:Manager Proxy 2.1 | kernel-trace | 0 | 3.0.101-0.47.79.1 |
| SUSE:Manager Proxy 2.1 | kernel-xen | 0 | 3.0.101-0.47.79.1 |
| SUSE:OpenStack Cloud 5 | kernel-bigsmp | 0 | 3.0.101-0.47.79.1 |
| SUSE:OpenStack Cloud 5 | kernel-default | 0 | 3.0.101-0.47.79.1 |
| SUSE:OpenStack Cloud 5 | kernel-ec2 | 0 | 3.0.101-0.47.79.1 |
| SUSE:OpenStack Cloud 5 | kernel-source | 0 | 3.0.101-0.47.79.1 |
| SUSE:OpenStack Cloud 5 | kernel-syms | 0 | 3.0.101-0.47.79.1 |
| SUSE:OpenStack Cloud 5 | kernel-trace | 0 | 3.0.101-0.47.79.1 |
| SUSE:OpenStack Cloud 5 | kernel-xen | 0 | 3.0.101-0.47.79.1 |
| Ubuntu:14.04:LTS | linux | 0 | 3.13.0-79.123 |
| Ubuntu:14.04:LTS | linux-aws | 0 | 4.4.0-1002.2 |
| Ubuntu:14.04:LTS | linux-lts-utopic | 0 | 3.16.0-62.82~14.04.1 |
| Ubuntu:14.04:LTS | linux-lts-vivid | 0 | 3.19.0-51.57~14.04.1 |
| Ubuntu:14.04:LTS | linux-lts-wily | 0 | 4.2.0-30.35~14.04.1 |
| Ubuntu:14.04:LTS | linux-lts-xenial | 0 | 4.4.0-13.29~14.04.1 |
| Ubuntu:16.04:LTS | linux | 0 | 4.4.0-2.16 |
| Ubuntu:16.04:LTS | linux-aws | 0 | 4.4.0-1001.10 |
| Ubuntu:16.04:LTS | linux-gke | 0 | 4.4.0-1003.3 |
| Ubuntu:16.04:LTS | linux-hwe | 0 | 4.8.0-36.36~16.04.1 |
| Ubuntu:16.04:LTS | linux-raspi2 | 0 | 4.4.0-1003.4 |
| Ubuntu:16.04:LTS | linux-snapdragon | 0 | 4.4.0-1012.12 |
| Ubuntu:Pro:16.04:LTS | linux-flo | 0 | No fix |
| Ubuntu:Pro:16.04:LTS | linux-goldfish | 0 | No fix |
| Ubuntu:Pro:16.04:LTS | linux-mako | 0 | No fix |
Related vulnerabilities
- CVE-2025-39885 In the Linux kernel, the following vulnerability has been resolved: ocfs2: fix recursive… Also affects linux
- CVE-2025-39883 In the Linux kernel, the following vulnerability has been resolved: mm/memory-failure… Also affects linux
- CVE-2025-39876 In the Linux kernel, the following vulnerability has been resolved: net: fec: Fix… Also affects linux
- CVE-2025-39869 In the Linux kernel, the following vulnerability has been resolved: dmaengine: ti: edma… Also affects linux
- CVE-2025-39873 In the Linux kernel, the following vulnerability has been resolved: can: xilinx_can… Also affects linux
- CVE-2025-39863 In the Linux kernel, the following vulnerability has been resolved: wifi: brcmfmac: fix… Also affects linux
- CVE-2025-39865 In the Linux kernel, the following vulnerability has been resolved: tee: fix NULL pointer… Also affects linux
- CVE-2025-39866 In the Linux kernel, the following vulnerability has been resolved: fs: writeback: fix… Also affects linux