5.5
MEDIUM CVSS 3.1
CVE-2026-52948
i2c: dev: prevent integer overflow in I2C_TIMEOUT ioctl
Description

In the Linux kernel, the following vulnerability has been resolved: i2c: dev: prevent integer overflow in I2C_TIMEOUT ioctl While fuzzing with Syzkaller, a persistent `schedule_timeout: wrong timeout value` warning was observed, accompanied by SMBus controller state machine corruption. The I2C_TIMEOUT ioctl accepts a user-provided timeout in multiples of 10 ms. The user argument is checked against INT_MAX, but it is subsequently multiplied by 10 before being passed to msecs_to_jiffies(). A malicious user can pass a large value (e.g., 429496729) that passes the `arg > INT_MAX` check but overflows when multiplied by 10. This results in a truncated 32-bit unsigned value that bypasses the internal `(int)m < 0` check in `msecs_to_jiffies()`. The truncated value is then assigned to `client->adapter->timeout` (a signed 32-bit int), which is reinterpreted as a negative number. When passed to wait_for_completion_timeout(), this negative value undergoes sign extension to a 64-bit unsigned long, triggering the `schedule_timeout` warning and causing premature returns. This leaves the SMBus state machine in an unrecoverable state, constituting a local Denial of Service (DoS). Fix this by bounding the user argument to `INT_MAX / 10`. [wsa: move the comment as well]

INFO

Published Date :

June 24, 2026, 5:17 p.m.

Last Modified :

July 14, 2026, 4:58 p.m.

Remotely Exploit :

No

Source :

416baaa9-dc9f-4396-8d5f-8c081fb06d67
Affected Products

The following products are affected by CVE-2026-52948 vulnerability. Even if cvefeed.io is aware of the exact versions of the products that are affected, the information is not represented in the table below.

ID Vendor Product Action
1 Linux linux_kernel
CVSS Scores
The Common Vulnerability Scoring System is a standardized framework for assessing the severity of vulnerabilities in software and systems. We collect and displays CVSS scores from various sources for each CVE.
Score Version Severity Vector Exploitability Score Impact Score Source
CVSS 3.1 MEDIUM [email protected]
Solution
Prevent integer overflow in I2C_TIMEOUT by bounding the user argument.
  • Bound the user argument to INT_MAX / 10.
  • Update the Linux kernel.
Public PoC/Exploit Available at Github

CVE-2026-52948 has a 1 public PoC/Exploit available at Github. Go to the Public Exploits tab to see the list.

CWE - Common Weakness Enumeration

While CVE identifies specific instances of vulnerabilities, CWE categorizes the common flaws or weaknesses that can lead to vulnerabilities. CVE-2026-52948 is associated with the following CWEs:

Common Attack Pattern Enumeration and Classification (CAPEC)

Common Attack Pattern Enumeration and Classification (CAPEC) stores attack patterns, which are descriptions of the common attributes and approaches employed by adversaries to exploit the CVE-2026-52948 weaknesses.

We scan GitHub repositories to detect new proof-of-concept exploits. Following list is a collection of public exploits and proof-of-concepts, which have been published on GitHub (sorted by the most recently updated).

Record all the bugs discovered by DevGen

Updated: 3 days, 20 hours ago
0 stars 0 fork 0 watcher
Born at : June 1, 2026, 2:39 a.m. This repo has been linked 8 different CVEs too.

Results are limited to the first 15 repositories due to potential performance issues.

The following list is the news that have been mention CVE-2026-52948 vulnerability anywhere in the article.

The following table lists the changes that have been made to the CVE-2026-52948 vulnerability over time.

