FKIE_CVE-2026-74685

Vulnerability from fkie_nvd - Published: 2026-08-22 16:16 - Updated: 2026-10-14 13:10
Severity
Summary
In the Linux kernel, the following vulnerability has been resolved: hwmon: (ltc4282) Clamp negative current limits When a negative value is passed to ltc4282_write_curr(), the signed long val is cast directly to u64: drivers/hwmon/ltc4282.c:ltc4282_write_curr() { /* need to pass it in millivolt */ u32 in = DIV_ROUND_CLOSEST_ULL((u64)val * st->rsense, DECA * MICRO); ... } This cast converts negative inputs into large positive values. The subsequent division result overflows the u32 in variable, truncating to a pseudo-random positive value. When this is passed to ltc4282_write_voltage_byte(), it is clamped to the maximum limit instead of zero. Clamp val to 0 and to the maximum supported upper limit before the cast and assign the result to a 64-bit temporary variable before the division to avoid the underflow and an also possible overflow.
Impacted products
Vendor Product Version

{
  "affected": [
    {
      "affectedData": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/hwmon/ltc4282.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "60e06c4dba696173982393252a40ceb7dd2eec18",
              "status": "affected",
              "version": "cbc29538dbf7d7400f1ffc5dd5713e6a551463a0",
              "versionType": "git"
            },
            {
              "lessThan": "de58b90a4d1417c15b693eb04c0ce6bc925d84c6",
              "status": "affected",
              "version": "cbc29538dbf7d7400f1ffc5dd5713e6a551463a0",
              "versionType": "git"
            },
            {
              "lessThan": "046e56b53c09375ef39903514496aa5508db9729",
              "status": "affected",
              "version": "cbc29538dbf7d7400f1ffc5dd5713e6a551463a0",
              "versionType": "git"
            },
            {
              "lessThan": "e253dd5f9f6d875a317895bf43ec9534ed7523cb",
              "status": "affected",
              "version": "cbc29538dbf7d7400f1ffc5dd5713e6a551463a0",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/hwmon/ltc4282.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.9"
            },
            {
              "lessThan": "6.9",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.12.*",
              "status": "unaffected",
              "version": "6.12.104",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.45",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.1.*",
              "status": "unaffected",
              "version": "7.1.9",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "7.2",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    }
  ],
  "cveTags": [],
  "descriptions": [
    {
      "lang": "en",
      "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nhwmon: (ltc4282) Clamp negative current limits\n\nWhen a negative value is passed to ltc4282_write_curr(), the signed long\nval is cast directly to u64:\n\ndrivers/hwmon/ltc4282.c:ltc4282_write_curr() {\n        /* need to pass it in millivolt */\n        u32 in = DIV_ROUND_CLOSEST_ULL((u64)val * st-\u003ersense, DECA * MICRO);\n        ...\n}\n\nThis cast converts negative inputs into large positive values. The\nsubsequent division result overflows the u32 in variable, truncating\nto a pseudo-random positive value. When this is passed to\nltc4282_write_voltage_byte(), it is clamped to the maximum limit instead\nof zero.\n\nClamp val to 0 and to the maximum supported upper limit before the cast\nand assign the result to a 64-bit temporary variable before the division\nto avoid the underflow and an also possible overflow."
    },
    {
      "lang": "es",
      "value": "En el kernel de Linux, la siguiente vulnerabilidad ha sido resuelta:\n\nhwmon: (ltc4282) Limitar los l\u00edmites de corriente negativos\n\nCuando se pasa un valor negativo a ltc4282_write_curr(), el \u0027signed long\u0027 \u0027val\u0027 se convierte directamente a \u0027u64\u0027:\n\ndrivers/hwmon/ltc4282.c:ltc4282_write_curr() {\n        /* es necesario pasarlo en milivoltios */\n        u32 in = DIV_ROUND_CLOSEST_ULL((u64)val * st -\u003e rsense, DECA * MICRO);\n        ...\n}\n\nEsta conversi\u00f3n convierte las entradas negativas en valores positivos grandes. El resultado de la divisi\u00f3n subsiguiente desborda la variable \u0027u32 in\u0027, trunc\u00e1ndose a un valor positivo pseudoaleatorio. Cuando esto se pasa a ltc4282_write_voltage_byte(), se limita al l\u00edmite m\u00e1ximo en lugar de cero.\n\nLimitar \u0027val\u0027 a 0 y al l\u00edmite superior m\u00e1ximo soportado antes de la conversi\u00f3n y asignar el resultado a una variable temporal de 64 bits antes de la divisi\u00f3n para evitar el subdesbordamiento y un posible desbordamiento tambi\u00e9n."
    }
  ],
  "id": "CVE-2026-74685",
  "lastModified": "2026-10-14T13:10:00.187",
  "metrics": {},
  "published": "2026-08-22T16:16:42.870",
  "references": [
    {
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "url": "https://git.kernel.org/stable/c/046e56b53c09375ef39903514496aa5508db9729"
    },
    {
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "url": "https://git.kernel.org/stable/c/60e06c4dba696173982393252a40ceb7dd2eec18"
    },
    {
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "url": "https://git.kernel.org/stable/c/de58b90a4d1417c15b693eb04c0ce6bc925d84c6"
    },
    {
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "url": "https://git.kernel.org/stable/c/e253dd5f9f6d875a317895bf43ec9534ed7523cb"
    }
  ],
  "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
  "vulnStatus": "Received"
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Drag nodes to arrange them. Double-click a related vulnerability to open it, or a source to visit its link. The Physics button on the left tunes the layout and the simulation; the legend at the bottom left hides or shows nodes by kind and by sighting type.

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

Sightings

Author Source Type Date Other

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.
Vulnerability timeline

Sightings and recorded dates, grouped by day · UTC

JSON
Events included in the timeline

Loading timeline…


    Loading…

    Loading…

    Loading…

    Related by attack behaviour

    Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.