KernelScan.io

HIGH Introduced in 2.6.26

ecryptfs MsgCtx Leak

CVE-2026-89605

CVSS 7.8 / 10.0 NVD

CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

KernelScan AI5.5MEDIUM

01

In the Linux kernel, the following vulnerability has been resolved: ecryptfs: release message context on send failure ecryptfs_send_message_locked() moves a message context from the free list to the allocated list before sending the request to the userspace daemon. If ecryptfs_send_miscdev() fails, the context is left on the allocated list and cannot be reused. Move it back to the free list on failure and clear the caller's pointer.

02

Engine v0.6.0

Risk summary

A local user with access to a mounted ecryptfs filesystem can trigger a permanent resource leak when the userspace key daemon is unavailable or fails. Repeated operations exhaust the fixed pool of message contexts, rendering ecryptfs unusable for all users on the system. The impact is denial of service with no data disclosure or corruption.

Affectedfs/ecryptfs/messaging.c (ecryptfs)

Vulnerability analysis

When ecryptfs sends a request to its userspace daemon, it moves a message context from the free pool to the allocated list before attempting the send. If the send fails, the context is stranded on the allocated list and never returned to the free pool, permanently reducing the available context count. Repeated failures exhaust all contexts, blocking all subsequent ecryptfs key operations and effectively denying service to every user of the filesystem. The fix moves the context back to the free list and clears the caller's reference when a send error occurs, restoring the pool to its prior state. The vulnerable path is reachable by any local user who can perform file operations on a mounted ecryptfs filesystem, provided the userspace daemon is absent or failing; mounting the filesystem itself requires administrator privileges, but the triggering operations do not.

03

BranchIntroducedFixed inPatch commit
5.102.6.265.10.270177e0c32fec3
5.152.6.265.15.221743e7aeb9575
6.12.6.266.1.188590fc6140e29
6.122.6.266.12.10947ce611cb13f
6.182.6.266.18.509319706316a8
6.62.6.266.6.15730845ed22747
7.22.6.267.2.4654b7e79443f
mainline2.6.267.3219644a3ad55
cip/5.102.6.265.10.271-cip78177e0c32fec3
cip/6.12.6.266.1.189-cip61590fc6140e29
cip/6.1-rt2.6.266.1.189-cip61-rt32590fc6140e29
cip/6.122.6.266.12.111-cip3247ce611cb13f

04

State of the newest release of each Civil Infrastructure Platform SLTS tree, from CIP's own fix records.

CIP treeState
cip/6.12Fixed in 6.12.111-cip32
cip/6.1Fixed in 6.1.189-cip61
cip/6.1-rtFixed in 6.1.189-cip61-rt32
cip/5.10Fixed in 5.10.271-cip78
cip/5.10-rtAffected — no CIP fix yet (latest 5.10.268-cip77-rt34)
cip/4.19Affected — no CIP fix yet (latest 4.19.325-cip136)
cip/4.19-rtAffected — no CIP fix yet (latest 4.19.325-cip136-rt50)
cip/4.4Affected — no CIP fix yet (latest 4.4.302-cip115)
cip/4.4-rtAffected — no CIP fix yet (latest 4.4.302-cip115-rt63)