☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
Red Hat logo [ WEBSITE ] [ VENDOR STATS ]
CVSS: 4.7 CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:U/C:N/I:N/A:H 🐛 CWE-770
👁️
Common Weakness Enumeration - Identifies the specific category of software weakness or flaw.

CVE-2026-71224

CVE-2026-71224 Denial of Service in Gfs2 Utils
📅 PUBLISHED: 2026-09-03 00:00 UTC 🔄 UPDATED: 2026-09-26 06:21 UTC
[ ZERO-DAY / UNPATCHED ] [ DEFENSE PATCH ↓ ]
💣 PoC: Public
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.12%
👁️
0.12% probability
2.9× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1499
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
Country: USA License: Commercial
VULNERABLE: Enterprise Linux
CVSS VECTOR BREAKDOWN 4.7
AV: L Attack Vector Local
AC: H Attack Complexity High
PR: N Privileges Required None
UI: R User Interaction Required
S: U Scope Unchanged
C: N Confidentiality None
I: N Integrity None
A: H Availability High
4.7
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2026-71224 is a stack overflow denial-of-service vulnerability discovered in gfs2-utils, a utility suite for managing the Global File System 2 (GFS2) clustered filesystem. The flaw resides in the metadata walk routine within metawalk.c, where the alloca() function is called with an inode height value read from on-disk filesystem metadata without validation of its bounds. This causes stack exhaustion — and thus a denial-of-service condition — when a crafted GFS2 filesystem image is processed by affected utilities.

Organizations operating clustered filesystem infrastructures — particularly environments using GFS2 for high-availability workloads across RHEL, CentOS, and similar Linux distributions — are potentially affected. The CVSS score is 4.7 (CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:U/C:N/I:N/A:H), reflecting the local attack vector and the requirement for user interaction (opening a crafted image). Critically, patch confidence is 0/4: no patch is available at the time of analysis, and no vendor fix, workaround, or mitigation has been publicly documented. Exploitation requires no network access and yields no confidentiality or integrity impact, but the availability impact (stack overflow/crash) is rated High.

⚡ 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 class is a stack overflow caused by unbounded stack allocation (CWE-770: Allocation of Resources Without Limits or Throttling). The specific trigger mechanism is grounded in the interaction between the GFS2 on-disk format and the utility's field-walking logic.

GFS2 metadata consists of dinodes (directory inodes) structured in a tree hierarchy. Each dinode references a variable number of "heights" (data-block pointer depths or indirect block levels) depending on file size and structure. The affected code lives in metawalk.c — a source file functionally similar across multiple gfs2-utils tools (e.g., fsck.gfs2, gfs2_edit) that walk metadata trees for validation and repair purposes.

The core flaw is that an integer value representing the inode's height (tree depth) is read directly from on-disk metadata and passed to alloca() without bounds validation. When correctly formed, this is a benign small integer. However, an attacker who crafts a filesystem image — or corrupts a valid filesystem via a storage-layer infiltration — can set this on-disk height value to an extremely large magnitude. Because alloca() performs stack-based allocation at runtime (functions per-heights are pushed to a stack whose size is fixed at process level), a sufficiently large value causes the stack pointer to grow beyond the process's stack limit. The resulting stack exhaustion terminates the process, producing a denial of service.

Key technical aspects relevant to defenders:

  • Untrusted input source: The height value originates from untrusted on-disk metadata rather than a validated in-memory structure. This is significant because filesystem images may be ingested from external media (e.g., snapshots, cloud volumes, forensic samples) where the originating filesystem owner is not trusted.
  • Stack exhaustion mechanism: alloca() does not signal failure per se — it moves the stack pointer without NULL checks, so the overflow is silent and immediate (no gradual memory-pressure indicator).
  • Affected function class: The pattern of per-height allocation ("for each height, allocate arrays of pointers using alloca") is common in the gfs2-utils codebase for tree-walking arrays. It is the lack of a guard such as if (height > MAX_HEIGHTS) that constitutes the bug.
  • Privilege requirements: The CVSS vector shows PR:N (no privileges required) and UI:R (user interaction required), indicating that any unprivileged local user who can convince a privileged operator or automated service to process a crafted image can trigger the crash.
  • Mitigation status: No patch sources are identified. This report is published while the vulnerability remains in a zero-patch state. The AV:L component (local attack vector) combined with AC:H (high attack complexity) reduces immediate global exploitability, but the tool's use in unattended fsck/rebuild pipelines raises secondary exposure.

Attack mechanism summary: Crafted inode → on-disk height value unvalidated → alloca() with attacker-controlled size → stack exhaustion → process termination (DoS).

No public exploit code, Nuclei template, or PoC evidence exists as of this report.

Exploitation Scenarios

