HID: wacom: Fix OOB write in wacom_hid_set_device_mode() (Linux Linux)
At a glance
- Source
- NVD
- EPSS
- EPSS 0.36 % · percentile 29 ()
- State
- PUBLISHED
- Published
- Updated
- Assigner
- Linux
- NVD status
- Analyzed
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.
Weaknesses (CWE)
- CWE-787 — Out-of-bounds Write
References
- https://git.kernel.org/stable/c/2add311d99646c9d235b2c44f9c169ba30f5db3a
- https://git.kernel.org/stable/c/83bd8a5756a3c4a413ed8f6253f9eb2821e1ccaf
- https://git.kernel.org/stable/c/5716a293fb19d382ca2336e08fd28a619a5f3c25
- https://git.kernel.org/stable/c/ed598de9f61582902406d352d99f2073d8e00298
- https://git.kernel.org/stable/c/43e7c02d6090a82fd60d63491f6871aec906345e
- https://git.kernel.org/stable/c/b8338111e14183972359009c12d0dbd81d2e1e16
- https://git.kernel.org/stable/c/5db3fca0cec7b33bc5379411d0a60d792c9f9bc0
- https://git.kernel.org/stable/c/c0a8899e02ddebd51e2589835182c239c2e224ae
Scores
| Version | Score | Vector | Scored by |
|---|---|---|---|
| CVSS 3.1 | HIGH 8.8 | CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H | Linux |
| CVSS 3.1 | HIGH 8.8 | CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H | NVD · 416baaa9-dc9f-4396-8d5f-8c081fb06d67 (Secondary) |
European references
- ENISA EUVD · EUVD-2026-45689
- GCVE · GCVE-0-2026-63916
CERT-FR advisories
- CERTFR-2026-AVI-1385 — Multiples vulnérabilités dans les produits VMware · cert.ssi.gouv.fr
- CERTFR-2026-AVI-1333 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2026-AVI-1286 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2026-AVI-1252 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2026-AVI-1229 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2026-AVI-1203 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2026-AVI-1162 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2026-AVI-1091 — Multiples vulnérabilités dans le noyau Linux de SUSE · cert.ssi.gouv.fr
- CERTFR-2026-AVI-1066 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2026-AVI-1064 — Multiples vulnérabilités dans le noyau Linux de SUSE · cert.ssi.gouv.fr
- CERTFR-2026-AVI-0954 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2026-AVI-0926 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
Affected configurations (NVD CPE)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*≥ 3.18 < 5.10.259cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*≥ 5.11 < 5.15.210cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*≥ 5.16 < 6.1.176cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*≥ 6.2 < 6.6.143cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*≥ 6.7 < 6.12.93cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*≥ 6.13 < 6.18.35cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*≥ 6.19 < 7.0.12cpe:2.3:o:linux:linux_kernel:7.1:rc1:*:*:*:*:*:*cpe:2.3:o:linux:linux_kernel:7.1:rc2:*:*:*:*:*:*cpe:2.3:o:linux:linux_kernel:7.1:rc3:*:*:*:*:*:*cpe:2.3:o:linux:linux_kernel:7.1:rc4:*:*:*:*:*:*cpe:2.3:o:linux:linux_kernel:7.1:rc5:*:*:*:*:*:*
Affected products
| Product | Versions |
|---|---|
| Linux · Linux | affected 5ae6e89f7409cb5d218bb728326eba9c650d9700 < 2add311d99646c9d235b2c44f9c169ba30f5db3a ; affected 5ae6e89f7409cb5d218bb728326eba9c650d9700 < 83bd8a5756a3c4a413ed8f6253f9eb2821e1ccaf ; affected 5ae6e89f7409cb5d218bb728326eba9c650d9700 < 5716a293fb19d382ca2336e08fd28a619a5f3c25 ; affected 5ae6e89f7409cb5d218bb728326eba9c650d9700 < ed598de9f61582902406d352d99f2073d8e00298 ; affected 5ae6e89f7409cb5d218bb728326eba9c650d9700 < 43e7c02d6090a82fd60d63491f6871aec906345e ; affected 5ae6e89f7409cb5d218bb728326eba9c650d9700 < b8338111e14183972359009c12d0dbd81d2e1e16 |
| Linux · Linux | affected 3.18 ; unaffected 0 < 3.18 ; unaffected 5.10.259 ≤ 5.10.* ; unaffected 5.15.210 ≤ 5.15.* ; unaffected 6.1.176 ≤ 6.1.* ; unaffected 6.6.143 ≤ 6.6.* |
Sources
| Source | Licence |
|---|---|
| CVE List (CVEProject cvelistV5) | CVE Program Terms of Use |
| EPSS (FIRST.org) | FIRST — attribution requested |
| ENISA EUVD | ENISA — reproduction authorised, source acknowledged |
| CERT-FR (ANSSI) | Licence Ouverte / Etalab 2.0 |
| NVD (NIST) via fkie-cad/nvd-json-data-feeds | Public domain — this product uses data from the NVD API but is not endorsed or certified by the NVD |