CVE-2026-80772: HID: nintendo: fix out-of-bounds read in joycon_ctlr_read_handler()
Noroxi assessment
Priority: Monitor (action score 0/100)
- The sources we track (CISA KEV, Exploit-DB, Metasploit, Nuclei, GitHub) show no public exploit code or exploitation in the wild.
- Probability of exploitation in the next 30 days: 0.21% (FIRST EPSS).
- Fixed version: Linux Linux 27b376b945c0aac46fcdfcc950b14a85b874b557, 33ea29f8b6141f2d265de807e110a6435b355cb0, 34725ed4719da424113db8449fb5485aaf71a913.
Low priority for now. Upgrade to Linux Linux 27b376b945c0aac46fcdfcc950b14a85b874b557, 33ea29f8b6141f2d265de807e110a6435b355cb0, 34725ed4719da424113db8449fb5485aaf71a913 or later.
Generated automatically from the record's data: CVSS (NVD and CNA), CISA KEV and SSVC, FIRST EPSS, exploit sources, fixed versions. How we calculate it
Primary sources: NVD · CVE.org · FIRST EPSS
In the Linux kernel, the following vulnerability has been resolved: HID: nintendo: fix out-of-bounds read in joycon_ctlr_read_handler() joycon_ctlr_read_handler() casts an incoming HID input report to struct joycon_input_report and parses it, guarding the cast only with a 12-byte length check: if (size >= 12) /* make sure it contains the input report */ joycon_parse_report(ctlr, (struct joycon_input_report *)data); struct joycon_input_report is 49 bytes: a 13-byte header followed by a union whose IMU arm is 36 bytes. For an IMU report joycon_parse_report() -> joycon_parse_imu_report() walks that union (struct offsets 13..48), so a report of exactly 12 bytes with data[0] == JC_INPUT_IMU_DATA passes the guard yet is read up to 37 bytes past its declared length. The over-read bytes are decoded into accelerometer/gyroscope values and forwarded to userspace through the "(IMU)" input device, leaking driver-internal memory. data[0] and size are fully controlled by a malicious or spoofed Joy-Con/Pro Controller. Receive buffers are sized to the maximum report length, so this is an over-read within the allocation rather than a slab OOB, but the decoded bytes still reach userspace. The sibling subcmd path in joycon_ctlr_handle_event() already bounds the same cast correctly: if (size < sizeof(struct joycon_input_report) || data[0] != JC_INPUT_SUBCMD_REPLY) break; Use the same sizeof(struct joycon_input_report) bound here.
- Published
- Sep 4, 2026
- Updated
- Oct 19, 2026
- EPSS
- 0.2% · 11th percentile
- CWE
- —
Report tools
Action score
0
Monitor
Low priority for now.
- CVSS
- 0 / 40 · —
- CISA KEV
- 0 / 30 · Not listed
- EPSS
- 0 / 30 · 0.2%
Get told when this record changes
- Not in KEV: no record of exploitation in the wild
- No public exploit code on record
- A fix has been released
If any of these changes, we'll tell you in the daily email digest.
Running WordPress? Scan your site free with WP Lens
Noroxi analysis
What does it mean in your environment?
The assessment above is generated automatically from the record's data; it doesn't know your environment. Our team verifies on your systems whether this vulnerability is actually exploitable and which mitigation is enough.
We use this product, ask for helpAffected systems
Is your version affected?
Pick the product and type the version you run. It's compared with this record's version ranges in your browser; the version isn't sent anywhere.
—
Versions reported by the vendor
Affected version ranges reported by the assigning authority (Linux). Independent of NVD's CPE analysis and usually ahead of it.
Linux Linux
- 5.16affected
- 2af16c1f846bd60240745bbd3afa13d5f040c61a and later · before 33ea29f8b6141f2d265de807e110a6435b355cb0affected · git
- 2af16c1f846bd60240745bbd3afa13d5f040c61a and later · before bd397c4123a4bc084913d8c7fdb40ef94e9f8172affected · git
- 2af16c1f846bd60240745bbd3afa13d5f040c61a and later · before addca61f9a23c0d20a387c2040e70479f54518e1affected · git
- 2af16c1f846bd60240745bbd3afa13d5f040c61a and later · before 51cfd1adbe7a46bb08af162abb3ab3b6820e2d15affected · git
- 2af16c1f846bd60240745bbd3afa13d5f040c61a and later · before d4cabd4089adb59cf7974915737c52cc47a9bb1baffected · git
- 2af16c1f846bd60240745bbd3afa13d5f040c61a and later · before 34725ed4719da424113db8449fb5485aaf71a913affected · git
- 2af16c1f846bd60240745bbd3afa13d5f040c61a and later · before 27b376b945c0aac46fcdfcc950b14a85b874b557affected · git
- before 5.16not affected · semver
- 6.1.185 and later · up to and including 6.1.*not affected · semver
Package-level exposure
OSV and GitHub Advisory data: ecosystem, package and range. SBOM matching uses this table.
| Ecosystem | Package | Affected range | Fix |
|---|---|---|---|
| Debian:12 | linux | before 6.1.187-1 | 6.1.187-1 |
| Debian:12 | linux-6.12 | before 6.12.107-1~deb12u1 | 6.12.107-1~deb12u1 |
| Debian:13 | linux | before 6.12.107-1 | 6.12.107-1 |
| Debian:14 | linux | before 7.1.12-1 | 7.1.12-1 |
| openSUSE:Tumbleweed | kernel-source | before 7.2.5-1.1 | 7.2.5-1.1 |
Same product
linux: all recordsOther highest-scoring records for the same primary product.
- CVE-2026-74705udp: fix potential use-after-free in tunnel segmentation40Plan
- CVE-2026-74612veth: fix skb length accounting after XDP frag adjustment40Plan
- CVE-2026-74475vxlan: use neigh_ha_snapshot() in route_shortcircuit()40Plan
Published before and after this one in the same product
- ← EarlierCVE-2026-80770Sep 4, 2026 · HID: nintendo: stop device IO before hid_hw_stop on probe failure0Monitor
- ← EarlierCVE-2026-80771Sep 4, 2026 · HID: nintendo: register input device after capabilities are set0Monitor
- Later →CVE-2026-80773Sep 4, 2026 · HID: huawei: fix missing hid_is_usb() check0Monitor
Remediation
Which version to upgrade to
Fix versions compiled from the vendor, package registries and Microsoft. Verify the vendor's note before upgrading.
| Product / package | Fixed version | Source |
|---|---|---|
| Linux Linux | 27b376b945c0aac46fcdfcc950b14a85b874b557 | Vendor (CNA) |
| Linux Linux | 33ea29f8b6141f2d265de807e110a6435b355cb0 | Vendor (CNA) |
| Linux Linux | 34725ed4719da424113db8449fb5485aaf71a913 | Vendor (CNA) |
| Linux Linux | 51cfd1adbe7a46bb08af162abb3ab3b6820e2d15 | Vendor (CNA) |
| Linux Linux | addca61f9a23c0d20a387c2040e70479f54518e1 | Vendor (CNA) |
| Linux Linux | bd397c4123a4bc084913d8c7fdb40ef94e9f8172 | Vendor (CNA) |
| Linux Linux | d4cabd4089adb59cf7974915737c52cc47a9bb1b | Vendor (CNA) |
| azl3 kernel 6.6.150.1-1 on Azure Linux 3.0 | — | Microsoft (MSRC) |
| debian:linux | 6.1.187-1 · Debian:12 | Package registry (OSV) |
| debian:linux-6.12 | 6.12.107-1~deb12u1 · Debian:12 | Package registry (OSV) |
| opensuse:kernel-source | 7.2.5-1.1 · openSUSE:Tumbleweed | Package registry (OSV) |
Exploit status
No known public exploit
No public exploit has been observed yet. That doesn't mean you're safe, only that the bar is a little higher.
Research context
For pentesters and researchers: attack profile, score disagreement, timeline, patch commits, credits, variant and chain candidates, bug bounty scope. All derived from existing data; no exploit code.
Timeline
From publication to today: proof of concept, Metasploit module, CISA KEV and fix record. Dates are as reported by the sources.
No dated events beyond publication.
FIRST EPSS daily score; only changes of 0.01 or more are recorded (step chart).
Patch and commit links
Commit, PR and diff links among the references. A starting point for patch-diffing and variant hunting; fixes, not exploits.
No commit or PR link among the references.
Credits
All researchersFinders, reporters and analysts named in the CNA record. Click a name for that researcher’s other records.
No credits in the CNA record.
Variant candidates
Same product, same weakness class, within 18 months. If the patch missed the root cause, the sibling bug is here.
No nightly-computed relations.
Chain candidates
An authentication bypass and a privilege-requiring bug in the same product, published close together: combined they may become an unauthenticated path.
—
Bug bounty scope
No known public program.
Source: bounty-targets-data (public HackerOne, Bugcrowd, Intigriti, YesWeHack listings).
Technical details
No CVSS vector for this record, so attack conditions can't be derived.
Weakness class (CWE)
—
Attack context
MITRE CAPEC attack patterns and ATT&CK techniques for this weakness class (CWE). A starting point for detection rules and threat hunting.
MITRE has no CAPEC/ATT&CK mapping for this CWE.
Change log
- Fix✗ → ✓
For records you follow, these changes also arrive as notifications. →
References
Show all references (6 more)Show less
- git.kernel.org/stable/c/33ea29f8b6141f2d265de807e110a6435b355cb0
- git.kernel.org/stable/c/34725ed4719da424113db8449fb5485aaf71a913
- git.kernel.org/stable/c/51cfd1adbe7a46bb08af162abb3ab3b6820e2d15
- git.kernel.org/stable/c/addca61f9a23c0d20a387c2040e70479f54518e1
- git.kernel.org/stable/c/bd397c4123a4bc084913d8c7fdb40ef94e9f8172
- git.kernel.org/stable/c/d4cabd4089adb59cf7974915737c52cc47a9bb1b
Vendor advisories and official records. Exploit/PoC links are deliberately left out.