Cloudanix VulnDB

CVE-2026-80644

None

CVSS

—

EPSS

0.2%

Published

Aug 28, 2026

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A bug in the Linux kernel can make the whole computer crash if someone tries to open a specially made OCFS2 storage device or file.

Exploitation
Local Privilege
Attacker needs
Local User
Complexity
Moderate
Impact
Denial Of Service
Component
OS kernel
Class
Improper Input Validation
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

Replaces a recoverable error path with an unconditional kernel BUG_ON during OCFS2 journal shutdown when an invalid dinode is encountered on a fuzzed filesystem image, resulting in an immediate kernel panic instead of a clean mount failure.

Why it matters to the business

Mounting a specially crafted OCFS2 volume on an unpatched system causes an immediate kernel crash, leading to denial of service, unplanned reboots, and potential loss of in-flight operations on any system that uses OCFS2.

How an attack unfolds

An attacker crafts or modifies an OCFS2 filesystem image so that its journal dinode is invalid. When a privileged process or automated script attempts to mount the image, the kernel reaches the BUG_ON during journal teardown and panics.

How to fix it

Apply the upstream fix that replaces the BUG_ON with WARN_ON and returns -EIO; update to a kernel containing commit that restores proper error handling on invalid journal dinodes. Rebuild and deploy the patched kernel across all OCFS2-using systems before allowing untrusted volumes to be mounted.

How to confirm the fix worked

Confirm the patch is present by inspecting fs/ocfs2/journal.c for the absence of the BUG_ON at the former line 1034 and the presence of WARN_ON plus -EIO return. Test by attempting to mount a known-bad OCFS2 image and verifying the operation fails gracefully with -EIO instead of panicking.

Typical attack path

  1. Attacker supplies a malicious OCFS2 image via removable media, network share, or container volume.
  2. Victim system or service executes mount on the image.
  3. ocfs2_fill_super proceeds far enough to call journal shutdown.
  4. ocfs2_journal_toggle_dirty hits BUG_ON on the invalid dinode.
  5. Kernel panics and the system reboots or halts.

How to detect it

Search kernel logs and crash dumps for the exact BUG line "kernel BUG at fs/ocfs2/journal.c:1034" together with the call trace containing ocfs2_journal_shutdown and ocfs2_fill_super. Correlate mount attempts of OCFS2 volumes immediately preceding such oops entries.

  • kernel BUG at fs/ocfs2/journal.c:1034
  • ocfs2_journal_toggle_dirty+0x2d6/0x340
  • ocfs2_journal_shutdown+0x414/0xc30
  • ocfs2_fill_super+0x30a9/0x3cd0

What your security team should do

  • Prioritize kernel updates on all systems that may mount OCFS2 volumes, especially servers and build/CI hosts.
  • Restrict OCFS2 mounts to trusted, signed images only until patches are deployed.
  • Add kernel oops and BUG monitoring to detect attempted exploitation of this or similar filesystem bugs.

The record

In the Linux kernel, the following vulnerability has been resolved: ocfs2: don't BUG_ON an invalid journal dinode [BUG] A fuzzed OCFS2 image can corrupt the current slot journal dinode while mount is still in progress. The mount path first reports the invalid journal block and then crashes in shutdown: kernel BUG at fs/ocfs2/journal.c:1034! Oops: invalid opcode: 0000 [#1] SMP KASAN NOPTI RIP: 0010:ocfs2_journal_toggle_dirty+0x2d6/0x340 fs/ocfs2/journal.c:1034 Call Trace: ocfs2_journal_shutdown+0x414/0xc30 fs/ocfs2/journal.c:1116 ocfs2_mount_volume fs/ocfs2/super.c:1785 [inline] ocfs2_fill_super+0x30a9/0x3cd0 fs/ocfs2/super.c:1083 get_tree_bdev_flags+0x38b/0x640 fs/super.c:1698 get_tree_bdev+0x24/0x40 fs/super.c:1721 ocfs2_get_tree+0x21/0x30 fs/ocfs2/super.c:1184 vfs_get_tree+0x9a/0x370 fs/super.c:1758 fc_mount fs/namespace.c:1199 [inline] do_new_mount_fc fs/namespace.c:3642 [inline] do_new_mount fs/namespace.c:3718 [inline] path_mount+0x5b8/0x1ea0 fs/namespace.c:4028 do_mount fs/namespace.c:4041 [inline] __do_sys_mount fs/namespace.c:4229 [inline] __se_sys_mount fs/namespace.c:4206 [inline] __x64_sys_mount+0x282/0x320 fs/namespace.c:4206 ... [CAUSE] ocfs2_journal_toggle_dirty() used to return -EIO when journal->j_bh no longer contained a valid dinode, because the startup and shutdown paths already handled that failure. Commit 10995aa2451a ("ocfs2: Morph the haphazard OCFS2_IS_VALID_DINODE() checks.") changed the check to a BUG_ON() under the assumption that the journal dinode had already been validated. That turns an unexpected invalid journal dinode during mount teardown into a kernel crash instead of a normal mount failure. [FIX] Replace the BUG_ON() with WARN_ON() and return -EIO. This keeps the invariant warning for debugging, but restores the original behavior of failing startup or shutdown cleanly instead of panicking the kernel.

Affected packages

Ecosystem Package Introduced Fixed