CVE-2026-72357 (GCVE-0-2026-72357)

Vulnerability from cvelistv5 – Published: 2026-08-15 05:55 – Updated: 2026-08-17 05:43
VLAI
Title
uprobes/x86: Use proper mm_struct in __in_uprobe_trampoline
Summary
In the Linux kernel, the following vulnerability has been resolved: uprobes/x86: Use proper mm_struct in __in_uprobe_trampoline In the unregister path we use __in_uprobe_trampoline check with current->mm for the VMA lookup, which is wrong, because we are in the tracer context, not the traced process. Add mm_struct pointer argument to __in_uprobe_trampoline and changing related callers to pass proper mm_struct pointer.
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: ba2bfc97b4629b10bd8d02b36e04f3932a04cac4 , < c9170c83b0e0fc2065a4c2bca5bf1f90c5880156 (git)
Affected: ba2bfc97b4629b10bd8d02b36e04f3932a04cac4 , < 1acddd3e22dd6912dd5d54f80462405a1f1e6bae (git)
Affected: ba2bfc97b4629b10bd8d02b36e04f3932a04cac4 , < 169328645663bae30e9abad4012d52441e085a71 (git)
guessed Create a notification for this product.
Linux Linux Affected: 6.18
Unaffected: 0 , < 6.18 (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": [
            "arch/x86/kernel/uprobes.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "c9170c83b0e0fc2065a4c2bca5bf1f90c5880156",
              "status": "affected",
              "version": "ba2bfc97b4629b10bd8d02b36e04f3932a04cac4",
              "versionType": "git"
            },
            {
              "lessThan": "1acddd3e22dd6912dd5d54f80462405a1f1e6bae",
              "status": "affected",
              "version": "ba2bfc97b4629b10bd8d02b36e04f3932a04cac4",
              "versionType": "git"
            },
            {
              "lessThan": "169328645663bae30e9abad4012d52441e085a71",
              "status": "affected",
              "version": "ba2bfc97b4629b10bd8d02b36e04f3932a04cac4",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "arch/x86/kernel/uprobes.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.18"
            },
            {
              "lessThan": "6.18",
              "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": "6.18",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.1.5",
                  "versionStartIncluding": "6.18",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.2",
                  "versionStartIncluding": "6.18",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nuprobes/x86: Use proper mm_struct in __in_uprobe_trampoline\n\nIn the unregister path we use __in_uprobe_trampoline check with\ncurrent-\u003emm for the VMA lookup, which is wrong, because we are\nin the tracer context, not the traced process.\n\nAdd mm_struct pointer argument to __in_uprobe_trampoline and\nchanging related callers to pass proper mm_struct pointer."
        }
      ],
      "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 - Reachable only via local syscalls (bpf/BPF_PROG_LOAD, bpf/BPF_LINK_CREATE for uprobes, perf_event_open, close/exit) that register and tear down x86 optimized uprobes; no network, adjacent, or physical entry path exists.\nAC:L - Syzkaller reproduced this reliably by attaching a BPF uprobe-multi link and exiting; the attacker controls probe registration, target file/offset, and teardown timing, including cases where unregister runs with current-\u003emm NULL or a tracer mm.\nPR:L - Triggering requires CAP_BPF plus CAP_PERFMON for BPF uprobes or CAP_SYS_ADMIN for perf uprobes; these capabilities are grantable inside user namespaces and do not require init-namespace root under kernel CNA guidance.\nUI:N - No victim interaction is required; a local attacker fully drives uprobe attach and unregister (including process exit closing the BPF link), without needing another user to open files or perform actions.\nS:U - Impact stays within the kernel/host privilege domain (kernel panic and corruption of probed process executable text); it does not cross a VM, container, or IOMMU security boundary that would change CVSS scope.\nC:H - Using the wrong mm for trampoline VMA lookup can mis-detect optimization state and drive int3_update/unoptimize on executable pages; this class of kernel memory corruption is exploitable for information disclosure, not merely a bounded leak.\nI:H - Incorrect is_optimized decisions during unregister can invoke swbp_unoptimize/int3_update on the traced vma, writing attacker-influenced instruction bytes into executable mappings and enabling control-flow hijack in the probed process.\nA:H - Syzkaller hit a KASAN null-ptr-deref GPF in mtree_load via set_orig_insn during bpf_uprobe_multi_link_release on process exit, producing an oops and kernel panic; repeated attach/exit can deny service."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-17T05:43:15.438Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/c9170c83b0e0fc2065a4c2bca5bf1f90c5880156"
        },
        {
          "url": "https://git.kernel.org/stable/c/1acddd3e22dd6912dd5d54f80462405a1f1e6bae"
        },
        {
          "url": "https://git.kernel.org/stable/c/169328645663bae30e9abad4012d52441e085a71"
        }
      ],
      "title": "uprobes/x86: Use proper mm_struct in __in_uprobe_trampoline",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-72357",
    "datePublished": "2026-08-15T05:55:58.124Z",
    "dateReserved": "2026-08-09T03:40:39.921Z",
    "dateUpdated": "2026-08-17T05:43:15.438Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-72357",
      "date": "2026-09-22",
      "epss": "0.00173",
      "percentile": "0.07082"
    },
    "nvd": {
      "cve": {
        "affected": [
          {
            "affectedData": [
              {
                "defaultStatus": "unaffected",
                "product": "Linux",
                "programFiles": [
                  "arch/x86/kernel/uprobes.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "lessThan": "c9170c83b0e0fc2065a4c2bca5bf1f90c5880156",
                    "status": "affected",
                    "version": "ba2bfc97b4629b10bd8d02b36e04f3932a04cac4",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "1acddd3e22dd6912dd5d54f80462405a1f1e6bae",
                    "status": "affected",
                    "version": "ba2bfc97b4629b10bd8d02b36e04f3932a04cac4",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "169328645663bae30e9abad4012d52441e085a71",
                    "status": "affected",
                    "version": "ba2bfc97b4629b10bd8d02b36e04f3932a04cac4",
                    "versionType": "git"
                  }
                ]
              },
              {
                "defaultStatus": "affected",
                "product": "Linux",
                "programFiles": [
                  "arch/x86/kernel/uprobes.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "status": "affected",
                    "version": "6.18"
                  },
                  {
                    "lessThan": "6.18",
                    "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\nuprobes/x86: Use proper mm_struct in __in_uprobe_trampoline\n\nIn the unregister path we use __in_uprobe_trampoline check with\ncurrent-\u003emm for the VMA lookup, which is wrong, because we are\nin the tracer context, not the traced process.\n\nAdd mm_struct pointer argument to __in_uprobe_trampoline and\nchanging related callers to pass proper mm_struct pointer."
          }
        ],
        "id": "CVE-2026-72357",
        "lastModified": "2026-08-17T06:18:39.890",
        "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:22:09.147",
        "references": [
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/169328645663bae30e9abad4012d52441e085a71"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/1acddd3e22dd6912dd5d54f80462405a1f1e6bae"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/c9170c83b0e0fc2065a4c2bca5bf1f90c5880156"
          }
        ],
        "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "vulnStatus": "Received"
      }
    },
    "redhat_vex": {
      "aggregate_severity": "Moderate",
      "current_release_date": "2026-08-19T17:16:18+00:00",
      "cve": "CVE-2026-72357",
      "id": "CVE-2026-72357",
      "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: uprobes/x86: Use proper mm_struct in __in_uprobe_trampoline",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-72357.json",
      "version": "3"
    },
    "suse_vex": {
      "aggregate_severity": "moderate",
      "current_release_date": "2026-09-01T17:14:16Z",
      "cve": "CVE-2026-72357",
      "id": "CVE-2026-72357",
      "initial_release_date": "2026-09-01T17:14:16Z",
      "product_status:known_not_affected": "362",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2026-72357",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2026-72357.json",
      "version": "2"
    }
  }
}



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…

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…