Vulnerability history details can be useful for understanding the evolution of a vulnerability, and for identifying the most recent changes that may impact the vulnerability's severity, exploitability, or other characteristics.

  • Initial Analysis by [email protected]

    Jul. 14, 2026

    Action Type Old Value New Value
    Added CVSS V3.1 AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
    Added CWE CWE-190
    Added CPE Configuration OR *cpe:2.3:o:linux:linux_kernel:2.6.29:rc7:*:*:*:*:*:* *cpe:2.3:o:linux:linux_kernel:2.6.29:rc8:*:*:*:*:*:* *cpe:2.3:o:linux:linux_kernel:2.6.29:-:*:*:*:*:*:* *cpe: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:*:*:*:*:*:*:*:* versions from (including) 5.16 up to (excluding) 6.1.176 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 6.2 up to (excluding) 6.6.143 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 5.11 up to (excluding) 5.15.210 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 6.13 up to (excluding) 6.18.36 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 6.7 up to (excluding) 6.12.94 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 6.19 up to (excluding) 7.0.13 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 2.6.29.1 up to (excluding) 5.10.259
    Added Reference Type kernel.org: https://git.kernel.org/stable/c/0b88ecfbc9dc33b4db8836c37b50cf174e6c0691 Types: Patch
    Added Reference Type kernel.org: https://git.kernel.org/stable/c/4576621dc6577f21a032acfd16c3ad61907a5ea7 Types: Patch
    Added Reference Type kernel.org: https://git.kernel.org/stable/c/617eb7c0961a8dfcfc811844a6396e406b2923ea Types: Patch
    Added Reference Type kernel.org: https://git.kernel.org/stable/c/943e318eedbeaeea08ece3f5dd44c982f4ed2ef5 Types: Patch
    Added Reference Type kernel.org: https://git.kernel.org/stable/c/aa6ef734016912653a909477fb30aeb66c98b3a2 Types: Patch
    Added Reference Type kernel.org: https://git.kernel.org/stable/c/e9ffd5f5050fbb199d270a85614cd27ebed6fbac Types: Patch
    Added Reference Type kernel.org: https://git.kernel.org/stable/c/ff02add34ffd03449b8115904ebe2ec4fed022d4 Types: Patch
    Added Reference Type kernel.org: https://git.kernel.org/stable/c/ffbcf31f032eb454ebfd29309f51366fe57f4ac4 Types: Patch
  • CVE Modified by 416baaa9-dc9f-4396-8d5f-8c081fb06d67

    Jun. 29, 2026

    Action Type Old Value New Value
    Changed Affected [{'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'affected', 'version': '1da177e4c3f41524e886b7f1b8a0c1fc7321cac2', 'lessThan': 'e9ffd5f5050fbb199d270a85614cd27ebed6fbac', 'versionType': 'git'}, {'status': 'affected', 'version': '1da177e4c3f41524e886b7f1b8a0c1fc7321cac2', 'lessThan': '0b88ecfbc9dc33b4db8836c37b50cf174e6c0691', 'versionType': 'git'}, {'status': 'affected', 'version': '1da177e4c3f41524e886b7f1b8a0c1fc7321cac2', 'lessThan': '943e318eedbeaeea08ece3f5dd44c982f4ed2ef5', 'versionType': 'git'}, {'status': 'affected', 'version': '1da177e4c3f41524e886b7f1b8a0c1fc7321cac2', 'lessThan': 'aa6ef734016912653a909477fb30aeb66c98b3a2', 'versionType': 'git'}, {'status': 'affected', 'version': '1da177e4c3f41524e886b7f1b8a0c1fc7321cac2', 'lessThan': 'ff02add34ffd03449b8115904ebe2ec4fed022d4', 'versionType': 'git'}, {'status': 'affected', 'version': '1da177e4c3f41524e886b7f1b8a0c1fc7321cac2', 'lessThan': 'ffbcf31f032eb454ebfd29309f51366fe57f4ac4', 'versionType': 'git'}, {'status': 'affected', 'version': '1da177e4c3f41524e886b7f1b8a0c1fc7321cac2', 'lessThan': '4576621dc6577f21a032acfd16c3ad61907a5ea7', 'versionType': 'git'}, {'status': 'affected', 'version': '1da177e4c3f41524e886b7f1b8a0c1fc7321cac2', 'lessThan': '617eb7c0961a8dfcfc811844a6396e406b2923ea', 'versionType': 'git'}, {'status': 'affected', 'version': '0', 'lessThan': '5.10.259', 'versionType': 'semver'}, {'status': 'affected', 'version': '0', 'lessThan': '5.15.210', 'versionType': 'semver'}, {'status': 'affected', 'version': '0', 'lessThan': '6.1.176', 'versionType': 'semver'}, {'status': 'affected', 'version': '0', 'lessThan': '6.6.143', 'versionType': 'semver'}, {'status': 'affected', 'version': '0', 'lessThan': '6.12.94', 'versionType': 'semver'}, {'status': 'affected', 'version': '0', 'lessThan': '6.18.36', 'versionType': 'semver'}, {'status': 'affected', 'version': '0', 'lessThan': '7.0.13', 'versionType': 'semver'}], 'programFiles': ['drivers/i2c/i2c-dev.c'], 'defaultStatus': 'unaffected'}, {'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'unaffected', 'version': '5.10.259', 'versionType': 'semver', 'lessThanOrEqual': '5.10.*'}, {'status': 'unaffected', 'version': '5.15.210', 'versionType': 'semver', 'lessThanOrEqual': '5.15.*'}, {'status': 'unaffected', 'version': '6.1.176', 'versionType': 'semver', 'lessThanOrEqual': '6.1.*'}, {'status': 'unaffected', 'version': '6.6.143', 'versionType': 'semver', 'lessThanOrEqual': '6.6.*'}, {'status': 'unaffected', 'version': '6.12.94', 'versionType': 'semver', 'lessThanOrEqual': '6.12.*'}, {'status': 'unaffected', 'version': '6.18.36', 'versionType': 'semver', 'lessThanOrEqual': '6.18.*'}, {'status': 'unaffected', 'version': '7.0.13', 'versionType': 'semver', 'lessThanOrEqual': '7.0.*'}, {'status': 'unaffected', 'version': '7.1', 'versionType': 'original_commit_for_fix', 'lessThanOrEqual': '*'}], 'programFiles': ['drivers/i2c/i2c-dev.c'], 'defaultStatus': 'affected'}] [{'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'affected', 'version': 'cd97f39b7cdf1c8a9c9f52865eec795b7f0c811d', 'lessThan': 'e9ffd5f5050fbb199d270a85614cd27ebed6fbac', 'versionType': 'git'}, {'status': 'affected', 'version': 'cd97f39b7cdf1c8a9c9f52865eec795b7f0c811d', 'lessThan': '0b88ecfbc9dc33b4db8836c37b50cf174e6c0691', 'versionType': 'git'}, {'status': 'affected', 'version': 'cd97f39b7cdf1c8a9c9f52865eec795b7f0c811d', 'lessThan': '943e318eedbeaeea08ece3f5dd44c982f4ed2ef5', 'versionType': 'git'}, {'status': 'affected', 'version': 'cd97f39b7cdf1c8a9c9f52865eec795b7f0c811d', 'lessThan': 'aa6ef734016912653a909477fb30aeb66c98b3a2', 'versionType': 'git'}, {'status': 'affected', 'version': 'cd97f39b7cdf1c8a9c9f52865eec795b7f0c811d', 'lessThan': 'ff02add34ffd03449b8115904ebe2ec4fed022d4', 'versionType': 'git'}, {'status': 'affected', 'version': 'cd97f39b7cdf1c8a9c9f52865eec795b7f0c811d', 'lessThan': 'ffbcf31f032eb454ebfd29309f51366fe57f4ac4', 'versionType': 'git'}, {'status': 'affected', 'version': 'cd97f39b7cdf1c8a9c9f52865eec795b7f0c811d', 'lessThan': '4576621dc6577f21a032acfd16c3ad61907a5ea7', 'versionType': 'git'}, {'status': 'affected', 'version': 'cd97f39b7cdf1c8a9c9f52865eec795b7f0c811d', 'lessThan': '617eb7c0961a8dfcfc811844a6396e406b2923ea', 'versionType': 'git'}], 'programFiles': ['drivers/i2c/i2c-dev.c'], 'defaultStatus': 'unaffected'}, {'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'affected', 'version': '2.6.29'}, {'status': 'unaffected', 'version': '0', 'lessThan': '2.6.29', 'versionType': 'semver'}, {'status': 'unaffected', 'version': '5.10.259', 'versionType': 'semver', 'lessThanOrEqual': '5.10.*'}, {'status': 'unaffected', 'version': '5.15.210', 'versionType': 'semver', 'lessThanOrEqual': '5.15.*'}, {'status': 'unaffected', 'version': '6.1.176', 'versionType': 'semver', 'lessThanOrEqual': '6.1.*'}, {'status': 'unaffected', 'version': '6.6.143', 'versionType': 'semver', 'lessThanOrEqual': '6.6.*'}, {'status': 'unaffected', 'version': '6.12.94', 'versionType': 'semver', 'lessThanOrEqual': '6.12.*'}, {'status': 'unaffected', 'version': '6.18.36', 'versionType': 'semver', 'lessThanOrEqual': '6.18.*'}, {'status': 'unaffected', 'version': '7.0.13', 'versionType': 'semver', 'lessThanOrEqual': '7.0.*'}, {'status': 'unaffected', 'version': '7.1', 'versionType': 'original_commit_for_fix', 'lessThanOrEqual': '*'}], 'programFiles': ['drivers/i2c/i2c-dev.c'], 'defaultStatus': 'affected'}]
  • New CVE Received by 416baaa9-dc9f-4396-8d5f-8c081fb06d67

    Jun. 24, 2026

    Action Type Old Value New Value
    Added Affected [{'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'affected', 'version': '1da177e4c3f41524e886b7f1b8a0c1fc7321cac2', 'lessThan': 'e9ffd5f5050fbb199d270a85614cd27ebed6fbac', 'versionType': 'git'}, {'status': 'affected', 'version': '1da177e4c3f41524e886b7f1b8a0c1fc7321cac2', 'lessThan': '0b88ecfbc9dc33b4db8836c37b50cf174e6c0691', 'versionType': 'git'}, {'status': 'affected', 'version': '1da177e4c3f41524e886b7f1b8a0c1fc7321cac2', 'lessThan': '943e318eedbeaeea08ece3f5dd44c982f4ed2ef5', 'versionType': 'git'}, {'status': 'affected', 'version': '1da177e4c3f41524e886b7f1b8a0c1fc7321cac2', 'lessThan': 'aa6ef734016912653a909477fb30aeb66c98b3a2', 'versionType': 'git'}, {'status': 'affected', 'version': '1da177e4c3f41524e886b7f1b8a0c1fc7321cac2', 'lessThan': 'ff02add34ffd03449b8115904ebe2ec4fed022d4', 'versionType': 'git'}, {'status': 'affected', 'version': '1da177e4c3f41524e886b7f1b8a0c1fc7321cac2', 'lessThan': 'ffbcf31f032eb454ebfd29309f51366fe57f4ac4', 'versionType': 'git'}, {'status': 'affected', 'version': '1da177e4c3f41524e886b7f1b8a0c1fc7321cac2', 'lessThan': '4576621dc6577f21a032acfd16c3ad61907a5ea7', 'versionType': 'git'}, {'status': 'affected', 'version': '1da177e4c3f41524e886b7f1b8a0c1fc7321cac2', 'lessThan': '617eb7c0961a8dfcfc811844a6396e406b2923ea', 'versionType': 'git'}, {'status': 'affected', 'version': '0', 'lessThan': '5.10.259', 'versionType': 'semver'}, {'status': 'affected', 'version': '0', 'lessThan': '5.15.210', 'versionType': 'semver'}, {'status': 'affected', 'version': '0', 'lessThan': '6.1.176', 'versionType': 'semver'}, {'status': 'affected', 'version': '0', 'lessThan': '6.6.143', 'versionType': 'semver'}, {'status': 'affected', 'version': '0', 'lessThan': '6.12.94', 'versionType': 'semver'}, {'status': 'affected', 'version': '0', 'lessThan': '6.18.36', 'versionType': 'semver'}, {'status': 'affected', 'version': '0', 'lessThan': '7.0.13', 'versionType': 'semver'}], 'programFiles': ['drivers/i2c/i2c-dev.c'], 'defaultStatus': 'unaffected'}, {'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'unaffected', 'version': '5.10.259', 'versionType': 'semver', 'lessThanOrEqual': '5.10.*'}, {'status': 'unaffected', 'version': '5.15.210', 'versionType': 'semver', 'lessThanOrEqual': '5.15.*'}, {'status': 'unaffected', 'version': '6.1.176', 'versionType': 'semver', 'lessThanOrEqual': '6.1.*'}, {'status': 'unaffected', 'version': '6.6.143', 'versionType': 'semver', 'lessThanOrEqual': '6.6.*'}, {'status': 'unaffected', 'version': '6.12.94', 'versionType': 'semver', 'lessThanOrEqual': '6.12.*'}, {'status': 'unaffected', 'version': '6.18.36', 'versionType': 'semver', 'lessThanOrEqual': '6.18.*'}, {'status': 'unaffected', 'version': '7.0.13', 'versionType': 'semver', 'lessThanOrEqual': '7.0.*'}, {'status': 'unaffected', 'version': '7.1', 'versionType': 'original_commit_for_fix', 'lessThanOrEqual': '*'}], 'programFiles': ['drivers/i2c/i2c-dev.c'], 'defaultStatus': 'affected'}]
    Added Description In the Linux kernel, the following vulnerability has been resolved: i2c: dev: prevent integer overflow in I2C_TIMEOUT ioctl While fuzzing with Syzkaller, a persistent `schedule_timeout: wrong timeout value` warning was observed, accompanied by SMBus controller state machine corruption. The I2C_TIMEOUT ioctl accepts a user-provided timeout in multiples of 10 ms. The user argument is checked against INT_MAX, but it is subsequently multiplied by 10 before being passed to msecs_to_jiffies(). A malicious user can pass a large value (e.g., 429496729) that passes the `arg > INT_MAX` check but overflows when multiplied by 10. This results in a truncated 32-bit unsigned value that bypasses the internal `(int)m < 0` check in `msecs_to_jiffies()`. The truncated value is then assigned to `client->adapter->timeout` (a signed 32-bit int), which is reinterpreted as a negative number. When passed to wait_for_completion_timeout(), this negative value undergoes sign extension to a 64-bit unsigned long, triggering the `schedule_timeout` warning and causing premature returns. This leaves the SMBus state machine in an unrecoverable state, constituting a local Denial of Service (DoS). Fix this by bounding the user argument to `INT_MAX / 10`. [wsa: move the comment as well]
    Added Reference https://git.kernel.org/stable/c/0b88ecfbc9dc33b4db8836c37b50cf174e6c0691
    Added Reference https://git.kernel.org/stable/c/4576621dc6577f21a032acfd16c3ad61907a5ea7
    Added Reference https://git.kernel.org/stable/c/617eb7c0961a8dfcfc811844a6396e406b2923ea
    Added Reference https://git.kernel.org/stable/c/943e318eedbeaeea08ece3f5dd44c982f4ed2ef5
    Added Reference https://git.kernel.org/stable/c/aa6ef734016912653a909477fb30aeb66c98b3a2
    Added Reference https://git.kernel.org/stable/c/e9ffd5f5050fbb199d270a85614cd27ebed6fbac
    Added Reference https://git.kernel.org/stable/c/ff02add34ffd03449b8115904ebe2ec4fed022d4
    Added Reference https://git.kernel.org/stable/c/ffbcf31f032eb454ebfd29309f51366fe57f4ac4
EPSS is a daily estimate of the probability of exploitation activity being observed over the next 30 days. Following chart shows the EPSS score history of the vulnerability.