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

CVE-2023-54042 (GCVE-0-2023-54042)

Vulnerability from cvelistv5 – Published: 2025-12-24 10:56 – Updated: 2026-08-05 09:16
VLAI
Title
powerpc/64s: Fix VAS mm use after free
Summary
In the Linux kernel, the following vulnerability has been resolved: powerpc/64s: Fix VAS mm use after free The refcount on mm is dropped before the coprocessor is detached.
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: 7bc6f71bdff5f8921e324da0a8fad6f4e2e63a85 , < f7d92313002b2d543500cc417d8079aaed1fb0a8 (git)
Affected: 7bc6f71bdff5f8921e324da0a8fad6f4e2e63a85 , < 4e82f92c349ea603736ade1e814861c0182a55ad (git)
Affected: 7bc6f71bdff5f8921e324da0a8fad6f4e2e63a85 , < db8657fdd53c5e3069149d7f957cb60e63027bb2 (git)
Affected: 7bc6f71bdff5f8921e324da0a8fad6f4e2e63a85 , < 421cd1544480f2458042fe7f4913a2069c4d7251 (git)
Affected: 7bc6f71bdff5f8921e324da0a8fad6f4e2e63a85 , < b4bda59b47879cce38a6ec5a01cd3cac702b5331 (git)
guessed Create a notification for this product.
Linux Linux Affected: 5.14
Unaffected: 0 , < 5.14 (semver)
Unaffected: 5.15.121 , ≤ 5.15.* (semver)
Unaffected: 6.1.39 , ≤ 6.1.* (semver)
Unaffected: 6.3.13 , ≤ 6.3.* (semver)
Unaffected: 6.4.4 , ≤ 6.4.* (semver)
Unaffected: 6.5 , ≤ * (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/powerpc/platforms/powernv/vas-window.c",
            "arch/powerpc/platforms/pseries/vas.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "f7d92313002b2d543500cc417d8079aaed1fb0a8",
              "status": "affected",
              "version": "7bc6f71bdff5f8921e324da0a8fad6f4e2e63a85",
              "versionType": "git"
            },
            {
              "lessThan": "4e82f92c349ea603736ade1e814861c0182a55ad",
              "status": "affected",
              "version": "7bc6f71bdff5f8921e324da0a8fad6f4e2e63a85",
              "versionType": "git"
            },
            {
              "lessThan": "db8657fdd53c5e3069149d7f957cb60e63027bb2",
              "status": "affected",
              "version": "7bc6f71bdff5f8921e324da0a8fad6f4e2e63a85",
              "versionType": "git"
            },
            {
              "lessThan": "421cd1544480f2458042fe7f4913a2069c4d7251",
              "status": "affected",
              "version": "7bc6f71bdff5f8921e324da0a8fad6f4e2e63a85",
              "versionType": "git"
            },
            {
              "lessThan": "b4bda59b47879cce38a6ec5a01cd3cac702b5331",
              "status": "affected",
              "version": "7bc6f71bdff5f8921e324da0a8fad6f4e2e63a85",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "arch/powerpc/platforms/powernv/vas-window.c",
            "arch/powerpc/platforms/pseries/vas.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "5.14"
            },
            {
              "lessThan": "5.14",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.15.*",
              "status": "unaffected",
              "version": "5.15.121",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.1.*",
              "status": "unaffected",
              "version": "6.1.39",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.3.*",
              "status": "unaffected",
              "version": "6.3.13",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.4.*",
              "status": "unaffected",
              "version": "6.4.4",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "6.5",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.15.121",
                  "versionStartIncluding": "5.14",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.1.39",
                  "versionStartIncluding": "5.14",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.3.13",
                  "versionStartIncluding": "5.14",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.4.4",
                  "versionStartIncluding": "5.14",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.5",
                  "versionStartIncluding": "5.14",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\npowerpc/64s: Fix VAS mm use after free\n\nThe refcount on mm is dropped before the coprocessor is detached."
        }
      ],
      "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 vulnerability is reached through a local character device (`/dev/crypto/nx-gzip`) via `open()` + `ioctl(VAS_TX_WIN_OPEN)` + process exit/`close()`. No network or adjacent-network path exists to the VAS window close path.\nAC:L - The attacker fully controls the trigger: open a window and exit the process, at which point the VAS reference is deterministically the last `mm_count` reference, so `mmdrop()` frees the mm and the immediately following `mm_context_remove_vas_window()` dereferences it. No unwinnable race or uncontrollable precondition is involved, and the sequence can be repeated freely to groom `mm_cachep` reallocation.\nPR:L - Only an unprivileged local account is needed \u2014 there is no `capable()` or `CAP_*` check on any path from the ioctl to `vas_deallocate_window()`/`vas_win_close()`, and `Documentation/powerpc/vas-api.rst` states no special privileges are required to open the nx-gzip device, which is deliberately exposed to ordinary user-space compression libraries.\nUI:N - The attacking process performs every step itself (open, ioctl, exit); no action by another user or administrator is required.\nS:U - The corruption is confined to kernel memory managed by the same kernel security authority; no hypervisor, IOMMU, or sandbox boundary is crossed.\nC:H - The freed `mm_struct` is read after free \u2014 `context.id`, `context.copros`, `context.active_cpus`, `mm_users`, and `mm_cpumask()` \u2014 and `mm_cachep` objects are readily reallocated by forking, so the attacker can influence the contents read; a UAF of this kind is leverageable for kernel memory disclosure, and the corrupted TLB-flush scoping can leave stale translations exposing another process\u0027s memory.\nI:H - Multiple writes land in the freed object: `atomic_dec_if_positive()` on `context.copros`/`context.vas_windows`, plus cross-CPU `atomic_dec(\u0026mm-\u003econtext.active_cpus)`, `cpumask_clear_cpu()`, and a possible extra `mmdrop_lazy_tlb()` refcount underflow, giving write primitives into a reallocated live `mm_struct` (or SLUB freelist metadata) that are exploitable for further corruption.\nA:H - The use-after-free reliably corrupts freed slab memory and issues hardware TLB invalidations with a stale PID plus IPIs derived from a freed cpumask, producing oopses, `WARN_ON()` splats (fatal with `panic_on_warn`), slab corruption, and kernel panics \u2014 triggerable repeatedly by any local user."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-05T09:16:42.390Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/f7d92313002b2d543500cc417d8079aaed1fb0a8"
        },
        {
          "url": "https://git.kernel.org/stable/c/4e82f92c349ea603736ade1e814861c0182a55ad"
        },
        {
          "url": "https://git.kernel.org/stable/c/db8657fdd53c5e3069149d7f957cb60e63027bb2"
        },
        {
          "url": "https://git.kernel.org/stable/c/421cd1544480f2458042fe7f4913a2069c4d7251"
        },
        {
          "url": "https://git.kernel.org/stable/c/b4bda59b47879cce38a6ec5a01cd3cac702b5331"
        }
      ],
      "title": "powerpc/64s: Fix VAS mm use after free",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2023-54042",
    "datePublished": "2025-12-24T10:56:07.565Z",
    "dateReserved": "2025-12-24T10:53:46.181Z",
    "dateUpdated": "2026-08-05T09:16:42.390Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2023-54042",
      "date": "2026-09-17",
      "epss": "0.00136",
      "percentile": "0.03387"
    },
    "nvd": {
      "cve": {
        "affected": [
          {
            "affectedData": [
              {
                "defaultStatus": "unaffected",
                "product": "Linux",
                "programFiles": [
                  "arch/powerpc/platforms/powernv/vas-window.c",
                  "arch/powerpc/platforms/pseries/vas.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "lessThan": "f7d92313002b2d543500cc417d8079aaed1fb0a8",
                    "status": "affected",
                    "version": "7bc6f71bdff5f8921e324da0a8fad6f4e2e63a85",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "4e82f92c349ea603736ade1e814861c0182a55ad",
                    "status": "affected",
                    "version": "7bc6f71bdff5f8921e324da0a8fad6f4e2e63a85",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "db8657fdd53c5e3069149d7f957cb60e63027bb2",
                    "status": "affected",
                    "version": "7bc6f71bdff5f8921e324da0a8fad6f4e2e63a85",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "421cd1544480f2458042fe7f4913a2069c4d7251",
                    "status": "affected",
                    "version": "7bc6f71bdff5f8921e324da0a8fad6f4e2e63a85",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "b4bda59b47879cce38a6ec5a01cd3cac702b5331",
                    "status": "affected",
                    "version": "7bc6f71bdff5f8921e324da0a8fad6f4e2e63a85",
                    "versionType": "git"
                  }
                ]
              },
              {
                "defaultStatus": "affected",
                "product": "Linux",
                "programFiles": [
                  "arch/powerpc/platforms/powernv/vas-window.c",
                  "arch/powerpc/platforms/pseries/vas.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "status": "affected",
                    "version": "5.14"
                  },
                  {
                    "lessThan": "5.14",
                    "status": "unaffected",
                    "version": "0",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "5.15.*",
                    "status": "unaffected",
                    "version": "5.15.121",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.1.*",
                    "status": "unaffected",
                    "version": "6.1.39",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.3.*",
                    "status": "unaffected",
                    "version": "6.3.13",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.4.*",
                    "status": "unaffected",
                    "version": "6.4.4",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "*",
                    "status": "unaffected",
                    "version": "6.5",
                    "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\npowerpc/64s: Fix VAS mm use after free\n\nThe refcount on mm is dropped before the coprocessor is detached."
          }
        ],
        "id": "CVE-2023-54042",
        "lastModified": "2026-08-04T10:19:26.100",
        "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": "2025-12-24T11:15:57.187",
        "references": [
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/421cd1544480f2458042fe7f4913a2069c4d7251"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/4e82f92c349ea603736ade1e814861c0182a55ad"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/b4bda59b47879cce38a6ec5a01cd3cac702b5331"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/db8657fdd53c5e3069149d7f957cb60e63027bb2"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/f7d92313002b2d543500cc417d8079aaed1fb0a8"
          }
        ],
        "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "vulnStatus": "Deferred"
      }
    },
    "redhat_vex": {
      "aggregate_severity": "Low",
      "current_release_date": "2026-08-21T02:37:21+00:00",
      "cve": "CVE-2023-54042",
      "id": "CVE-2023-54042",
      "initial_release_date": "2023-01-01T00:00:00+00:00",
      "product_status:known_affected": "156",
      "product_status:known_not_affected": "118",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: powerpc/64s: Fix VAS mm use after free",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2023/cve-2023-54042.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…

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…