PatchSiren cyber security CVE debrief
CVE-2026-31770 Linux CVE debrief
CVE-2026-31770 is a Linux kernel availability issue in the hwmon occ driver. A missing zero-check in occ_show_power_1() can divide by update_tag before any samples have been collected, which can trigger a kernel crash during early boot or similar zero-sample states. The issue is rated medium severity and affects supported kernel release lines until the fixed stable releases noted by NVD.
- Vendor
- Linux
- Product
- Unknown
- CVSS
- MEDIUM 5.5
- CISA KEV
- Not listed in stored evidence
- Original CVE published
- 2026-05-01
- Original CVE updated
- 2026-05-11
- Advisory published
- 2026-05-01
- Advisory updated
- 2026-05-11
Who should care
Linux kernel maintainers, distro security teams, embedded/device vendors shipping affected kernel versions, and operators who rely on hwmon/occ sensor reporting for platform monitoring. Systems that may expose the occ sensor block during early boot should pay attention, because the fault can appear before normal sampling has occurred.
Technical summary
The vulnerable code path is in occ_show_power_1(). In case 1, it divides an accumulator by update_tag without checking whether any samples exist. If update_tag is zero, the kernel can hit a divide-by-zero fault and crash. The fix reuses the existing occ_get_powr_avg() helper, which already handles the zero-sample case and uses mul_u64_u32_div() for better precision. NVD maps this to CWE-369 and a CVSS 3.1 vector of AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H.
Defensive priority
Medium. This is a local, availability-only kernel crash with no direct confidentiality or integrity impact in the supplied data, but kernel panics are operationally important and can affect uptime on systems using the affected driver path.
Recommended defensive actions
- Update Linux kernel packages to a version that includes the upstream/stable fix referenced by the official kernel patches.
- Confirm whether your deployed kernels fall within the affected version ranges listed by NVD, especially the supported stable lines ending before the fixed releases.
- If you vendor-backport kernels, verify that the occ driver fix was included in your downstream tree and not only in upstream stable branches.
- Prioritize patching systems that may initialize or expose the OCC hwmon sensor block during boot or on systems where a kernel crash would cause service interruption.
- Use the official CVE and NVD records plus the linked kernel patches to validate remediation status in your environment.
Evidence notes
The CVE description states that occ_show_power_1() case 1 divided by update_tag without checking for zero, and that the earlier 2019 fix only covered occ_get_powr_avg() used by other show paths. NVD lists CWE-369 and a CVSS 3.1 vector of AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H. NVD also provides affected-version criteria for multiple Linux kernel release lines and includes official kernel patch references on git.kernel.org.
Sources and references
Verified primary and authoritative sources
-
CVE-2026-31770 CVE Program record
Publisher, destination, and source semantics verified
URL: https://www.cve.org/CVERecord?id=CVE-2026-31770
CVE Program - Official CVE Program record with source-provided CVE metadata.
-
CVE-2026-31770 NVD vulnerability detail
Publisher, destination, and source semantics verified
URL: https://nvd.nist.gov/vuln/detail/CVE-2026-31770
NIST National Vulnerability Database - Official NIST NVD detail page and source-specific vulnerability assessment.
Supplemental references
-
Mitigation or vendor reference
Unverified legacy reference
URL: https://git.kernel.org/stable/c/243d55bd3f08cb15eee9d63f4716d4d4cdd760f5
416baaa9-dc9f-4396-8d5f-8c081fb06d67 - Patch
-
Mitigation or vendor reference
Unverified legacy reference
URL: https://git.kernel.org/stable/c/2502684b9e835de9a992ec47c3e6c6faabe3858d
416baaa9-dc9f-4396-8d5f-8c081fb06d67 - Patch
-
Mitigation or vendor reference
Unverified legacy reference
URL: https://git.kernel.org/stable/c/37ae8fadc74ed68e5bc364ffd17746d88e449ae3
416baaa9-dc9f-4396-8d5f-8c081fb06d67 - Patch
-
Mitigation or vendor reference
Unverified legacy reference
URL: https://git.kernel.org/stable/c/39e2a5bf970402a8530a319cf06122e216ba57b8
416baaa9-dc9f-4396-8d5f-8c081fb06d67 - Patch
-
Mitigation or vendor reference
Unverified legacy reference
URL: https://git.kernel.org/stable/c/53e6175756b8c474b6247bbcea0aad3d68357475
416baaa9-dc9f-4396-8d5f-8c081fb06d67 - Patch
-
Mitigation or vendor reference
Unverified legacy reference
URL: https://git.kernel.org/stable/c/7b89ce0c98bf3015f493ca4285b2d1056cd8c733
416baaa9-dc9f-4396-8d5f-8c081fb06d67 - Patch
-
Mitigation or vendor reference
Unverified legacy reference
URL: https://git.kernel.org/stable/c/bbbefc48f6617cfb738dcff7f44beb50b5dfeb38
416baaa9-dc9f-4396-8d5f-8c081fb06d67 - Patch
Methodology and review provenance
AI-assisted synthesis based on stored public vulnerability evidence. System validation, approval state, and publication status do not by themselves establish human review of this revision. PatchSiren helps prioritize defensive review and does not prove exposure or remediation on any system.