public inbox for [email protected]
 help / color / mirror / Atom feed
This is experimental automated Linux kernel CVE triage research. Results are heuristic and may be incorrect. This site is not an official vendor advisory or severity source.
From: AL-KERNEL <[email protected]>
To: [email protected]
Subject: [CVE-2026-92509][MODERATE 7.0] RDMA/core: Fix potential use after free in counter_release() [ Upstream
Date: Thu, 17 Sep 2026 16:00:06 -0400	[thread overview]
Message-ID: <[email protected]> (raw)

CVE: CVE-2026-92509
Priority: MODERATE 7.0
AL-KERNEL base severity: MODERATE
KPANIC flag: YES
Patch: RDMA/core: Fix potential use after free in counter_release() [ Upstream
Commit: 5eb0c57a8b568eb08f464861d84d518a2af939ac
Upstream patch: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=5eb0c57a8b568eb08f464861d84d518a2af939ac
Original CVE announcement: https://lore.kernel.org/linux-cve-announce/?q=CVE-2026-92509
Analysis date: Thu, 17 Sep 2026 16:00:06 -0400
ActionableScore: 5
ActionableScore lower bound: 4
Actionable bucket: Actionable Moderate / Strong Important candidate requiring manual review
Manual review required: YES

Summary:
No one-sentence report phrase was found.

======================================================================
ABOUT THIS REPORT
======================================================================

The original Linux kernel CVE announcement for CVE-2026-92509 is available here:
https://lore.kernel.org/linux-cve-announce/?q=CVE-2026-92509

The original announcement does not normally provide a security severity
estimate, CVSS assessment, or enough information to determine whether the
reported kernel bug represents a practically relevant security issue.

This report was generated by AL-KERNEL, an AI-assisted Linux kernel
vulnerability analysis system developed by Alexander Larkin. It combines
an autonomous classifier with LLM-assisted technical analysis and a
separate ActionableScore mechanism.

The purpose of this report is to prioritize Linux kernel CVEs before
manual review, identify cases that require prompt investigation, and
support automatic closure of issues that are unlikely to have meaningful
security impact.

Published priority for this report: MODERATE 7.0
Manual review required: YES

A detailed explanation of the methodology and priority rules is included
at the end of this message.

======================================================================
AL-KERNEL CLASSIFICATION RESULT
======================================================================

CVE-2026-92509	MODERATE	https://www.kernelcve.org/list/?q=CVE-2026-92509 CHECK WITH IMPACT FROM ORIG NN IMPORTANT	Maybe valid. Check manually. Hints by AL-KERNEL: The best (paranoid) CVSS is 'AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H';*CWE-416;CWE-362;*CWE-664;Other CVSS 'AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H';BEST CVSS score: '7';DESCR 'A race in RDMA counter destruction can leave a counter visible through restrack while vendor specific resources are already being released. A local process using the RDMA netlink path may obtain or race a reference to the counter during this destruction window, creating a use after free candidate in kernel memory. For the CVSS the PR:L is used because triggering requires a local user or process context with access to RDMA netlink operations, but not necessarily full administrative control in all deployments. The issue is not directly network reachable because it is triggered through the local control plane rather than remote RDMA traffic. Impact is at least local denial of service via kernel crash and in the paranoid case may include privilege escalation or confidentiality and integrity impact due to the UAF class.';YES REQUIRES MANUAL CHECK; ,and ActionableScore result is Actionable Moderate / Strong Important candidate requiring manual review (with actual score 5)	YES	UAF NETWORK LINUS KPANIC  KPANIC DECREASED_TO_MODERATE70_BASED_ON_ACTIONABLESCORELOWERTHAN6	NO	NO	checked

======================================================================
ACTIONABLESCORE ANALYSIS
======================================================================

ActionableScore=5
ActionableScoreLower=4
PrimitiveClass=CLASS_B
RealUAF=YES
HostAdminRequired=UNKNOWN
NamespaceScopedPrivilege=UNKNOWN
ImportantCandidate=YES
ManualReview=REQUIRED
AutoDowngradeAllowed=NO

1. ActionableScore

* Raw conservative score: 3
* Conservative score: 4
* Applied conservative floor: 3 -> 4 because RealUAF=YES, stale counter access is directly implied, this is not fixed stale storage, and host-admin-equivalent privilege is not positively established.
* Raw paranoid score: 5
* Paranoid score: 5
* Final recommended bucket: **Actionable Moderate / Strong Important candidate requiring manual review**::

2. Signal breakdown

Conservative signals:

* +2 Real UAF / active lifetime violation. The counter can remain visible via restrack while vendor-specific resources associated with it are already freed.
* +1 Secondary index / registration-table staleness. restrack acts as a lookup/registration table, and the vulnerable order leaves the counter discoverable by netlink while destruction is already in progress.
* +1 Reliable kernel crash / strong DoS. A stale counter or freed vendor resource accessed through the netlink path can plausibly produce kernel fault or crash.
* -1 Narrow race window. The commit explicitly describes a short window during counter destruction where lookup can race with release.

Paranoid additional interpretation:

* +1 Weak exploitation concern from post-zero refcount acquisition. The old kref_get() could take a reference to a counter whose lifetime is already ending, while kref_get_unless_zero() is needed to avoid resurrecting or using an object with zero references. This is stronger than a simple stale read, but not enough for CLASS_A.

Non-awarded signals:

* Controlled reclaim is not demonstrated.
* Arbitrary read/write is not demonstrated.
* Callback or function-pointer control is not demonstrated.
* Remote network reachability is not established, because the trigger is through local RDMA netlink control path, not RDMA packet traffic.
* Confidentiality and integrity points are not awarded independently. They remain possible worst-case concerns only through unresolved UAF exploitation, not through a demonstrated disclosure or write primitive.
* Concrete repeated release/put on the exact same local reference is not fully established. The stronger observed fact is post-zero refcount acquisition via kref_get(), so the dedicated repeated-release rule is not used as a separate conservative point.
* Extra Availability is not awarded because it would double-count the same crash/DoS consequence.

Repeated release/refcount checklist:

* First release can end lifetime: yes, counter_release() is reached from kref release.
* Exact same reference survives first release: partially, the counter remains reachable through restrack, but not as the same local reference in the shown code.
* Second operation is real lifetime/refcount mutation: yes, old rdma_get_counter_by_id() used kref_get() on the looked-up counter.
* +1 Concrete repeated release/refcount awarded: no, because this is not a classic second put/release on the exact same reference.
* Paranoid refcount leverage +1 awarded: yes, as weak post-zero refcount resurrection concern.
* FLOOR 5 applied: no, because the strict repeated-release floor is not fully established and below-host-admin reachability is unresolved.

3. Reachability analysis

The vulnerable access path is local RDMA netlink restrack lookup of a counter while counter_release() is destroying that counter. The commit says the netlink path relies on rdma_restrack_get() as the synchronization mechanism.

A local process with access to RDMA netlink operations may race counter lookup against counter destruction. The supplied evidence does not prove that host-admin-equivalent privilege is required for the complete trigger, but it also does not prove ordinary unprivileged reachability. Therefore HostAdminRequired=UNKNOWN.

Namespace-scoped privilege is also unresolved. The input does not establish that all required RDMA counter creation, destruction, and netlink lookup operations are available inside attacker-created namespaces.

Prior setup may include an RDMA device and configured counters. The evidence does not establish that the attacker can instantiate the whole setup without prior privileged configuration. No direct remote network trigger is shown. The race window is described as short, but the operation may be retryable if the attacker can repeatedly drive lookup/destruction.

4. Primitive and severity interpretation

The exact primitive is an active structured kernel-object lifetime mismatch. A counter remains visible in restrack after its destruction has begun and after vendor-specific resources may already be freed. A netlink lookup can then obtain or attempt to obtain a reference to an object that is in the process of destruction.

This is not fixed stale storage. It is an active structured object reachable through a kernel registration/lookup table. The demonstrated consequence is UAF risk and likely local DoS. The speculative consequence is stronger memory-corruption leverage if post-lifetime refcount acquisition or stale vendor-resource access can be shaped into a useful primitive.

PrimitiveClass=CLASS_B because a real lifetime/UAF primitive is established, but controlled reclaim, arbitrary R/W, callback control, or demonstrated LPE is not established.

ImportantCandidate=YES because the bug is not just a cleanup-only stale dereference. The restrack visibility and kref_get_unless_zero() change leave unresolved exploitation leverage around post-lifetime object lookup/refcounting.

AutoDowngradeAllowed=NO because automatic closure would discard a concrete active-object lifetime primitive with unresolved post-lifetime refcount/use behavior.

Operationally, this is at least Actionable Moderate. It is not yet a strong Important candidate without further evidence of controlled reclaim, stronger attacker reachability, or a demonstrated privilege-escalation path.

5. One-sentence report phrase

A race in RDMA counter destruction can leave a counter reachable through restrack while vendor-specific resources are being freed, allowing local RDMA netlink lookup to hit a use-after-free condition with at least kernel crash impact and unresolved post-lifetime refcounting risk.

6. Manual review recommendation

MANUAL CHECK REQUIRED

Reason: this is a real active-object UAF candidate involving restrack lookup and refcount acquisition during destruction, with unresolved exploitation leverage beyond ordinary crash-only cleanup behavior.

7. Call-site confidence

Call-site confidence: medium

======================================================================
UPSTREAM PATCH SUMMARY
======================================================================

Patch: RDMA/core: Fix potential use after free in counter_release() [ Upstream
Commit: 5eb0c57a8b568eb08f464861d84d518a2af939ac
Upstream URL: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=5eb0c57a8b568eb08f464861d84d518a2af939ac

Changed files:
  drivers/infiniband/core/counters.c

Diff excerpt:

Not included in this email. See the upstream URL for the full patch.

Full patch:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=5eb0c57a8b568eb08f464861d84d518a2af939ac

======================================================================
DETAILED REPORT METHODOLOGY
======================================================================

The original Linux kernel CVE announcement for CVE-2026-92509 can be found here:
https://lore.kernel.org/linux-cve-announce/?q=CVE-2026-92509

The original CVE announcement normally does not include a security-level
estimate. In particular, it may not contain a CVSS assessment, an impact
level, or enough information to determine whether the reported bug is a
practically relevant security issue. One purpose of this parallel CVE list
is to provide that missing technical and prioritization information.

The original goal of the AL-KERNEL project was to prioritize Linux kernel
CVE analysis automatically before manual review. The system can also help
identify non-security issues that may be suitable for automatic closure.

This report was generated by AL-KERNEL, an AI-assisted Linux kernel
vulnerability analysis system developed by Alexander Larkin.

The first analysis stage combines an autonomous classifier with additional
LLM-based analysis. The autonomous classifier runs locally on a CPU and is
based on a backpropagation neural network. Together, these mechanisms
produce a technical vulnerability description, identify likely weakness
types, estimate CVSS severity, and provide input for ActionableScore.

Two CVSS estimates are retained because incomplete kernel vulnerability
information often permits more than one defensible interpretation:

  Conservative CVSS vector: AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H
  The Best / paranoid CVSS vector: AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
  The Best / paranoid CVSS score: 7

The conservative vector represents a lower-impact interpretation.
The Best/paranoid vector intentionally represents a plausible upper-bound
interpretation and should not automatically be treated as demonstrated
real-world impact.

CVSS may also need to be adjusted for a particular Linux deployment,
because actual reachability, privileges, enabled kernel configuration,
hardware, namespaces, exposed device nodes, and other environmental
conditions can differ significantly between systems.

A separate ActionableScore mechanism evaluates practical remediation
urgency. Its analysis may include reachability, attack prerequisites,
subsystem exposure, memory-corruption characteristics, denial-of-service
reliability, and possible confidentiality, integrity, or
privilege-escalation impact.

  Conservative ActionableScore: 4
  Paranoid ActionableScore: 5

The final base severity is taken directly from the second tab-separated
field of the AL-KERNEL classification result. ActionableScore does not
replace or independently override that final AL-KERNEL decision, and
if ActionableScore adjusted impact level of ALKERNEL, then you would see
self-readable flags above like INCREASED_TO_HIGH_BASED_ON_ACTIONABLESCOREHIGHEREQTHAN7.

For an AL-KERNEL result of MODERATE, this report uses the following
additional presentation split:

  ActionableScore below 5   -> MODERATE REGULAR
  ActionableScore 5 or more -> MODERATE 7.0

The distinction between MODERATE REGULAR and MODERATE 7.0 makes it
possible to identify Moderate issues that should receive manual analysis
and fixes before lower-priority MODERATE REGULAR issues. In many cases,
MODERATE REGULAR fixes may wait for a later rebase or routine update.

There is one override in which MODERATE REGULAR becomes MODERATE 7.0
even when the ActionableScore is below 5. When the AL-KERNEL result
contains the KPANIC flag, a MODERATE result is always presented as
MODERATE 7.0. The KPANIC flag selected with few regexps without
usage of AI at all, so it helps to detect cases when Kernel Crash happens
and similar (to filter False-Negative results from the LLM usage).

KPANIC indicates that a reliable kernel crash, kernel panic, or similarly
serious kernel availability impact was identified by the classification
workflow.

AL-KERNEL base severity for this report: MODERATE
KPANIC detected for this report: YES
Published priority for this report (same as in Subject): MODERATE 7.0

These results are intended to support engineering triage. They are
machine-generated estimates, and cases marked for manual review should
be validated by a human security engineer before final disposition.
For more info read docs linked from here: https://kernelcve.org/
(and you can submit you own patch there to generate such a report
for non-existant CVE-id yet).

Note that in many cases this AI tool selects higher severity, than
real is (means you can expect Importants instead of Moderate 7.0 or
Moderates 7.0 instead of regular Moderates). If you see such cases,
please use reply email interface to add additional manual analyses
info to this particular CVE.
And please, please, let me know when you see Lows instead of Importants
or Important instead of Low (because particular for such cases I
need to tune this AI tool to make it better for this one and next similar).
My contact email for such notifications is [email protected] (and both
send reply to CVE record itself too and see "reply" button below for howto reply).

                 reply	other threads:[~2026-09-17 20:00 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --from, and --in-reply-to
  switches of git-send-email(1) and next cmd tested by kernelcve.org admin:

  git send-email --smtp-server=mail.kernelcve.org --smtp-server-port=25 --smtp-auth=none --from='Your Name <youremail@domain.is>' --suppress-cc=all --no-cc  \
    --in-reply-to=cve-2026-92509.820bca997e6b82ae0564d5c1@kernelcve.org \
    [email protected] \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
The file with msg could look like this then:
cat YOUR_REPLY
Subject: Re: [CVE-2026-64206][MODERATE REGULAR] Bluetooth: L2CAP test

Just testing public-inbox replies.

Thanks,
MyName


This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox