☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
Linux Kernel logo [ WEBSITE ] [ VENDOR STATS ]
SOON 🐛 CWE-401
👁️
Common Weakness Enumeration - Identifies the specific category of software weakness or flaw.

CVE-2026-98319

CVE-2026-98319 Memory Leak in Linux Kernel
📅 PUBLISHED: 2026-10-06 00:00 UTC 🔄 UPDATED: 2026-10-07 05:00 UTC
⏳ SCORE PENDING — ANALYSIS IN PROGRESS [ DEFENSE PATCH ↓ ]
💣 PoC: None
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.22%
👁️
0.22% probability
5.5× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1068
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
Country: Global License: Open Source
VULNERABLE: All Linux kernel versions prior to the patch commit resolving this issue (exact affected range not enumerated in NVD data)
CVSS SEVERITY SCALE
9.0–10.0 CRITICAL
7.0–8.9 HIGH
4.0–6.9 MEDIUM
0.1–3.9 LOW
0.0 NONE
SOON
PENDING NVD
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2026-98319 is a memory leak in the Linux kernel's Direct Rendering Manager (DRM) subsystem, specifically in the handling of the out_fence_ptr parameter during atomic page-flip setup. When a caller supplies an out_fence_ptr without setting the DRM_MODE_PAGE_FLIP_EVENT flag, a drm_pending_vblank_event structure is allocated but may never be released if a subsequent failure occurs in setup_out_fence(). Affected systems are Linux hosts exposing DRM/KMS interfaces to local users — primarily desktops, workstations, and multi-tenant or containerized environments where an unprivileged process can drive DRM ioctls. The impact is a kernel memory leak that can be triggered repeatedly to exhaust kernel memory, causing denial of service; there is no evidence of confidentiality or integrity impact.

⚡ AUTOMATE YOUR CVE INTELLIGENCE

This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.

›Patch confidence — UNVERIFIED to CONFIRMED, cross-referenced NVD + RHSA + Debian
›Exploit & PoC — poc_status, poc_url, has_exploit. Not in NVD.
›Shodan dorks — ready-made queries to find exposed vulnerable systems
›Detection rules — YARA · Wazuh · Elastic (all plans) · Sigma (Pro)
›pending_fields — know exactly which of 7 fields NVD hasn't processed yet
›Free backfill — data incomplete when you paid? Re-check within 30 days = 0 credits
PAYG €0.08/lookup Standard €19/mo (was €29) · 5k credits Pro €65/mo (was €99) · 20k credits FOUNDING PRICE · LOCKED FOR LIFE · ENDS 31 DEC 2026
[ FROM €19/MO ]
Free sandbox key available
No signup required

Technical Analysis

The vulnerability resides in the Linux kernel DRM subsystem's atomic commit path. The NVD description states that when an out_fence_ptr is provided without the DRM_MODE_PAGE_FLIP_EVENT flag set, a drm_pending_vblank_event object is allocated. If a subsequent failure occurs — either an allocation failure or another failure inside setup_out_fence() — that event object is left in a partially initialized state: its base.fence is never set, and consequently the object is not released by the normal complete_signaling() cleanup path.

The defect is therefore a resource lifecycle asymmetry: an allocation on a rare branch is not matched by a corresponding free on the error path. The fix, as described, mirrors the handling already present for the DRM_MODE_PAGE_FLIP_EVENT case when drm_event_reserve_init() fails:

  • In prepare_signaling(), on failure, release the event and set crtc_state->event to NULL.
  • Use drm_event_cancel_free(), which additionally undoes a prior drm_event_reserve_init() if that call had already succeeded.
  • Because prepare_signaling() performs the release, nothing further is required at complete_signaling().

