SecOps SignalSecurity Intelligence Workspace
Collection Degraded31 / 46 Sources HealthyPublic Intel Only
Vulnerabilities/CVE-2026-31667Public Intelligence Dossier
Source: linux · Limited verification•Last verified: •Collection Degraded
CVE-2026-31667Unknown / EvaluatingHIGH (raw)CVSS 7.8CWE-667

In the Linux kernel, the following vulnerability has been resolved: Input: uinput - fix circular locking dependency with ff-core A lockdep circular locking dependency warning can be triggered reproducibly when using a force-feedback gamepad with uinput (for example, playing ELDEN RING under Wine with a Flydigi Vader 5 controller): ff->mutex -> udev->mutex -> input_mutex -> dev->mutex -> ff->mutex The cycle is caused by four lock acquisition paths: 1

Published: 24 Apr 2026•Last updated: 16 Oct 2026, 09:47 PM IST•Source identifier: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Dossier completeness: source-provided sections 2 / 3 · rule guidance available. Missing source facts count as incomplete.
Official source
CISA KEV catalog
Unknown
KEV status was not determined.
CVSS score
7.8HIGH (raw)
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Metric source416baaa9-dc9f-4396-8d5f-8c081fb06d67
EPSS probability
0.1%0.001
Percentile3rd
Weakness type
CWE-667
No further CWE recorded
Remediation
Patch status unknown
No fixed version or KB recorded

Why It Matters

Analysis dossier

Why It Matters

In the Linux kernel, the following vulnerability has been resolved: Input: uinput - fix circular locking dependency with ff-core A lockdep circular locking dependency warning can be triggered reproducibly when using a force-feedback gamepad with uinput (for example, playing ELDEN RING under Wine with a Flydigi Vader 5 controller): ff->mutex -> udev->mutex -> input_mutex -> dev->mutex -> ff->mutex The cycle is caused by four lock acquisition paths: 1. ff upload: input_ff_upload() holds ff->mutex and calls uinput_dev_upload_effect() -> uinput_request_submit() -> uinput_request_send(), which acquires udev->mutex. 2. device create: uinput_ioctl_handler() holds udev->mutex and calls uinput_create_device() -> input_register_device(), which acquires input_mutex. 3. device register: input_register_device() holds input_mutex and calls kbd_connect() -> input_register_handle(), which acquires dev->mutex. 4. evdev release: evdev_release() calls input_flush_device() under dev->mutex, which calls input_ff_flush() acquiring ff->mutex. Fix this by introducing a new state_lock spinlock to protect udev->state and udev->dev access in uinput_request_send() instead of acquiring udev->mutex. The function only needs to atomically check device state and queue an input event into the ring buffer via uinput_dev_event() -- both operations are safe under a spinlock (ktime_get_ts64() and wake_up_interruptible() do not sleep). This breaks the ff->mutex -> udev->mutex link since a spinlock is a leaf in the lock ordering and cannot form cycles with mutexes. To keep state transitions visible to uinput_request_send(), protect writes to udev->state in uinput_create_device() and uinput_destroy_device() with the same state_lock spinlock. Additionally, move init_completion(&request->done) from uinput_request_send() to uinput_request_submit() before uinput_request_reserve_slot(). Once the slot is allocated, uinput_flush_requests() may call complete() on it at any time from the destroy path, so the completion must be initialised before the request becomes visible. Lock ordering after the fix: ff->mutex -> state_lock (spinlock, leaf) udev->mutex -> state_lock (spinlock, leaf) udev->mutex -> input_mutex -> dev->mutex -> ff->mutex (no back-edge)

SOC priority

High

Actively exploited

Unknown

Publicly disclosed

Unknown

Risk basis: Microsoft or Microsoft-managed product relevance; HIGH severity; No confirmed exploitation signal in current enrichment

Affected Products & Remediation

1 source-backed product
Affected products and versions (source)
  • linux linux kernel · >= 2.6.19.1 < 5.10.253; >= 5.11 < 5.15.203; >= 5.16 < 6.1.169; >= 6.2 < 6.6.135; >= 6.7 < 6.12.82; >= 6.13 < 6.18.23; >= 6.19 < 6.19.13; 2.6.19; 7.0 · NVD CPE · Source
Recorded patch / KBNot provided by source

Vendor or catalog guidance (source)

Not provided by source

Known exploitation (source facts)

Only what a source states. Unknown means no source has said either way; it is not "not exploited".

CISA KEV
Unknown
Exploited (source statement)
Unknown
Publicly disclosed (source)
Unknown

Suggested hunting (rule-based inference)

SecOps Signal recommendation (rule-based inference). These steps are hunting hypotheses from the vulnerability class; they do not state or imply that exploitation occurred here or anywhere.

Matched local-privilege-escalation (CVSS AV:L, CVSS PR:L)

Exposure

  1. Identify hosts reporting this CVE, prioritising shared or multi-user systems.Telemetry: DeviceTvmSoftwareVulnerabilities · A local, low-privilege vector matters most where untrusted users can run code. · Rule local-privilege-escalation

Exploitation evidence

  1. Look for low-privileged processes spawning SYSTEM or root-level child processes on affected hosts.Telemetry: DeviceProcessEvents · Hunting hypothesis from the CVSS vector; privilege transitions are a focused starting point, not evidence of attack. · Rule local-privilege-escalation

Response

  1. Confirm the source-stated update on affected hosts.Telemetry: DeviceTvmSoftwareVulnerabilities · Host inventory can verify remediation. · Rule local-privilege-escalation

CISA KEV Record

CISA KEV status was not determined for this record.

Change History & Source Data

— No recorded material change

CNA / source
416baaa9-dc9f-4396-8d5f-8c081fb06d67
Record status · verification
UPDATED · NVD API
CPE
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*, cpe:2.3:o:linux:linux_kernel:2.6.19:-:*:*:*:*:*:*, cpe:2.3:o:linux:linux_kernel:7.0:rc1:*:*:*:*:*:*, cpe:2.3:o:linux:linux_kernel:7.0:rc2:*:*:*:*:*:*, cpe:2.3:o:linux:linux_kernel:7.0:rc3:*:*:*:*:*:*, cpe:2.3:o:linux:linux_kernel:7.0:rc4:*:*:*:*:*:*, cpe:2.3:o:linux:linux_kernel:7.0:rc5:*:*:*:*:*:*, cpe:2.3:o:linux:linux_kernel:7.0:rc6:*:*:*:*:*:*, cpe:2.3:o:linux:linux_kernel:7.0:rc7:*:*:*:*:*:*

Linked by the query's stored exact CVE association. Review required tables and validation status before use.

Detection Hunting Query
Target: DeviceTvmSoftwareVulnerabilities•Defender XDR
Detect endpoints exposed to CVE-2026-31667
Purpose: Exposure assessment (Category: Exposure Check)Why linked: Query metadata names CVE-2026-31667
DeviceTvmSoftwareVulnerabilities| where CveId == "CVE-2026-31667"| project DeviceId, DeviceName, OSPlatform, OSVersion, SoftwareVendor, SoftwareName, SoftwareVersion, CveId, VulnerabilitySeverityLevel, RecommendedSecurityUpdate, RecommendedSecurityUpdateId| sort by VulnerabilitySeverityLevel desc
Schema Checked · Not runtime validatedSource: SecOps Signal deterministic template · Limited verificationStatic screening: Passed structure and schema checks; tenant execution is not verified.

Correlated briefings

— No published briefing references this CVE

SecOps Signal surfaces public advisory facts only. A missing value means the source has not published it, not that your environment is unaffected. No tenant inventory is connected.