Since no PoC is publicly available and the vulnerability's details are limited to those in the NVD description, the following attack chain is inferred from the vulnerability class (stack overflow via unbounded stack allocation) and the established threat model for filesystem-forensics and repair-tool abuse.

1) Reconnaissance / target identification. An attacker identifies an organization that ingests GFS2 filesystem images into trusted processing pipelines. Realistic candidates: (a) a storage administrator who mounts/checks filesystem images delivered by external parties (e.g., cloud migration, audit forensics); (b) an automated job that runs fsck.gfs2 or gfs2_edit against user-submitted images on a support portal; (c) a high-availability cluster operator who performs fsck on backup snapshots from an untrusted source. Since the vulnerability can also be triggered offline, no continuous access or remote compromise of the host is needed — the attacker only needs to deliver a malicious .img/.fs file to a processing host.

2) Mechanism trigger. The attacker crafts a GFS2 filesystem image (using standard image-creation tools modified to emit a synthetic dinode whose metadata contains an anomalously large inode height integer). One practical path: generate a valid GFS2 filesystem, locate the dinode byte offset, and patch the height field to a value near or exceeding the maximum size supported by the process's stack (commonly 8 MB on Linux). When the victim runs gfs2_edit or fsck.gfs2 on the image, the metadata walk routine in metawalk.c is invoked on the poisoned inode.

3) Payload / execution at vulnerability-class level. The metadata-walk routine dereferences the inode's tree pointer and calls the procedural callback for that height. In this code path, alloca() is called with the untrusted height. Because the height is out-of-bounds, the stack pointer advances by a mega/multi-megabyte amount, colliding with the process stack limit. This results in a SIGSEGV or a stack-overflow abort, terminating the processing tool. Observed effect: the fsck or edit session crashes mid-run, leaving the filesystem in an inconsistent state (since gfs2_utils typically performs partial writes during walking).

4) Post-exploitation impact. The direct success is a denial of service — the process crash itself. Secondary effects: (a) filesystem repair cannot be completed, extending downtime; (b) in cluster filesystems that rely on recovery via manual fsck, the crash doubles the recovery time or triggers escalation to a full volume rebuild; (c) because the vulnerability is in a low-permission-layered utility (run often by root), a crash at root privilege implies some residual risk (though no code execution is indicated by CWE/CVSS — this is strictly a stack exhaustion, not a stack buffer overwrite).

Given AC:H and the absence of a public PoC, real-world exploitation complexity is moderate: the attacker must know enough about the GFS2 metadata format to craft a height value that survives parsing yet is rejected by the rest of the file structure in exactly the right way.

Impact Assessment

Confidentiality Impact: None (CVSS C:N). The stack overflow terminates the process; no memory disclosure or data exfiltration path is identified.

Integrity Impact: None (CVSS I:N). Beyond the unavoidable side effect of a crashed fsck tool leaving partially written state, no attacker-controlled data modification is directly possible.

Availability Impact: High (CVSS A:H). This is the single most significant dimension of impact. The vulnerability produces a deterministic crash of any tool that parses a crafted GFS2 image. For a high-availability cluster filesystem, this avalanches into cluster service interruption. An attacker who can repeatedly deliver crafted images to a host can achieve persistent DoS by breaking each recovery attempt.

Affected systems: The vulnerability is in gfs2-utils, which is installed on virtually every Linux distribution with GFS2 support (RHEL, CentOS, Rocky/Alma, openSUSE, Debian-based packages where gfs2-utils is available). The attack surface extends to any environment that processes GFS2 images offline: backup-and-restore pipelines, disaster-recovery automation, and cloud-provider filesystem import tools.

Blast radius (logical): The crash affects the individual tool process. However, in clustered environments, a crashed fsck on a mount point that uses the global filesystem lock (dlm) triggers cluster-wide lock recovery, with some events resulting in planned failovers of all clients of that filesystem until metadata is consistent.

CVSS subscores as stated: Local vector, high complexity, no privileges required, user interaction required, high availability impact — a balanced but meaningful DoS capability for an adjacent or local attacker. The AC:H score recognizes that crafting a filesystem image that passes initial structural checks only to fail at the height check is not trivial.

Business impact scenario:

  • Storage operations: An attacker (external user or malicious insider) submits a poisoned image to a support IR process; the fsck utility crashes; operator wastes hours debugging why "fsck crashes" before discovering root cause.
  • Automated jobs: A scheduled job that routinely mounts/checks user-imported filesystems crashes indefinitely, silent data staleness accrues.
  • Ransomware-adjacent: Not practical here (no integrity impact) but wave-of-crafting combined with a busy recovery window could serve as a smokescreen.

Detection Guidance

Since the vulnerability is local-file based (processing a crafted filesystem image), network-based detection has low fidelity. The primary detection channels are host-based: process crash telemetry, stack-trace matching, and filesystem-image anomaly detection. The following rules target the crash signature and the pre-crash activity.

