CVE-2025-21874 (GCVE-0-2025-21874)
Vulnerability from cvelistv5
Published
2025-03-27 14:57
Modified
2025-05-04 07:22
Severity ?
Summary
In the Linux kernel, the following vulnerability has been resolved: dm-integrity: Avoid divide by zero in table status in Inline mode In Inline mode, the journal is unused, and journal_sectors is zero. Calculating the journal watermark requires dividing by journal_sectors, which should be done only if the journal is configured. Otherwise, a simple table query (dmsetup table) can cause OOPS. This bug did not show on some systems, perhaps only due to compiler optimization. On my 32-bit testing machine, this reliably crashes with the following: : Oops: divide error: 0000 [#1] PREEMPT SMP : CPU: 0 UID: 0 PID: 2450 Comm: dmsetup Not tainted 6.14.0-rc2+ #959 : EIP: dm_integrity_status+0x2f8/0xab0 [dm_integrity] ...
Impacted products
Vendor Product Version
Linux Linux Version: fb0987682c629c1d2c476f35f6fde405a5e304a4
Version: fb0987682c629c1d2c476f35f6fde405a5e304a4
Version: fb0987682c629c1d2c476f35f6fde405a5e304a4
Create a notification for this product.
Show details on NVD website


{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/md/dm-integrity.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "22c6f577b3cb184857b440ae5e5916f6c9e7021d",
              "status": "affected",
              "version": "fb0987682c629c1d2c476f35f6fde405a5e304a4",
              "versionType": "git"
            },
            {
              "lessThan": "06d9895f265282e939a8933bb18de82eba2b4dda",
              "status": "affected",
              "version": "fb0987682c629c1d2c476f35f6fde405a5e304a4",
              "versionType": "git"
            },
            {
              "lessThan": "7fb39882b20c98a9a393c244c86b56ef6933cff8",
              "status": "affected",
              "version": "fb0987682c629c1d2c476f35f6fde405a5e304a4",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/md/dm-integrity.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.11"
            },
            {
              "lessThan": "6.11",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.12.*",
              "status": "unaffected",
              "version": "6.12.18",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.13.*",
              "status": "unaffected",
              "version": "6.13.6",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "6.14",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.12.18",
                  "versionStartIncluding": "6.11",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.13.6",
                  "versionStartIncluding": "6.11",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.14",
                  "versionStartIncluding": "6.11",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ndm-integrity: Avoid divide by zero in table status in Inline mode\n\nIn Inline mode, the journal is unused, and journal_sectors is zero.\n\nCalculating the journal watermark requires dividing by journal_sectors,\nwhich should be done only if the journal is configured.\n\nOtherwise, a simple table query (dmsetup table) can cause OOPS.\n\nThis bug did not show on some systems, perhaps only due to\ncompiler optimization.\n\nOn my 32-bit testing machine, this reliably crashes with the following:\n\n : Oops: divide error: 0000 [#1] PREEMPT SMP\n : CPU: 0 UID: 0 PID: 2450 Comm: dmsetup Not tainted 6.14.0-rc2+ #959\n : EIP: dm_integrity_status+0x2f8/0xab0 [dm_integrity]\n ..."
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2025-05-04T07:22:59.895Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/22c6f577b3cb184857b440ae5e5916f6c9e7021d"
        },
        {
          "url": "https://git.kernel.org/stable/c/06d9895f265282e939a8933bb18de82eba2b4dda"
        },
        {
          "url": "https://git.kernel.org/stable/c/7fb39882b20c98a9a393c244c86b56ef6933cff8"
        }
      ],
      "title": "dm-integrity: Avoid divide by zero in table status in Inline mode",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2025-21874",
    "datePublished": "2025-03-27T14:57:05.496Z",
    "dateReserved": "2024-12-29T08:45:45.781Z",
    "dateUpdated": "2025-05-04T07:22:59.895Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.1",
  "vulnerability-lookup:meta": {
    "nvd": "{\"cve\":{\"id\":\"CVE-2025-21874\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2025-03-27T15:15:55.203\",\"lastModified\":\"2025-03-27T16:45:12.210\",\"vulnStatus\":\"Awaiting Analysis\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\ndm-integrity: Avoid divide by zero in table status in Inline mode\\n\\nIn Inline mode, the journal is unused, and journal_sectors is zero.\\n\\nCalculating the journal watermark requires dividing by journal_sectors,\\nwhich should be done only if the journal is configured.\\n\\nOtherwise, a simple table query (dmsetup table) can cause OOPS.\\n\\nThis bug did not show on some systems, perhaps only due to\\ncompiler optimization.\\n\\nOn my 32-bit testing machine, this reliably crashes with the following:\\n\\n : Oops: divide error: 0000 [#1] PREEMPT SMP\\n : CPU: 0 UID: 0 PID: 2450 Comm: dmsetup Not tainted 6.14.0-rc2+ #959\\n : EIP: dm_integrity_status+0x2f8/0xab0 [dm_integrity]\\n ...\"},{\"lang\":\"es\",\"value\":\"En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: dm-integrity: Evitar la divisi\u00f3n por cero en el estado de la tabla en modo en l\u00ednea. En modo en l\u00ednea, el diario no se utiliza y journal_sectors es cero. Calcular la marca de agua del diario requiere dividir por journal_sectors, lo cual solo debe hacerse si el diario est\u00e1 configurado. De lo contrario, una simple consulta de tabla (dmsetup table) puede causar un error OOPS. Este error no se present\u00f3 en algunos sistemas, quiz\u00e1s solo debido a la optimizaci\u00f3n del compilador. En mi equipo de pruebas de 32 bits, esto falla de forma fiable con el siguiente error: : Oops: divide error: 0000 [#1] PREEMPT SMP : CPU: 0 UID: 0 PID: 2450 Comm: dmsetup Not tainted 6.14.0-rc2+ #959 : EIP: dm_integrity_status+0x2f8/0xab0 [dm_integrity] ...\"}],\"metrics\":{},\"references\":[{\"url\":\"https://git.kernel.org/stable/c/06d9895f265282e939a8933bb18de82eba2b4dda\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/22c6f577b3cb184857b440ae5e5916f6c9e7021d\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/7fb39882b20c98a9a393c244c86b56ef6933cff8\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}]}}"
  }
}


Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Sightings

Author Source Type Date

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
  • Confirmed: The vulnerability is confirmed from an analyst perspective.
  • Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
  • Patched: This vulnerability was successfully patched by the user reporting the sighting.
  • Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
  • Not confirmed: The user expresses doubt about the veracity of the vulnerability.
  • Not patched: This vulnerability was not successfully patched by the user reporting the sighting.


Loading…

Loading…