← Back to CVE Explorer

CVE-2026-63916

Full vulnerability record from the local CVENow database.

Description

In the Linux kernel, the following vulnerability has been resolved: HID: wacom: Fix OOB write in wacom_hid_set_device_mode() wacom_hid_set_device_mode() currently assumes that the HID_DG_INPUTMODE usage is always located in the first field (field[0]) of the feature report. However, a device can specify HID_DG_INPUTMODE in a different field. If HID_DG_INPUTMODE is in a field other than the first one and the first field has a report_count smaller than the usage_index of HID_DG_INPUTMODE, this leads to an out-of-bounds write to r->field[0]->value. Fix this by storing the field index of HID_DG_INPUTMODE in 'struct hid_data' during feature mapping. In wacom_hid_set_device_mode(), use this stored field index to access the correct field and add bounds checks to ensure both the field index and the value index are within valid ranges before writing.

Severity
HIGH
CVSS score
8.8 (v3.1)
Vulnerability status
Undergoing Analysis
Source identifier
416baaa9-dc9f-4396-8d5f-8c081fb06d67
Published
2026-07-19 16:17:09.657000
Last modified
2026-10-19 21:17:10.757000
View original CVE JSON
{
  "id": "CVE-2026-63916",
  "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
  "published": "2026-07-19T16:17:09.657",
  "lastModified": "2026-10-19T21:17:10.757",
  "vulnStatus": "Undergoing Analysis",
  "cveTags": [],
  "descriptions": [
    {
      "lang": "en",
      "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nHID: wacom: Fix OOB write in wacom_hid_set_device_mode()\n\nwacom_hid_set_device_mode() currently assumes that the HID_DG_INPUTMODE\nusage is always located in the first field (field[0]) of the feature report.\nHowever, a device can specify HID_DG_INPUTMODE in a different field.\n\nIf HID_DG_INPUTMODE is in a field other than the first one and the first\nfield has a report_count smaller than the usage_index of HID_DG_INPUTMODE,\nthis leads to an out-of-bounds write to r->field[0]->value.\n\nFix this by storing the field index of HID_DG_INPUTMODE in 'struct\nhid_data' during feature mapping.  In wacom_hid_set_device_mode(), use\nthis stored field index to access the correct field and add bounds\nchecks to ensure both the field index and the value index are within\nvalid ranges before writing."
    }
  ],
  "affected": [
    {
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "affectedData": [
        {
          "vendor": "Linux",
          "product": "Linux",
          "defaultStatus": "unaffected",
          "programFiles": [
            "drivers/hid/wacom_sys.c",
            "drivers/hid/wacom_wac.h"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "versions": [
            {
              "version": "5ae6e89f7409cb5d218bb728326eba9c650d9700",
              "lessThan": "2add311d99646c9d235b2c44f9c169ba30f5db3a",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "5ae6e89f7409cb5d218bb728326eba9c650d9700",
              "lessThan": "83bd8a5756a3c4a413ed8f6253f9eb2821e1ccaf",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "5ae6e89f7409cb5d218bb728326eba9c650d9700",
              "lessThan": "5716a293fb19d382ca2336e08fd28a619a5f3c25",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "5ae6e89f7409cb5d218bb728326eba9c650d9700",
              "lessThan": "ed598de9f61582902406d352d99f2073d8e00298",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "5ae6e89f7409cb5d218bb728326eba9c650d9700",
              "lessThan": "43e7c02d6090a82fd60d63491f6871aec906345e",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "5ae6e89f7409cb5d218bb728326eba9c650d9700",
              "lessThan": "b8338111e14183972359009c12d0dbd81d2e1e16",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "5ae6e89f7409cb5d218bb728326eba9c650d9700",
              "lessThan": "5db3fca0cec7b33bc5379411d0a60d792c9f9bc0",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "5ae6e89f7409cb5d218bb728326eba9c650d9700",
              "lessThan": "c0a8899e02ddebd51e2589835182c239c2e224ae",
              "versionType": "git",
              "status": "affected"
            }
          ]
        },
        {
          "vendor": "Linux",
          "product": "Linux",
          "defaultStatus": "affected",
          "programFiles": [
            "drivers/hid/wacom_sys.c",
            "drivers/hid/wacom_wac.h"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "versions": [
            {
              "version": "3.18",
              "status": "affected"
            },
            {
              "version": "0",
              "lessThan": "3.18",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "5.10.259",
              "lessThanOrEqual": "5.10.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "5.15.210",
              "lessThanOrEqual": "5.15.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "6.1.176",
              "lessThanOrEqual": "6.1.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "6.6.143",
              "lessThanOrEqual": "6.6.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "6.12.93",
              "lessThanOrEqual": "6.12.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "6.18.35",
              "lessThanOrEqual": "6.18.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "7.0.12",
              "lessThanOrEqual": "7.0.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "7.1",
              "lessThanOrEqual": "*",
              "versionType": "original_commit_for_fix",
              "status": "unaffected"
            }
          ]
        }
      ]
    }
  ],
  "metrics": {
    "cvssMetricV31": [
      {
        "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "type": "Secondary",
        "cvssData": {
          "version": "3.1",
          "vectorString": "CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
          "baseScore": 8.8,
          "baseSeverity": "HIGH",
          "attackVector": "ADJACENT_NETWORK",
          "attackComplexity": "LOW",
          "privilegesRequired": "NONE",
          "userInteraction": "NONE",
          "scope": "UNCHANGED",
          "confidentialityImpact": "HIGH",
          "integrityImpact": "HIGH",
          "availabilityImpact": "HIGH"
        },
        "exploitabilityScore": 2.8,
        "impactScore": 5.9
      }
    ],
    "ssvcV203": [
      {
        "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
        "ssvcData": {
          "timestamp": "2026-10-16T15:33:16.082526Z",
          "id": "CVE-2026-63916",
          "options": [
            {
              "exploitation": "none"
            },
            {
              "automatable": "no"
            },
            {
              "technicalImpact": "total"
            }
          ],
          "role": "CISA Coordinator",
          "version": "2.0.3"
        }
      }
    ]
  },
  "weaknesses": [
    {
      "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
      "type": "Secondary",
      "description": [
        {
          "lang": "en",
          "value": "CWE-787"
        }
      ]
    }
  ],
  "references": [
    {
      "url": "https://git.kernel.org/stable/c/2add311d99646c9d235b2c44f9c169ba30f5db3a",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/43e7c02d6090a82fd60d63491f6871aec906345e",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/5716a293fb19d382ca2336e08fd28a619a5f3c25",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/5db3fca0cec7b33bc5379411d0a60d792c9f9bc0",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/83bd8a5756a3c4a413ed8f6253f9eb2821e1ccaf",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/b8338111e14183972359009c12d0dbd81d2e1e16",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/c0a8899e02ddebd51e2589835182c239c2e224ae",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/ed598de9f61582902406d352d99f2073d8e00298",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    }
  ]
}