The attack surface is the DRM ioctl entry point that accepts an out_fence_ptr for atomic page-flip requests. This is reachable by local processes that have access to a DRM device node (typically /dev/dri/* in standard Linux configurations; the specific node name is not stated in the NVD text and should be verified against the target distribution).

Because the leaked object is kernel slab memory that is never reclaimed until reboot, the leak is cumulative. A caller that can repeatedly force the error path — for example by inducing allocation failures under memory pressure, or by triggering failure inside setup_out_fence() — accumulates unreleased drm_pending_vblank_event objects. Over time this degrades and eventually exhausts available kernel memory.

Technical detail beyond this is limited: the NVD description does not disclose specific calling processes, exact ioctl command numbers, or the precise conditions inside setup_out_fence() that constitute "another failure." Analysts should treat the above as the full extent of authoritative information and avoid assuming additional specifics.


Exploitation Scenarios

No public proof-of-concept, exploit code, or Nuclei template exists for CVE-2026-98319 (POC_STATUS: None). The attack chain below is inferred strictly from the vulnerability class — a kernel memory leak on an error path — and from the functions named in the NVD description.

  1. Reconnaissance / target identification. An attacker with local code execution on a Linux host (for example, an unprivileged user, a compromised container with access to a DRM device node, or a low-privileged service account) enumerates available DRM devices and confirms the presence of DRM/KMS support. The objective is to identify a target where the attacker can invoke DRM atomic page-flip ioctls.

  2. Triggering the flaw class. The attacker issues DRM atomic page-flip requests that supply an out_fence_ptr while deliberately omitting the DRM_MODE_PAGE_FLIP_EVENT flag. This steers execution down the path where drm_pending_vblank_event is allocated without the corresponding event-flag bookkeeping.

  3. Forcing the error branch. To make the allocation leak, the attacker must cause the operation to fail after the event is allocated — either by driving the system into allocation failure conditions or by causing setup_out_fence() to fail. Because complete_signaling() does not release an event whose base.fence was never set, the object remains allocated indefinitely.

  4. Post-exploitation impact. By repeating the request in a loop, the attacker accumulates leaked kernel memory. Sustained repetition results in progressive memory exhaustion, leading to system instability, denial of service for other workloads, and on memory-constrained systems, eventual kernel memory allocation failure or host reboot. Because the leak is a scarce kernel resource, even modest rates sustained over hours can be impactful on long-uptime servers.

Caveats: The exact mechanics required to reliably force setup_out_fence() failure are not documented in the available data, and no weaponized chain is known. The above describes the vulnerability class and the mechanism as literally described by NVD, not a validated exploit.


Impact Assessment

  • Confidentiality: None observed. The defect is a resource leak; it does not disclose memory contents.
  • Integrity: None observed. No write primitive or state corruption is described.
  • Availability: This is the primary impact vector. Unreleased drm_pending_vblank_event objects accumulate and reduce available kernel memory, degrading system performance and ultimately causing denial of service.
  • Privileges required: Local, low privilege — the attacker needs the ability to invoke DRM page-flip ioctls, which is generally available to any process with access to the DRM device node.
  • User interaction: None required.
  • Blast radius: Any Linux system exposing DRM/KMS to untrusted local processes. Multi-tenant hosts, VDI platforms, CI runners, and container hosts where DRM nodes are passed through are at elevated risk. Single-user desktops are lower risk since the local user is typically trusted.
  • Exploitability: Rated low-to-moderate. The trigger conditions involve deliberate error-path induction, and no public exploit exists.
  • CVSS: NVD assigns no score (N/A). No EPS00 score has been published by FIRST.org; none should be inferred. CISA KEV status: NO.

The primary business concern is availability and stability of shared Linux infrastructure rather than data compromise. There is no supply-chain or package-ecosystem angle in the available data (OSV packages: N/A).


Detection Guidance

Detection for this vulnerability is challenging because exploitation is local, generates no distinctive network traffic, and the trigger is a legitimate-looking DRM ioctl sequence. Detection should focus on host-level behavioral anomalies (abnormal DRM ioctl rates, kernel memory growth) and kernel log events.

Sigma Rule

title: Linux Kernel DRM Page Flip Repeated Out_Fence_Ptr Leak Attempt
id: 8c4c1f2e-3b7a-4d5e-9f01-6a2b8c7d9e10
status: experimental
description: Detects high-frequency invocations of DRM-related tools/processes consistent with repeated atomic page-flip ioctls supplying out_fence_ptr without DRM_MODE_PAGE_FLIP_EVENT, associated with CVE-2026-98319 kernel memory leak.
references:
  - https://nvd.nist.gov/vuln/detail/CVE-2026-98319
author: valtersit.com threat intelligence
date: 2026/01/01
tags:
  - attack.impact
  - attack.t1499
  - cve.2026.98319
logsource:
  product: linux
  category: process_creation
detection:
  selection_tool:
    Image|endswith:
      - '/drm_info'
      - '/modetest'
      - '/kmscube'
  selection_loop:
    CommandLine|contains:
      - 'page-flip'
      - 'atomic'
      - 'out-fence'
  condition: selection_tool and selection_loop
falsepositives:
  - Legitimate DRM/KMS development and testing workflows
  - Graphics driver validation suites
level: low

YARA Rule

rule CVE_2026_98319_DRM_OutFencePtr_Leak_Indicator
{
    meta:
        description = "Heuristic indicator for binaries or scripts referencing DRM out_fence_ptr page-flip sequences associated with CVE-2026-98319"
        author = "valtersit.com threat intelligence"
        reference = "https://nvd.nist.gov/vuln/detail/CVE-2026-98319"
        date = "2026-01-01"
        severity = "low"

    strings:
        $drm1 = "out_fence_ptr" ascii wide
        $drm2 = "DRM_MODE_PAGE_FLIP_EVENT" ascii wide
        $drm3 = "drm_pending_vblank_event" ascii wide
        $drm4 = "setup_out_fence" ascii wide
        $drm5 = "drm_event_cancel_free" ascii wide

    condition:
        uint32be(0) == 0x7F454C46 and 2 of ($drm*)
}

Suricata IDS Rule

alert tcp any any -> any any (msg:"CVE-2026-98319 Linux DRM out_fence_ptr leak - local ioctl not network-observable"; flow:to_server; content:"|2f 64 65 76 2f 64 72 69|"; nocase; classtype:attempted-dos; sid:2026983190; rev:1; metadata:created_at 2026_01_01, cve CVE_2026_98319;)

# NOTE: This vulnerability is triggered via local DRM ioctl calls and produces no
# distinctive network traffic. The network signature below only fires on cleartext
# references to DRM device paths and is provided for completeness of coverage
# tooling; network-based detection is NOT an effective control for this CVE.

Elastic Detection

process where event.type == "start" and
  process.name in ("modetest", "drm_info", "kmscube", "atomic-test") and
  process.args_count > 0 and
  process.args : ("*atomic*", "*page-flip*", "*out-fence*")

Effectiveness note: Elastic EQL process events capture invocation of DRM test tooling but cannot observe the ioctl-level out_fence_ptr flag combinations that constitute the actual leak. This rule is a weak proxy indicator and should be correlated with host kernel-memory-growth telemetry. There is no reliable endpoint detection content for this defect class from the available data.

Splunk SPL Query

index=linux_syslog OR index=os_kernel
("drm" OR "drm_pending_vblank_event" OR "setup_out_fence" OR "out_fence_ptr")
| stats count by host, source, _raw
| where count > 5
| sort - count

This search targets kernel log lines referencing DRM event/fence handling. Because the leak itself is silent, treat matches as investigative leads only. Pair with top/memory-metric dashboards tracking kernel memory consumption over time on affected hosts.

Wazuh OSSEC Rule

<group name="linux,kernel,drm,cve_2026_98319,">
  <rule id="20298319" level="6">
    <decoded_as>syslog</decoded_as>
    <match>drm_pending_vblank_event|setup_out_fence|out_fence_ptr</match>
    <description>CVE-2026-98319: DRM out_fence_ptr vblank event leak references in kernel log</description>
    <group>cve_2026_98319,drm,memory_leak,</group>
  </rule>

  <rule id="20298320" level="10">
    <if_sid>20298319</if_sid>
    <same_source_ip />
    <frequency>10</frequency>
    <timeframe>300</timeframe>
    <description>CVE-2026-98319: Repeated DRM out_fence_ptr leak indicators - possible kernel memory exhaustion attempt</description>
    <group>cve_2026_98319,drm,memory_leak,attempted_dos,</group>
  </rule>
</group>

Mitigation & Patch Guidance

Patch confidence: 0/4 — UNPATCHED. No patch evidence exists from any tracked source. There is no vendor advisory, no fixed version, and no CVE-listed remediation for CVE-2026-98319 in the data provided.

  1. Immediate mitigations

    • Restrict access to DRM device nodes. Ensure /dev/dri/* (device node name to be confirmed per distribution) is not accessible to untrusted local users. Audit current ownership and permissions.
    • In containerized and multi-tenant environments, do not pass through DRM/KMS device nodes to untrusted or semi-trusted workloads. Remove --device /dev/dri-style mappings unless explicitly required.
    • Reduce blast radius by isolating workloads that require DRM access (graphics, media transcoding, VDI) into dedicated hosts or namespaces, distinct from sensitive workloads.
    • Monitor kernel memory consumption trends on hosts that must expose DRM, and alert on abnormal upward drift in unrebooted uptime.
  2. Patch / upgrade steps

    • No fixed version is currently published. Track the upstream Linux kernel stable and longterm branches for a commit referencing the DRM out_fence_ptr / setup_out_fence() error-path fix described in NVD.
    • Subscribe to the Linux kernel mailing list (dri-devel) and your distribution's security advisory channel to receive notification when a patched kernel package is released.
    • When a patch is available, apply the distribution kernel update and reboot promptly, since the fix is a kernel code change.
  3. Long-term hardening

    • Enforce the principle of least privilege for local accounts and service users; avoid granting interactive access to graphics-capable hosts to untrusted users.
    • Deploy kernel hardening and memory-pressure alerting (e.g., monitoring of slab allocation growth, oom_kill events, and per-subsystem memory attribution).
    • Incorporate regular kernel patch-cycle management with defined SLAs for kernel security updates across fleets.
    • Consider a maintained long-term-support kernel stream to shorten the window between upstream fixes and production deployment.

References

No threat actor campaigns or exploit-in-the-wild evidence are associated with CVE-2026-98319 per available data. CISA KEV status: NO. No public proof-of-concept, exploit code, or nuclei template exists.

👁️ SHODAN DORKS (THREAT HUNTING)

What is this? Security researchers use these exact search queries on Shodan.io (a search engine for internet-connected devices) to find vulnerable systems globally. You can copy these dorks to see if your organization's IP space is exposed.

product:"Linux Kernel"
title:"Linux Kernel"
◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2026-98319/ · CVE data: NVD/MITRE (public domain) · © 2026 ValtersIT Hub
>_ SYSTEM_CORE: INTEL_ACTIVE
90% TEAM-CURATED // 10% AUTOMATED INGESTION.
ALL PATCH REFERENCES AND VERSION DATA SOURCED FROM NVD + OSV OFFICIAL REGISTRIES.