← Back to CVE Explorer

CVE-2026-93124

Full vulnerability record from the local CVENow database.

Description

In the Linux kernel, the following vulnerability has been resolved: platform/x86: asus-wireless: Fail probe when there is no ACPI match Every platform driver can be forced to match a device that does not match its list of device IDs because of device_match_driver_override(), so platform drivers that rely on the existence of a device ACPI companion object need to verify its presence. asus_wireless_probe() returns success when acpi_match_acpi_device() finds no match, leaving behind an input device that never reports anything because the notify handler is not installed. Worse, when the driver is force-bound to a device without an ACPI companion, probe still succeeds and stores a NULL companion pointer, which asus_wireless_remove() later passes to acpi_dev_remove_notify_handler(), leading to a NULL pointer dereference on unbind. Return -ENODEV when the device does not match the ID table. This also covers the missing-companion case, because acpi_match_acpi_device() rejects a NULL device. Perform the check before allocating any driver state, instead of after the input device has already been registered.

Severity
Not scored
CVSS score
Not available
Vulnerability status
Received
Source identifier
416baaa9-dc9f-4396-8d5f-8c081fb06d67
Published
2026-09-17 17:18:07.137000
Last modified
2026-10-19 10:17:02.433000
View original CVE JSON
{
  "id": "CVE-2026-93124",
  "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
  "published": "2026-09-17T17:18:07.137",
  "lastModified": "2026-10-19T10:17:02.433",
  "vulnStatus": "Received",
  "cveTags": [],
  "descriptions": [
    {
      "lang": "en",
      "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nplatform/x86: asus-wireless: Fail probe when there is no ACPI match\n\nEvery platform driver can be forced to match a device that does not match\nits list of device IDs because of device_match_driver_override(), so\nplatform drivers that rely on the existence of a device ACPI companion\nobject need to verify its presence.\n\nasus_wireless_probe() returns success when acpi_match_acpi_device()\nfinds no match, leaving behind an input device that never reports\nanything because the notify handler is not installed.  Worse, when the\ndriver is force-bound to a device without an ACPI companion, probe\nstill succeeds and stores a NULL companion pointer, which\nasus_wireless_remove() later passes to acpi_dev_remove_notify_handler(),\nleading to a NULL pointer dereference on unbind.\n\nReturn -ENODEV when the device does not match the ID table.  This also\ncovers the missing-companion case, because acpi_match_acpi_device()\nrejects a NULL device.  Perform the check before allocating any driver\nstate, instead of after the input device has already been registered."
    }
  ],
  "affected": [
    {
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "affectedData": [
        {
          "vendor": "Linux",
          "product": "Linux",
          "defaultStatus": "unaffected",
          "programFiles": [
            "drivers/platform/x86/asus-wireless.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "versions": [
            {
              "version": "f7e648027d7e1b5c06eb86d944b7e23926254cee",
              "lessThan": "7bfa711f311a584002e16ecd750627306deb805c",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "f7e648027d7e1b5c06eb86d944b7e23926254cee",
              "lessThan": "4aefd66ef7822cf7d3f53146dcee0b71021ed2b7",
              "versionType": "git",
              "status": "affected"
            }
          ]
        },
        {
          "vendor": "Linux",
          "product": "Linux",
          "defaultStatus": "affected",
          "programFiles": [
            "drivers/platform/x86/asus-wireless.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "versions": [
            {
              "version": "7.1",
              "status": "affected"
            },
            {
              "version": "0",
              "lessThan": "7.1",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "7.2.6",
              "lessThanOrEqual": "7.2.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "7.3",
              "lessThanOrEqual": "*",
              "versionType": "original_commit_for_fix",
              "status": "unaffected"
            }
          ]
        }
      ]
    }
  ],
  "metrics": {},
  "references": [
    {
      "url": "https://git.kernel.org/stable/c/4aefd66ef7822cf7d3f53146dcee0b71021ed2b7",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/7bfa711f311a584002e16ecd750627306deb805c",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    }
  ]
}