# CVE-2026-97933: tracing: Take trace_array reference when opening a tracer options file

> A race condition in the Linux kernel tracing subsystem allows a local privileged attacker to trigger a use-after-free, potentially causing a crash or privilege escalation.

- **Severity:** Not scored
- **Exploited in the wild:** Not known
- **Login needed:** An administrator
- **Attackable:** Local or same network only
- **Victim action needed:** Not needed
- **Fix available:** Yes
- **Published:** 25 Sep 2026
- **Updated:** 21 Oct 2026
- **Also known as:** AZL-104210, BELL-CVE-2026-97933, DEBIAN-CVE-2026-97933, GHSA-47xm-6cxx-cm4j, UBUNTU-CVE-2026-97933

## What is CVE-2026-97933?

CVE-2026-97933 is an use after free vulnerability in Linux, published on 25 Sep 2026. It can only be exploited from the same machine or local network, with no action from the victim.

### Official description

In the Linux kernel, the following vulnerability has been resolved:

tracing: Take trace_array reference when opening a tracer options file

When a tracer option file is opened, it is passed a descriptor that points
to an element on the trace_array's topts array. This element has
information to find the trace array and other information. It uses this
element to take a reference of the trace_array so that the trace_array
does not get removed while this file is opened.

Unfortunately, there's a race condition where the element itself could be
freed by the removal of the instance the trace_array represents causing a
use-after-free as this element that is used to find the trace_array to
increment its reference counter is also freed when the instance is
removed.

To solve this, add a trace_array_tracer_options_get() helper function that
will take the address of the element that is passed to the open function
by the inode->i_private pointer and search all the trace_arrays under a
lock to find the one that the element's address is in the range of the
trace_arrays topts array elements. When a match happens, that trace_array's
reference would be increased.

Note, there's a race where if an admin was deleting and creating trace
instances at the same time and the memory of the old trace_array's array
matched the memory of the new trace_array that it could in theory open the
option from the wrong trace array. But we do not care because it would be
stupid to perform that kind of action. As long as the only thing that can
happen is that the option from the wrong trace array is used and doesn't
crash the kernel it will only make the user confused. But if they are
doing something stupid like this, they are already confused, so no harm
done.

## Which versions are affected by CVE-2026-97933?


## How do I fix CVE-2026-97933?

Apply the vendor's patch.

## Is CVE-2026-97933 being exploited?

There is no known exploitation of CVE-2026-97933 in the wild and no public exploit code.

## Fix prompt for AI coding agents

```text
Check this codebase for CVE-2026-97933 and fix it if it is affected.

What it is: CVE-2026-97933 is an use after free vulnerability in Linux, published on 25 Sep 2026. It can only be exploited from the same machine or local network, with no action from the victim.
Exploitation: There is no known exploitation of CVE-2026-97933 in the wild and no public exploit code.

Affected product: Linux. No package-level version data is available, so check the vendor advisory linked from the reference page.

Task:
1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.
2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.
3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.
4. Run the tests and summarise what changed and why.
5. If nothing in the project is affected, say so and change nothing.

Reference: https://insights.sbomify.com/CVE-2026-97933/ (Markdown: https://insights.sbomify.com/CVE-2026-97933/index.md)
```

## Sources

- CVE record: https://www.cve.org/CVERecord?id=CVE-2026-97933
- NVD: https://nvd.nist.gov/vuln/detail/CVE-2026-97933
- OSV: https://osv.dev/vulnerability/CVE-2026-97933

---
From sbomify Insights: https://insights.sbomify.com/CVE-2026-97933/
Summaries are generated and may contain mistakes; the official description above is the record.
