Cloudanix VulnDB

CVE-2025-68371

None

CVSS

—

EPSS

0.2%

Published

Dec 24, 2025

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A timing problem in Linux storage handling could let attackers crash servers or potentially run code with higher privileges by interfering with how devices are disconnected.

Exploitation
Local Privilege
Attacker needs
Low Privilege
Complexity
Moderate
Impact
Privilege Gain
Component
OS kernel
Class
Use After Free
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

Use-after-free in the smartpqi SCSI driver caused by a race between the abort handler scheduling a LUN reset work item and concurrent device removal via sdev_destroy(), allowing the reset handler to access freed device resources after the device is removed from the controller's list.

Why it matters to the business

Kernel instability or crashes on systems using smartpqi storage controllers can lead to unplanned downtime for storage-dependent workloads, with potential for local privilege escalation if the flaw is triggered in a way that corrupts kernel memory.

How an attack unfolds

An attacker with local access triggers concurrent SCSI device removal and abort operations; the abort handler schedules a pending LUN reset that executes after sdev_destroy() has freed the device, resulting in access to invalid memory.

How to fix it

Update the Linux kernel to a version containing commit 7dfa5a5516ec3c6b9b6c22ee18f0eb2df3f38ef2 or later; for Chainguard packages update chainctl and docker-credential-cgr to 0.2.59-r0 or newer. Ensure the device presence check, pending TMF work cancellation, and mutex-protected freeing are present in the smartpqi driver.

How to confirm the fix worked

Verify the applied kernel commit or package version matches the fixed revisions; inspect the smartpqi reset handler for the device list presence check and sdev_destroy() for mutex-protected freeing and work cancellation.

Typical attack path

  1. Obtain local access on a system using the smartpqi driver
  2. Trigger SCSI device removal via sdev_destroy() while an abort handler is active
  3. Schedule a LUN reset work item concurrently with removal
  4. Allow the reset handler to execute after device resources are freed
  5. Exploit resulting use-after-free for denial of service or code execution

How to detect it

Review kernel logs and dmesg for smartpqi driver warnings or oops messages referencing LUN resets or device removal races; correlate with SCSI subsystem events showing concurrent aborts and removals.

What your security team should do

  • Prioritize kernel updates on all systems using smartpqi controllers within the next patching cycle
  • Monitor vendor advisories for backported fixes in distribution kernels
  • Test updated kernels in staging environments before broad deployment
  • Review storage subsystem logs for unexpected device removal events during the transition

The record

In the Linux kernel, the following vulnerability has been resolved: scsi: smartpqi: Fix device resources accessed after device removal Correct possible race conditions during device removal. Previously, a scheduled work item to reset a LUN could still execute after the device was removed, leading to use-after-free and other resource access issues. This race condition occurs because the abort handler may schedule a LUN reset concurrently with device removal via sdev_destroy(), leading to use-after-free and improper access to freed resources. - Check in the device reset handler if the device is still present in the controller's SCSI device list before running; if not, the reset is skipped. - Cancel any pending TMF work that has not started in sdev_destroy(). - Ensure device freeing in sdev_destroy() is done while holding the LUN reset mutex to avoid races with ongoing resets.

Affected packages

Ecosystem Package Introduced Fixed
Linux Kernel 6.0.0 6.1.160
Linux Kernel 6.0.0 6.12.63
openSUSE:Leap 16.0 dtb-aarch64 0 6.12.0-160000.27.1
openSUSE:Leap 16.0 kernel-64kb 0 6.12.0-160000.27.1
openSUSE:Leap 16.0 kernel-azure 0 6.12.0-160000.27.1
openSUSE:Leap 16.0 kernel-default 0 6.12.0-160000.27.1
openSUSE:Leap 16.0 kernel-default-base 0 6.12.0-160000.27.1.160000.2.8
openSUSE:Leap 16.0 kernel-docs 0 6.12.0-160000.27.1
openSUSE:Leap 16.0 kernel-kvmsmall 0 6.12.0-160000.27.1
openSUSE:Leap 16.0 kernel-obs-build 0 6.12.0-160000.27.1
openSUSE:Leap 16.0 kernel-obs-qa 0 6.12.0-160000.27.1
openSUSE:Leap 16.0 kernel-rt 0 6.12.0-160000.27.1
openSUSE:Leap 16.0 kernel-source 0 6.12.0-160000.27.1
openSUSE:Leap 16.0 kernel-syms 0 6.12.0-160000.27.1
openSUSE:Leap 16.0 kernel-zfcpdump 0 6.12.0-160000.27.1
openSUSE:Tumbleweed kernel-source 0 6.18.5-1.1
openSUSE:Tumbleweed kernel-source-longterm 0 6.18.16-1.1

Related vulnerabilities