CVE-2026-72162 (GCVE-0-2026-72162)

Vulnerability from cvelistv5 – Published: 2026-08-15 05:53 – Updated: 2026-08-18 06:56
VLAI
Title
ocfs2: fix UBSAN array-index-out-of-bounds in ocfs2_sum_rightmost_rec
Summary
In the Linux kernel, the following vulnerability has been resolved: ocfs2: fix UBSAN array-index-out-of-bounds in ocfs2_sum_rightmost_rec [BUG] On-disk corruption setting l_next_free_rec to 0 in an inode's embedded extent list triggers a UBSAN panic on the next write to that file. [CAUSE] ocfs2_sum_rightmost_rec() computes i = le16_to_cpu(el->l_next_free_rec) - 1 and accesses el->l_recs[i] without validating i. When l_next_free_rec is 0, i becomes -1; when l_next_free_rec exceeds l_count, i falls past the end of the array. Either case violates the __counted_by_le(l_count) annotation on l_recs[] and triggers UBSAN. [FIX] Validate the inode's embedded extent list when the inode is read, in ocfs2_validate_inode_block(): l_count must be non-zero and no larger than the inode block can hold, and l_next_free_rec must not exceed l_count. A corrupt list is rejected at read time, before the b-tree code can index l_recs[] out of bounds.
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: dcd0538ff4e854fa9d7f4630b359ca8fdb5cb5a8 , < 671889c553ea55e2da6a4f3b15f4c0fa40f2f0d1 (git)
Affected: dcd0538ff4e854fa9d7f4630b359ca8fdb5cb5a8 , < 858aa4965ffa8c0d4bb5dd835ac4f1c9a1dcab85 (git)
Affected: dcd0538ff4e854fa9d7f4630b359ca8fdb5cb5a8 , < 452a8467be8143747292218212671deeb186d2ae (git)
guessed Create a notification for this product.
Linux Linux Affected: 2.6.22
Unaffected: 0 , < 2.6.22 (semver)
Unaffected: 6.18.40 , ≤ 6.18.* (semver)
Unaffected: 7.1.5 , ≤ 7.1.* (semver)
Unaffected: 7.2 , ≤ * (original_commit_for_fix)
guessed Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "fs/ocfs2/inode.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "671889c553ea55e2da6a4f3b15f4c0fa40f2f0d1",
              "status": "affected",
              "version": "dcd0538ff4e854fa9d7f4630b359ca8fdb5cb5a8",
              "versionType": "git"
            },
            {
              "lessThan": "858aa4965ffa8c0d4bb5dd835ac4f1c9a1dcab85",
              "status": "affected",
              "version": "dcd0538ff4e854fa9d7f4630b359ca8fdb5cb5a8",
              "versionType": "git"
            },
            {
              "lessThan": "452a8467be8143747292218212671deeb186d2ae",
              "status": "affected",
              "version": "dcd0538ff4e854fa9d7f4630b359ca8fdb5cb5a8",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "fs/ocfs2/inode.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "2.6.22"
            },
            {
              "lessThan": "2.6.22",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.40",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.1.*",
              "status": "unaffected",
              "version": "7.1.5",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "7.2",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.40",
                  "versionStartIncluding": "2.6.22",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.1.5",
                  "versionStartIncluding": "2.6.22",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.2",
                  "versionStartIncluding": "2.6.22",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nocfs2: fix UBSAN array-index-out-of-bounds in ocfs2_sum_rightmost_rec\n\n[BUG]\nOn-disk corruption setting l_next_free_rec to 0 in an inode\u0027s embedded\nextent list triggers a UBSAN panic on the next write to that file.\n\n[CAUSE]\nocfs2_sum_rightmost_rec() computes\ni = le16_to_cpu(el-\u003el_next_free_rec) - 1\nand accesses el-\u003el_recs[i] without validating i. When l_next_free_rec\nis 0, i becomes -1; when l_next_free_rec exceeds l_count, i falls\npast the end of the array. Either case violates the\n__counted_by_le(l_count) annotation on l_recs[] and triggers UBSAN.\n\n[FIX]\nValidate the inode\u0027s embedded extent list when the inode is read, in\nocfs2_validate_inode_block(): l_count must be non-zero and no larger\nthan the inode block can hold, and l_next_free_rec must not exceed\nl_count. A corrupt list is rejected at read time, before the b-tree\ncode can index l_recs[] out of bounds."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 7.8,
            "baseSeverity": "HIGH",
            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:L - The bug is reached only via local VFS write paths on a mounted OCFS2 volume (write/mmap extending allocation), not from network packet handling or remote protocols; exploitation requires local syscall access to a mounted filesystem.\nAC:L - An attacker can reliably craft on-disk inode metadata (e.g., l_next_free_rec=0) in an OCFS2 image and trigger btree growth with a normal extending write; syzkaller reproduced this deterministically without races or victim-specific timing.\nPR:L - Full exploitation requires mounting a crafted OCFS2 image and writing to it; CAP_SYS_ADMIN for mount/loop setup is obtainable by an unprivileged user via user namespaces, matching the low-privilege bar used for comparable OCFS2 corruption CVEs.\nUI:N - No victim interaction is required when the attacker crafts the corrupt image, mounts it (including via user namespace), and performs the triggering write themselves; no third party must open files or take other actions.\nS:U - Impact is confined to kernel memory/filesystem integrity on the host processing the corrupt OCFS2 metadata; it does not cross VM, container, or IOMMU security boundaries into another authority.\nC:H - The flaw is an out-of-bounds read of extent records from attacker-controlled on-disk fields; even when UBSAN traps, the invalid index access can expose adjacent inode metadata and is classed as information-disclosure-capable memory corruption.\nI:H - The out-of-bounds sum feeds btree growth/shift logic that writes derived cluster counts and tree pointers back to disk, enabling attacker-influenced metadata corruption beyond the immediate read primitive.\nA:H - On UBSAN-enabled kernels the invalid array index triggers a kernel panic on write; even without UBSAN, corrupt btree updates from the bad sum can crash or destabilize the system, satisfying high availability impact."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-18T06:56:14.095Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/671889c553ea55e2da6a4f3b15f4c0fa40f2f0d1"
        },
        {
          "url": "https://git.kernel.org/stable/c/858aa4965ffa8c0d4bb5dd835ac4f1c9a1dcab85"
        },
        {
          "url": "https://git.kernel.org/stable/c/452a8467be8143747292218212671deeb186d2ae"
        }
      ],
      "title": "ocfs2: fix UBSAN array-index-out-of-bounds in ocfs2_sum_rightmost_rec",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-72162",
    "datePublished": "2026-08-15T05:53:30.420Z",
    "dateReserved": "2026-08-09T03:40:39.909Z",
    "dateUpdated": "2026-08-18T06:56:14.095Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-72162",
      "date": "2026-09-20",
      "epss": "0.00162",
      "percentile": "0.05797"
    },
    "microsoft_vex": {
      "current_release_date": "2026-08-23T14:45:56.000Z",
      "cve": "CVE-2026-72162",
      "id": "msrc_CVE-2026-72162",
      "initial_release_date": "2026-08-23T14:45:56.000Z",
      "product_status:known_not_affected": "1",
      "source": "Microsoft CSAF VEX",
      "status": "final",
      "title": "ocfs2: fix UBSAN array-index-out-of-bounds in ocfs2_sum_rightmost_rec",
      "url": "https://msrc.microsoft.com/csaf/vex/2026/msrc_cve-2026-72162.json",
      "version": "1"
    },
    "nvd": {
      "cve": {
        "affected": [
          {
            "affectedData": [
              {
                "defaultStatus": "unaffected",
                "product": "Linux",
                "programFiles": [
                  "fs/ocfs2/inode.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "lessThan": "671889c553ea55e2da6a4f3b15f4c0fa40f2f0d1",
                    "status": "affected",
                    "version": "dcd0538ff4e854fa9d7f4630b359ca8fdb5cb5a8",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "858aa4965ffa8c0d4bb5dd835ac4f1c9a1dcab85",
                    "status": "affected",
                    "version": "dcd0538ff4e854fa9d7f4630b359ca8fdb5cb5a8",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "452a8467be8143747292218212671deeb186d2ae",
                    "status": "affected",
                    "version": "dcd0538ff4e854fa9d7f4630b359ca8fdb5cb5a8",
                    "versionType": "git"
                  }
                ]
              },
              {
                "defaultStatus": "affected",
                "product": "Linux",
                "programFiles": [
                  "fs/ocfs2/inode.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "status": "affected",
                    "version": "2.6.22"
                  },
                  {
                    "lessThan": "2.6.22",
                    "status": "unaffected",
                    "version": "0",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.18.*",
                    "status": "unaffected",
                    "version": "6.18.40",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "7.1.*",
                    "status": "unaffected",
                    "version": "7.1.5",
                    "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\nocfs2: fix UBSAN array-index-out-of-bounds in ocfs2_sum_rightmost_rec\n\n[BUG]\nOn-disk corruption setting l_next_free_rec to 0 in an inode\u0027s embedded\nextent list triggers a UBSAN panic on the next write to that file.\n\n[CAUSE]\nocfs2_sum_rightmost_rec() computes\ni = le16_to_cpu(el-\u003el_next_free_rec) - 1\nand accesses el-\u003el_recs[i] without validating i. When l_next_free_rec\nis 0, i becomes -1; when l_next_free_rec exceeds l_count, i falls\npast the end of the array. Either case violates the\n__counted_by_le(l_count) annotation on l_recs[] and triggers UBSAN.\n\n[FIX]\nValidate the inode\u0027s embedded extent list when the inode is read, in\nocfs2_validate_inode_block(): l_count must be non-zero and no larger\nthan the inode block can hold, and l_next_free_rec must not exceed\nl_count. A corrupt list is rejected at read time, before the b-tree\ncode can index l_recs[] out of bounds."
          }
        ],
        "id": "CVE-2026-72162",
        "lastModified": "2026-08-18T07:16:53.017",
        "metrics": {
          "cvssMetricV31": [
            {
              "cvssData": {
                "attackComplexity": "LOW",
                "attackVector": "LOCAL",
                "availabilityImpact": "HIGH",
                "baseScore": 7.8,
                "baseSeverity": "HIGH",
                "confidentialityImpact": "HIGH",
                "integrityImpact": "HIGH",
                "privilegesRequired": "LOW",
                "scope": "UNCHANGED",
                "userInteraction": "NONE",
                "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
                "version": "3.1"
              },
              "exploitabilityScore": 1.8,
              "impactScore": 5.9,
              "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
              "type": "Secondary"
            }
          ]
        },
        "published": "2026-08-15T06:21:34.117",
        "references": [
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/452a8467be8143747292218212671deeb186d2ae"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/671889c553ea55e2da6a4f3b15f4c0fa40f2f0d1"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/858aa4965ffa8c0d4bb5dd835ac4f1c9a1dcab85"
          }
        ],
        "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "vulnStatus": "Received"
      }
    },
    "redhat_vex": {
      "aggregate_severity": "Moderate",
      "current_release_date": "2026-08-18T14:32:42+00:00",
      "cve": "CVE-2026-72162",
      "id": "CVE-2026-72162",
      "initial_release_date": "2026-08-15T00:00:00+00:00",
      "product_status:known_not_affected": "274",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: ocfs2: fix UBSAN array-index-out-of-bounds in ocfs2_sum_rightmost_rec",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-72162.json",
      "version": "3"
    },
    "suse_vex": {
      "aggregate_severity": "moderate",
      "current_release_date": "2026-09-15T01:28:44Z",
      "cve": "CVE-2026-72162",
      "id": "CVE-2026-72162",
      "initial_release_date": "2026-08-31T13:29:47Z",
      "product_status:known_affected": "362",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2026-72162",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2026-72162.json",
      "version": "4"
    }
  }
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

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.

Loading…

Detection rules are retrieved from Rulezet.

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.


Loading…