GCVE Workshop - 22 September 2026 (14:00-18:00), Luxembourg Before The Vulnopticon Conference - Registration

CVE-2026-72460 (GCVE-0-2026-72460)

Vulnerability from cvelistv5 – Published: 2026-08-15 05:57 – Updated: 2026-08-17 05:44
VLAI
Title
apparmor: check label build before no_new_privs test
Summary
In the Linux kernel, the following vulnerability has been resolved: apparmor: check label build before no_new_privs test aa_change_profile() builds a replacement label with fn_label_build_in_scope() before the no_new_privs subset check. The build helper can fail and return NULL or an ERR_PTR, but the result was passed to aa_label_is_unconfined_subset() before the existing IS_ERR_OR_NULL() check. Reuse the existing target-label build failure handling immediately after the build. This preserves the current audit handling while preventing the subset helper from dereferencing an invalid label.
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: e00b02bb6ac2a1893227ce8014b649028d6425d2 , < a29f06db44b4c94597ded58f639eed3e21781ac3 (git)
Affected: e00b02bb6ac2a1893227ce8014b649028d6425d2 , < cfc224866530a6842b6c2d2d30ef6a9b0e64bb9c (git)
Affected: e00b02bb6ac2a1893227ce8014b649028d6425d2 , < 31cb109db5e6322ed22304fd5c0dedbaa438d6d3 (git)
Affected: e00b02bb6ac2a1893227ce8014b649028d6425d2 , < b7c45c05a396a017c49ac7949de240a0dfc0ac4e (git)
Affected: e00b02bb6ac2a1893227ce8014b649028d6425d2 , < d84bb195d208adbf77f012ca2a96e11163f6def1 (git)
Affected: e00b02bb6ac2a1893227ce8014b649028d6425d2 , < d82160132345688a09cbaa648cfdd16bb32e8ea2 (git)
Affected: e00b02bb6ac2a1893227ce8014b649028d6425d2 , < ec926b2a351eeeb31e6c9aee02e0c32f94b5588f (git)
Affected: e00b02bb6ac2a1893227ce8014b649028d6425d2 , < a58cafd38b46fb1a2220e2fbbcfe291ea75fa147 (git)
guessed Create a notification for this product.
Linux Linux Affected: 4.13
Unaffected: 0 , < 4.13 (semver)
Unaffected: 5.10.261 , ≤ 5.10.* (semver)
Unaffected: 5.15.212 , ≤ 5.15.* (semver)
Unaffected: 6.1.178 , ≤ 6.1.* (semver)
Unaffected: 6.6.145 , ≤ 6.6.* (semver)
Unaffected: 6.12.97 , ≤ 6.12.* (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": [
            "security/apparmor/domain.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "a29f06db44b4c94597ded58f639eed3e21781ac3",
              "status": "affected",
              "version": "e00b02bb6ac2a1893227ce8014b649028d6425d2",
              "versionType": "git"
            },
            {
              "lessThan": "cfc224866530a6842b6c2d2d30ef6a9b0e64bb9c",
              "status": "affected",
              "version": "e00b02bb6ac2a1893227ce8014b649028d6425d2",
              "versionType": "git"
            },
            {
              "lessThan": "31cb109db5e6322ed22304fd5c0dedbaa438d6d3",
              "status": "affected",
              "version": "e00b02bb6ac2a1893227ce8014b649028d6425d2",
              "versionType": "git"
            },
            {
              "lessThan": "b7c45c05a396a017c49ac7949de240a0dfc0ac4e",
              "status": "affected",
              "version": "e00b02bb6ac2a1893227ce8014b649028d6425d2",
              "versionType": "git"
            },
            {
              "lessThan": "d84bb195d208adbf77f012ca2a96e11163f6def1",
              "status": "affected",
              "version": "e00b02bb6ac2a1893227ce8014b649028d6425d2",
              "versionType": "git"
            },
            {
              "lessThan": "d82160132345688a09cbaa648cfdd16bb32e8ea2",
              "status": "affected",
              "version": "e00b02bb6ac2a1893227ce8014b649028d6425d2",
              "versionType": "git"
            },
            {
              "lessThan": "ec926b2a351eeeb31e6c9aee02e0c32f94b5588f",
              "status": "affected",
              "version": "e00b02bb6ac2a1893227ce8014b649028d6425d2",
              "versionType": "git"
            },
            {
              "lessThan": "a58cafd38b46fb1a2220e2fbbcfe291ea75fa147",
              "status": "affected",
              "version": "e00b02bb6ac2a1893227ce8014b649028d6425d2",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "security/apparmor/domain.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "4.13"
            },
            {
              "lessThan": "4.13",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.10.*",
              "status": "unaffected",
              "version": "5.10.261",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.15.*",
              "status": "unaffected",
              "version": "5.15.212",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.1.*",
              "status": "unaffected",
              "version": "6.1.178",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.6.*",
              "status": "unaffected",
              "version": "6.6.145",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.12.*",
              "status": "unaffected",
              "version": "6.12.97",
              "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": "5.10.261",
                  "versionStartIncluding": "4.13",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.15.212",
                  "versionStartIncluding": "4.13",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.1.178",
                  "versionStartIncluding": "4.13",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.6.145",
                  "versionStartIncluding": "4.13",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.12.97",
                  "versionStartIncluding": "4.13",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.40",
                  "versionStartIncluding": "4.13",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.1.5",
                  "versionStartIncluding": "4.13",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.2",
                  "versionStartIncluding": "4.13",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\napparmor: check label build before no_new_privs test\n\naa_change_profile() builds a replacement label with\nfn_label_build_in_scope() before the no_new_privs subset check. The build\nhelper can fail and return NULL or an ERR_PTR, but the result was passed\nto aa_label_is_unconfined_subset() before the existing IS_ERR_OR_NULL()\ncheck.\n\nReuse the existing target-label build failure handling immediately after\nthe build. This preserves the current audit handling while preventing the\nsubset helper from dereferencing an invalid label."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 7.1,
            "baseSeverity": "HIGH",
            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:L - The flaw is reached only through a local write to /proc/self/attr/current or /proc/self/attr/exec (changeprofile/exec), which flows through proc_pid_attr_write and the AppArmor setprocattr hook into aa_change_profile(); there is no network, adjacent-radio, or physical-device entry point.\nAC:L - Once a confined task with policy-granted changeprofile and PR_SET_NO_NEW_PRIVS calls the interface, fn_label_build_in_scope() failure (e.g., GFP_KERNEL ENOMEM from memory pressure) is reliably attacker-influenced and immediately triggers the invalid dereference without races or victim-dependent timing.\nPR:L - Exploitation requires a local unprivileged process confined by AppArmor whose policy permits changeprofile/onexec to the requested target; prctl(PR_SET_NO_NEW_PRIVS) is self-settable and does not require real root or init-namespace capabilities.\nUI:N - The attacker triggers the bug by writing to their own process attribute file; no separate victim action such as opening a file, mounting a filesystem, or clicking a link is required.\nS:U - The vulnerable AppArmor kernel code and the resulting kernel oops/panic affect the same OS security authority; this is not a VM escape, IOMMU bypass, or cross-authority sandbox breakout as defined by CVSS scope.\nC:H - aa_label_is_unconfined_subset() dereferences the failed label pointer (NULL or ERR_PTR) to read aa_label fields such as size/vec; ERR_PTR values are non-NULL kernel-range addresses, so the fault path includes an invalid kernel-memory read that can leak data before oops under worst-case layout.\nI:N - The bug performs invalid reads through a bad label pointer and does not write memory, corrupt adjacent objects, or complete an unauthorized aa_replace_current_label(); failed builds are still rejected later, so integrity impact is limited to the read-side fault rather than modification or code execution.\nA:H - Dereferencing NULL or ERR_PTR labels in aa_label_is_unconfined_subset() causes a kernel BUG/oops/panic, yielding host-wide denial of service on AppArmor-enabled systems and repeatable crashes from the same procattr write."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-17T05:44:26.306Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/a29f06db44b4c94597ded58f639eed3e21781ac3"
        },
        {
          "url": "https://git.kernel.org/stable/c/cfc224866530a6842b6c2d2d30ef6a9b0e64bb9c"
        },
        {
          "url": "https://git.kernel.org/stable/c/31cb109db5e6322ed22304fd5c0dedbaa438d6d3"
        },
        {
          "url": "https://git.kernel.org/stable/c/b7c45c05a396a017c49ac7949de240a0dfc0ac4e"
        },
        {
          "url": "https://git.kernel.org/stable/c/d84bb195d208adbf77f012ca2a96e11163f6def1"
        },
        {
          "url": "https://git.kernel.org/stable/c/d82160132345688a09cbaa648cfdd16bb32e8ea2"
        },
        {
          "url": "https://git.kernel.org/stable/c/ec926b2a351eeeb31e6c9aee02e0c32f94b5588f"
        },
        {
          "url": "https://git.kernel.org/stable/c/a58cafd38b46fb1a2220e2fbbcfe291ea75fa147"
        }
      ],
      "title": "apparmor: check label build before no_new_privs test",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-72460",
    "datePublished": "2026-08-15T05:57:05.404Z",
    "dateReserved": "2026-08-09T03:40:39.932Z",
    "dateUpdated": "2026-08-17T05:44:26.306Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-72460",
      "date": "2026-09-04",
      "epss": "0.00126",
      "percentile": "0.02547"
    },
    "nvd": "{\"cve\":{\"id\":\"CVE-2026-72460\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2026-08-15T06:22:19.993\",\"lastModified\":\"2026-08-17T06:19:13.667\",\"vulnStatus\":\"Received\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\napparmor: check label build before no_new_privs test\\n\\naa_change_profile() builds a replacement label with\\nfn_label_build_in_scope() before the no_new_privs subset check. The build\\nhelper can fail and return NULL or an ERR_PTR, but the result was passed\\nto aa_label_is_unconfined_subset() before the existing IS_ERR_OR_NULL()\\ncheck.\\n\\nReuse the existing target-label build failure handling immediately after\\nthe build. This preserves the current audit handling while preventing the\\nsubset helper from dereferencing an invalid label.\"}],\"affected\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"affectedData\":[{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"unaffected\",\"programFiles\":[\"security/apparmor/domain.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"e00b02bb6ac2a1893227ce8014b649028d6425d2\",\"lessThan\":\"a29f06db44b4c94597ded58f639eed3e21781ac3\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"e00b02bb6ac2a1893227ce8014b649028d6425d2\",\"lessThan\":\"cfc224866530a6842b6c2d2d30ef6a9b0e64bb9c\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"e00b02bb6ac2a1893227ce8014b649028d6425d2\",\"lessThan\":\"31cb109db5e6322ed22304fd5c0dedbaa438d6d3\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"e00b02bb6ac2a1893227ce8014b649028d6425d2\",\"lessThan\":\"b7c45c05a396a017c49ac7949de240a0dfc0ac4e\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"e00b02bb6ac2a1893227ce8014b649028d6425d2\",\"lessThan\":\"d84bb195d208adbf77f012ca2a96e11163f6def1\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"e00b02bb6ac2a1893227ce8014b649028d6425d2\",\"lessThan\":\"d82160132345688a09cbaa648cfdd16bb32e8ea2\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"e00b02bb6ac2a1893227ce8014b649028d6425d2\",\"lessThan\":\"ec926b2a351eeeb31e6c9aee02e0c32f94b5588f\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"e00b02bb6ac2a1893227ce8014b649028d6425d2\",\"lessThan\":\"a58cafd38b46fb1a2220e2fbbcfe291ea75fa147\",\"versionType\":\"git\",\"status\":\"affected\"}]},{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"affected\",\"programFiles\":[\"security/apparmor/domain.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"4.13\",\"status\":\"affected\"},{\"version\":\"0\",\"lessThan\":\"4.13\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"5.10.261\",\"lessThanOrEqual\":\"5.10.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"5.15.212\",\"lessThanOrEqual\":\"5.15.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.1.178\",\"lessThanOrEqual\":\"6.1.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.6.145\",\"lessThanOrEqual\":\"6.6.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.12.97\",\"lessThanOrEqual\":\"6.12.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.18.40\",\"lessThanOrEqual\":\"6.18.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"7.1.5\",\"lessThanOrEqual\":\"7.1.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"7.2\",\"lessThanOrEqual\":\"*\",\"versionType\":\"original_commit_for_fix\",\"status\":\"unaffected\"}]}]}],\"metrics\":{\"cvssMetricV31\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"type\":\"Secondary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H\",\"baseScore\":7.1,\"baseSeverity\":\"HIGH\",\"attackVector\":\"LOCAL\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"LOW\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"HIGH\",\"integrityImpact\":\"NONE\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":1.8,\"impactScore\":5.2}]},\"references\":[{\"url\":\"https://git.kernel.org/stable/c/31cb109db5e6322ed22304fd5c0dedbaa438d6d3\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/a29f06db44b4c94597ded58f639eed3e21781ac3\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/a58cafd38b46fb1a2220e2fbbcfe291ea75fa147\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/b7c45c05a396a017c49ac7949de240a0dfc0ac4e\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/cfc224866530a6842b6c2d2d30ef6a9b0e64bb9c\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/d82160132345688a09cbaa648cfdd16bb32e8ea2\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/d84bb195d208adbf77f012ca2a96e11163f6def1\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/ec926b2a351eeeb31e6c9aee02e0c32f94b5588f\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}]}}",
    "redhat_vex": {
      "aggregate_severity": "Moderate",
      "current_release_date": "2026-08-18T14:33:37+00:00",
      "cve": "CVE-2026-72460",
      "id": "CVE-2026-72460",
      "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: apparmor: check label build before no_new_privs test",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-72460.json",
      "version": "3"
    }
  }
}



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…

Loading…