CVE-2026-22991: libceph: make free_choose_arg_map() resilient to partial allocation
In the Linux kernel, the following vulnerability has been resolved:
libceph: make free_choose_arg_map() resilient to partial allocation
free_choose_arg_map() may dereference a NULL pointer if its caller fails
after a partial allocation.
For example, in decode_choose_args(), if allocation of arg_map->args
fails, execution jumps to the fail label and free_choose_arg_map() is
called. Since arg_map->size is updated to a non-zero value before memory
allocation, free_choose_arg_map() will iterate over arg_map->args and
dereference a NULL pointer.
To prevent this potential NULL pointer dereference and make
free_choose_arg_map() more resilient, add checks for pointers before
iterating.
Security readout for executives and security teams
Plain-English summary
A Linux kernel libceph cleanup flaw can dereference a null pointer after memory allocation only partially succeeds. The resulting kernel fault could interrupt affected systems or storage-dependent services. The supplied CVSS score is 7.5, reflecting high availability impact without stated confidentiality or integrity impact.
Executive priority
Treat this as a high-priority availability issue for systems using libceph, especially business-critical storage workloads. Establish exposure through vendor version mapping, patch affected kernels promptly, and monitor for related kernel faults. Broader emergency action is not supported by the supplied exploitation evidence.
Technical view
In decode_choose_args(), arg_map->size can become non-zero before arg_map->args is allocated. If allocation fails, free_choose_arg_map() may iterate through the null args pointer. The referenced stable changes add pointer checks before iteration, making cleanup safe after partial allocation.
Likely exposure
Exposure is most likely on affected Linux kernels where libceph processes choose arguments. The CVSS vector characterizes the attack path as remote and unauthenticated, but the description does not identify the precise externally reachable service boundary. Distribution-specific kernel exposure cannot be determined from the supplied version data alone.
Exploitation context
The bundle marks this CVE as absent from KEV and provides no evidence of active exploitation or a public exploit. That does not prove exploitation is impossible. The documented outcome is availability loss through a potential kernel null-pointer dereference.
Researcher notes
The failure requires a partial-allocation cleanup path: size is initialized before args allocation, then cleanup trusts size and dereferences args. The fix hardens cleanup with pointer checks. The supplied affected-version entries are not clear ranges and include repeated commit identifiers, limiting confident branch and distribution mapping.
Mitigation direction
Upgrade to a Linux kernel build containing the applicable referenced stable fix.
Consult the Linux distribution or kernel vendor for packaged-version applicability and update guidance.
Prioritize systems actively using libceph or Ceph-backed storage.
If upgrading is delayed, request a vendor-supported workaround; none is named in the sources.
Validation and detection
Inventory running kernel versions and map them through applicable vendor advisories.
Identify systems where libceph is present and actively used.
Confirm the installed kernel includes the applicable referenced pointer-check fix.
Monitor kernel fault records for free_choose_arg_map or decode_choose_args failures.
Perform vendor-approved Ceph storage regression testing after updating.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2026-22991 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.