Direct naar de inhoud
Kritieke cyberalerts voor jouw sector & systemen — direct in je inbox. Aanmelden →
cybernieuws.nl Cybersecurity en informatiebeveiling nieuws alerts live · 1 min 139 bronnen 3 kritiek 1 vandaag
CVE's Videos Dagbriefing

← Terug naar CVE-database

CVE-2026-64187

MEDIUM · 5.5 CVSS Gepubliceerd: CWE-476

Beschrijving NL

In de Linux kernel is de volgende kwetsbaarheid verholpen:

xfs: herstel mislukken op een toegewijd logboekitem zonder regio's

Als het eerste op van een transactie een blote transactiekop is
(len == sizeof(struct xfs_trans_header)), xlog_recover_add_to_trans()
voegt een item toe, maar geen regio, en laat het op r_itemq staan met ri_cnt == 0 en
ri_buf == NULL. De koptekst kan worden gesplitst over OP-records, dus latere ops kunnen nog steeds worden toegevoegd
regio's; het item is alleen ongeldig als de transactie zich zonder vastlegt. Het runtime commit-pad zendt nooit een dergelijke transactie uit, dus dit is alleen
gebeurt op een bewerkt logboek. Het kwam van een AI-ondersteunde code-audit van de
recovery parser. xlog_recover_reorder_trans() roept ITEM_TYPE() aan op het item, dat
*(unsigned short *)item->ri_buf[0].iov_base en storingen op de NULL
ri_buf. Weiger het daar, voordat de commit handlers die ook lezen
ri_buf[0]. KASAN: null-ptr-deref binnen bereik [0x000000000000-0x0000000000000007]
RIP: 0010:xlog_recover_reorder_trans (fs/xfs/xfs_log_recover.c:1836)
xlog_recover_commit_trans (fs/xfs/xfs_log_recover.c:2043)
xlog_recover_process_data (fs/xfs/xfs_log_recover.c:2501)
xlog_do_recovery_pass (fs/xfs/xfs_log_recover.c:3244)
xlog_recover (fs/xfs/xfs_log_recover.c:3493)
xfs_log_mount (fs/xfs/xfs_log.c:618)
xfs_mountfs (fs/xfs/xfs_mount.c:1034)
xfs_fs_fill_super (fs/xfs/xfs_super .c:1938)
vfs_get_tree (fs/super.c:1695)
path_mount (fs/namespace.c:4161)
__x64_sys_mount (fs/namespace.c:4367)

Origineel (Engels) tonen

In the Linux kernel, the following vulnerability has been resolved:

xfs: fail recovery on a committed log item with no regions

If the first op of a transaction is a bare transaction header
(len == sizeof(struct xfs_trans_header)), xlog_recover_add_to_trans()
adds an item but no region, leaving it on r_itemq with ri_cnt == 0 and
ri_buf == NULL.

The header can be split across op records, so later ops may still add
regions; the item is only invalid if the transaction commits with none.
The runtime commit path never emits such a transaction, so this only
happens on a crafted log. It came from an AI-assisted code audit of the
recovery parser.

xlog_recover_reorder_trans() calls ITEM_TYPE() on the item, which reads
*(unsigned short *)item->ri_buf[0].iov_base and faults on the NULL
ri_buf. Reject it there, before the commit handlers that also read
ri_buf[0].

KASAN: null-ptr-deref in range [0x0000000000000000-0x0000000000000007]
RIP: 0010:xlog_recover_reorder_trans (fs/xfs/xfs_log_recover.c:1836)
xlog_recover_commit_trans (fs/xfs/xfs_log_recover.c:2043)
xlog_recover_process_data (fs/xfs/xfs_log_recover.c:2501)
xlog_do_recovery_pass (fs/xfs/xfs_log_recover.c:3244)
xlog_recover (fs/xfs/xfs_log_recover.c:3493)
xfs_log_mount (fs/xfs/xfs_log.c:618)
xfs_mountfs (fs/xfs/xfs_mount.c:1034)
xfs_fs_fill_super (fs/xfs/xfs_super.c:1938)
vfs_get_tree (fs/super.c:1695)
path_mount (fs/namespace.c:4161)
__x64_sys_mount (fs/namespace.c:4367)

Vendors

Linux

Affected products

Linux Kernel

References