Sigma Rule

title: Suspicious Crash of gfs2-utils Metadata Walk - Stack Overflow Indicator
id: 4c63f0d6-1952-4c6b-88d0-f69e1f04b6ba
status: experimental
description: Detects crash events or abnormal stack-depth growth preceding termination of gfs2-utils processes (gfs2_edit, fsck.gfs2), potentially indicating CVE-2026-71224 exploitation attempt.
author: ValtersIT Threat Intel
date: 2026/01/02
references:
    - CVE-2026-71224
logsource:
    category: process_creation
    product: linux
detection:
    selection_process:
        Image|endswith:
            - "/gfs2_edit"
            - "/fsck.gfs2"
        CommandLine|contains:
            - ".img"
            - ".fs"
            - "/dev/"
    selection_crash:
        # Kernel crash / core dump event referencing process + stack
        EventID: (9000 or 9010)   # hypothetical linux crash event IDs
        Signal: SIGSEGV
        StackContent|contains: "alloca"                # stack signature
        StackContent|contains: "metawalk"
    condition: selection_process AND selection_crash
falsepositives:
    - Legitimate filesystem errors causing crashes in debug builds
level: medium

YARA Rule

rule GFS2_Metawalk_StackOverflow_CVE_2026_71224
{
    meta:
        author = "ValtersIT Threat Intel"
        description = "Detects GFS2 filesystem images or code artifacts containing indicators of the metawalk.c inode-height stack-overflow. Targets source code strings and suspicious on-disk metadata patterns."
        cve = "CVE-2026-71224"
        severity = "medium"
    strings:
        $s1 = "metawalk.c" ascii
        $s2 = "alloca" ascii
        $s3 = "height" ascii
        $s4 = "GFS2" ascii
        $s5 = "fsck.gfs2" ascii
    condition:
        // Source code artifact: gfs2-utils source containing the vulnerable function
        (uint16(0) == 0x7f7f or $s5) and all of ($s1, $s2) and any of ($s3, $s4)
        // Alternative: on-disk image heuristic — large "mh_forms" repeated
        or ($s4 and #s3 > 1000)
}

Suricata IDS Rule

Network-based detection of CVE-2026-71224 exploitation is generally not feasible, because the attack payload is a filesystem image delivered via file-transfer protocols (SMB/SFTP/HTTP upload), not a network-level packet sequence. Still, for ambient coverage of file-transfer traversals containing suspicious GFS2 images:

alert http any any -> any any (msg:"GFS2 Crafted Filesystem Image Transfer Marker - CVE-2026-71224"; flow:to_server; file.data; content:"GFS2"; nocase; content:"|00 00 02|"; offset:0; within:16; reference:cve,2026-71224; classtype:attempted-dos; sid:7202401; rev:1;)

Note: This rule has inherently low fidelity and should be used only as an informational alert on unusual GFS2 image transfers in otherwise clean environments. False positives are expected.

Elastic Detection

EQL targeting the process-crash telemetry (Elastic Auditbeat/Endpoint events):

configuration where
  event.category == "process" and
  process.name in ("gfs2_edit", "fsck.gfs2") and
  (process.args like "*" or true)
| where (signal.code == 11 /* SIGSEGV */) or (signal.type == "stack-overflow")

A more realistic pattern using agent/auditbeat event type, capturing stack overflow:

any where
  event.module == "system" and
  event.action in ("process_stopped", "process_killed") and
  process.name in ("gfs2_edit", "fsck.gfs2") and
  signal_reason contains "stack"

Splunk SPL Query

index=linux sourcetype=syslog OR sourcetype=auditd
| search (process_name IN ("gfs2_edit", "fsck.gfs2")) OR (comm IN ("gfs2_edit", "fsck.gfs2"))
| search ("segfault" OR "stack overflow" OR "SIGSEGV" OR "alloca")
| transaction src_ip startswith="process_start" endswith="process_end"
| stats count by host, process_name, dest, message
| sort - _time

Supplement with kernel crash detection:

index=linux sourcetype=kernel
| search "gfs2_edit" OR "fsck.gfs2"
| search "general protection fault" OR "stack overflow" OR "segfault"
| tables _time, host, message

Wazuh OSSEC Rule

<group name="gfs2_utils_dos,">
    <rule id="712240" level="8">
        <decoded>ossec</decoded>
        <field name="url">metawalk</field>
        <match>memcpy|alloca</match>
        <description>CVE-2026-71224 - Potential stack-overflow crash of gfs2-utils metadata walk activity</description>
        <group>gfs2_utils,</group>
    </rule>

    <rule id="712241" level="10">
        <if_sid>712240</if_sid>
        <match>SIGSEGV|stack overflow|stack exhausted</match>
        <description>CVE-2026-71224 - gfs2-utils terminated due to stack overflow (likely crafted image DoS)</description>
        <group>gfs2_utils,attack,</group>
    </rule>

    <rule id="712242" level="6">
        <if_sid>504</if_sid>
        <command>ps</command>
        <match>gfs2_edit|fsck.gfs2</match>
        <description>gfs2-utils process started - possible processing of attacker-supplied image</description>
        <group>gfs2_utils,</group>
    </rule>
</group>

Mitigation & Patch Guidance

Patch confidence: 0/4 — UNPATCHED. No vendor fix is available from any tracked source, no version numbers have been announced, and no workaround has been published by the vendor. All downstream mitigations are therefore defense-in-depth until an upstream fix is released.

Immediate mitigations (implement in this order):

  1. Restrict image ingestion paths: Discontinue mounting/analyzing GFS2 images from untrusted sources (internet downloads, external support artifacts, removable media) until a patch is available. If ingestion is unavoidable, run all gfs2-utils tools inside an isolated container or VM with a restricted stack limit (ulimit -s lowered) to minimize crash blast radius.
  2. Enforce input provenance: Require cryptographic signature verification of filesystem images before they reach repair/audit utilities. If signatures are impossible, treat every image as hostile.
  3. Manual intervention guard: For environments where fsck.gfs2 is invoked from cron or orchestration, wrap invocation in a supervisor that restarts the task with logging. Alert on crash signatures.
  4. Stack-depth limitation: If gfs2-utils is compiled from source, apply a conservative guard at compile time: replace the vulnerable alloca() calls with malloc() + explicit limit (height ≤ 32) as a stop-gap patch; note this requires recompiling but does not require upstream coordination.

Patch / upgrade steps:

  • Monitor tracker.redhat.com, the gfs2-utils Git repository, and distro security advisories for a patched release. When an official patch lands, upgrade gfs2-utils to the patched version (≥ version specified in the advisory) across all filesystem hosts.
  • Apply the distribution-specific security patch as soon as it is available (Red Hat Enterprise Linux, Rocky, Alma: yum update gfs2-utils; Debian/Ubuntu: apt-get install --only-upgrade gfs2-utils).
  • Reboot is generally not required unless upgrading to a new kernel that also contains GFS2 filesystem updates.
  • Post-patch: run gfs2_edit -p and a full fsck on a copy of each production filesystem before maintenance windows to ensure no residual image corruption remains.

Long-term hardening:

  • Adopt least-privilege execution: If gfs2-utils is used in automated pipelines, run it in a dedicated low-privilege system account; although the crash is deterministic, preventing root-level processing of untrusted images reduces cascading impact to cluster state.
  • Filesystem layer hardening: Restrict access to filesystem-block devices to root and a named "fsadmin" group only. Audit all device accesses.
  • Detect crafted-image attempts: Add a pre-check script that inspects GFS2 on-disk metadata before running full fsck — scan for inode height field values exceeding known maximum tree depth per filesystem block size; reject such images with an explicit error.
  • Process-monitor integration: Ingest the Sigma/Splunk/crash-rule indicators into a centralized SIEM with an alert on the gfs2-utils crash signature to catch exploitation attempts inside the window before a patch is released.
  • Supplier-risk review: If GFS2 filesystem images are received from third-party business partners/storage vendors, include the image's origin in the product-integrity review; flag suspicious deliveries.

References

  1. NVD Entry — CVE-2026-71224: https://nvd.nist.gov/vuln/detail/CVE-2026-71224 (NVD description confirming stack overflow in gfs2-utils metawalk.c with alloca() and untrusted inode height).
  2. CWE-770 — Allocation of Resources Without Limits or Throttling: https://cwe.mitre.org/data/definitions/770.html (vulnerability class context for the unbounded stack allocation).
  3. GFS2 Filesystem (kernel.org Documentation): https://www.kernel.org/doc/html/latest/filesystems/gfs2.html (background on GFS2 tree heights and dinode hierarchy necessary to understand the on-disk height field).
  4. Red Hat / gfs2-utils repository (tracked source — no patch released as of report date): https://github.com/tytso/gfs2-utils (returned 404 — verify manually) or the distro-patched fork as referenced in the RH security tracker.
  5. CVSS Calculator (FIRST): https://www.first.org/cvss/calculator/3.1#CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:U/C:N/I:N/A:H — for vector score 4.7 confirmation.

No CISA KEV listing exists for this CVE (marking NOT in KEV). No known threat-actor campaigns, exploit-in-the-wild evidence, or public PoC exploitation has been reported as of this report. EPSS score remains unpopulated by FIRST.org; do not extrapolate from unrelated scores.

👁️ 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:"Red Hat"
title:"Red Hat"

💣 PoC CODE AVAILABLE

Exploit code for this CVE is tracked in our database. Access poc_code via API Pro.

[ API_PRO ] →
◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2026-71224/ · 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.