Lucene search

K
cve416baaa9-dc9f-4396-8d5f-8c081fb06d67CVE-2024-26934
HistoryMay 01, 2024 - 6:15 a.m.

CVE-2024-26934

2024-05-0106:15:08
CWE-667
416baaa9-dc9f-4396-8d5f-8c081fb06d67
web.nvd.nist.gov
49
usb
core
linux kernel
vulnerability
deadlock
fix
attribute file
sysfs
callback
routine
usb_deauthorize_interface()
device lock
ancestor device
usb_deauthorize_interface()
locking
removal procedure
device_del()
sysfs attribute
sysfs_break_active_protection()
deadlock prevention

7.8 High

CVSS3

Attack Vector

LOCAL

Attack Complexity

LOW

Privileges Required

LOW

User Interaction

NONE

Scope

UNCHANGED

Confidentiality Impact

HIGH

Integrity Impact

HIGH

Availability Impact

HIGH

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

6.4 Medium

AI Score

Confidence

Low

0.0004 Low

EPSS

Percentile

5.2%

In the Linux kernel, the following vulnerability has been resolved:

USB: core: Fix deadlock in usb_deauthorize_interface()

Among the attribute file callback routines in
drivers/usb/core/sysfs.c, the interface_authorized_store() function is
the only one which acquires a device lock on an ancestor device: It
calls usb_deauthorize_interface(), which locks the interface’s parent
USB device.

The will lead to deadlock if another process already owns that lock
and tries to remove the interface, whether through a configuration
change or because the device has been disconnected. As part of the
removal procedure, device_del() waits for all ongoing sysfs attribute
callbacks to complete. But usb_deauthorize_interface() can’t complete
until the device lock has been released, and the lock won’t be
released until the removal has finished.

The mechanism provided by sysfs to prevent this kind of deadlock is
to use the sysfs_break_active_protection() function, which tells sysfs
not to wait for the attribute callback.

Reported-and-tested by: Yue Sun <[email protected]>
Reported by: xingwei lee <[email protected]>

Affected configurations

Vulners
NVD
Node
linuxlinux_kernelRange4.44.19.312
OR
linuxlinux_kernelRange4.20.05.4.274
OR
linuxlinux_kernelRange5.5.05.10.215
OR
linuxlinux_kernelRange5.11.05.15.154
OR
linuxlinux_kernelRange5.16.06.1.84
OR
linuxlinux_kernelRange6.2.06.6.24
OR
linuxlinux_kernelRange6.7.06.7.12
OR
linuxlinux_kernelRange6.8.06.8.3
OR
linuxlinux_kernelRange6.9.0
VendorProductVersionCPE
linuxlinux_kernel*cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
linuxlinux_kernel*cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
linuxlinux_kernel*cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
linuxlinux_kernel*cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
linuxlinux_kernel*cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
linuxlinux_kernel*cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
linuxlinux_kernel*cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
linuxlinux_kernel*cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
linuxlinux_kernel*cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*

CNA Affected

[
  {
    "product": "Linux",
    "vendor": "Linux",
    "defaultStatus": "unaffected",
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "programFiles": [
      "drivers/usb/core/sysfs.c"
    ],
    "versions": [
      {
        "version": "310d2b4124c0",
        "lessThan": "8cbdd324b415",
        "status": "affected",
        "versionType": "git"
      },
      {
        "version": "310d2b4124c0",
        "lessThan": "12d6a5681a0a",
        "status": "affected",
        "versionType": "git"
      },
      {
        "version": "310d2b4124c0",
        "lessThan": "e451709573f8",
        "status": "affected",
        "versionType": "git"
      },
      {
        "version": "310d2b4124c0",
        "lessThan": "1b175bc579f4",
        "status": "affected",
        "versionType": "git"
      },
      {
        "version": "310d2b4124c0",
        "lessThan": "ab062fa3dc69",
        "status": "affected",
        "versionType": "git"
      },
      {
        "version": "310d2b4124c0",
        "lessThan": "122a06f1068b",
        "status": "affected",
        "versionType": "git"
      },
      {
        "version": "310d2b4124c0",
        "lessThan": "dbdf66250d2d",
        "status": "affected",
        "versionType": "git"
      },
      {
        "version": "310d2b4124c0",
        "lessThan": "07acf979da33",
        "status": "affected",
        "versionType": "git"
      },
      {
        "version": "310d2b4124c0",
        "lessThan": "80ba43e9f799",
        "status": "affected",
        "versionType": "git"
      }
    ]
  },
  {
    "product": "Linux",
    "vendor": "Linux",
    "defaultStatus": "affected",
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "programFiles": [
      "drivers/usb/core/sysfs.c"
    ],
    "versions": [
      {
        "version": "4.4",
        "status": "affected"
      },
      {
        "version": "0",
        "lessThan": "4.4",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "4.19.312",
        "lessThanOrEqual": "4.19.*",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "5.4.274",
        "lessThanOrEqual": "5.4.*",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "5.10.215",
        "lessThanOrEqual": "5.10.*",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "5.15.154",
        "lessThanOrEqual": "5.15.*",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "6.1.84",
        "lessThanOrEqual": "6.1.*",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "6.6.24",
        "lessThanOrEqual": "6.6.*",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "6.7.12",
        "lessThanOrEqual": "6.7.*",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "6.8.3",
        "lessThanOrEqual": "6.8.*",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "6.9",
        "lessThanOrEqual": "*",
        "status": "unaffected",
        "versionType": "original_commit_for_fix"
      }
    ]
  }
]

7.8 High

CVSS3

Attack Vector

LOCAL

Attack Complexity

LOW

Privileges Required

LOW

User Interaction

NONE

Scope

UNCHANGED

Confidentiality Impact

HIGH

Integrity Impact

HIGH

Availability Impact

HIGH

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

6.4 Medium

AI Score

Confidence

Low

0.0004 Low

EPSS

Percentile

5.2%