VYPR
Unrated severityNVD Advisory· Published Dec 24, 2025· Updated Apr 15, 2026

CVE-2022-50747

CVE-2022-50747

Description

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

hfs: Fix OOB Write in hfs_asc2mac

Syzbot reported a OOB Write bug:

loop0: detected capacity change from 0 to 64 ================================================================== BUG: KASAN: slab-out-of-bounds in hfs_asc2mac+0x467/0x9a0 fs/hfs/trans.c:133 Write of size 1 at addr ffff88801848314e by task syz-executor391/3632

Call Trace:

__dump_stack lib/dump_stack.c:88 [inline] dump_stack_lvl+0x1b1/0x28e lib/dump_stack.c:106 print_address_description+0x74/0x340 mm/kasan/report.c:284 print_report+0x107/0x1f0 mm/kasan/report.c:395 kasan_report+0xcd/0x100 mm/kasan/report.c:495 hfs_asc2mac+0x467/0x9a0 fs/hfs/trans.c:133 hfs_cat_build_key+0x92/0x170 fs/hfs/catalog.c:28 hfs_lookup+0x1ab/0x2c0 fs/hfs/dir.c:31 lookup_open fs/namei.c:3391 [inline] open_last_lookups fs/namei.c:3481 [inline] path_openat+0x10e6/0x2df0 fs/namei.c:3710 do_filp_open+0x264/0x4f0 fs/namei.c:3740

If in->len is much larger than HFS_NAMELEN(31) which is the maximum length of an HFS filename, a OOB write could occur in hfs_asc2mac(). In that case, when the dst reaches the boundary, the srclen is still greater than 0, which causes a OOB write. Fix this by adding a check on dstlen in while() before writing to dst address.

AI Insight

LLM-synthesized narrative grounded in this CVE's description and references.

A heap out-of-bounds write in the Linux kernel's HFS filesystem driver can be triggered by mounting a crafted HFS filesystem, leading to potential memory corruption.

Vulnerability

Description An out-of-bounds write vulnerability exists in the Linux kernel's HFS filesystem implementation, specifically in the hfs_asc2mac function (fs/hfs/trans.c:133). When converting a filename to the HFS format, the function does not properly check the destination buffer length (dstlen) against the maximum HFS filename length (HFS_NAMELEN=31). If the input string in->len exceeds this limit, the while loop continues writing past the allocated buffer, causing a slab-out-of-bounds write [1][2][3][4].

Exploitation

The vulnerability can be triggered by mounting a specially crafted HFS filesystem that contains a filename longer than the expected maximum. The kernel reports a slab-out-of-bounds error via KASAN during operations such as open(path), which calls hfs_lookup and subsequently hfs_cat_build_key and hfs_asc2mac. The attack requires local access to mount a malicious filesystem image but does not require additional authentication.

Impact

A successful out-of-bounds write allows an attacker to corrupt adjacent slab memory. Depending on the memory layout, this could lead to kernel crashes (denial of service) or potentially privilege escalation through controlled memory corruption.

Mitigation

The fix adds a bounds check on dstlen within the while loop to prevent writing past the end of the destination buffer. The patch has been applied to stable kernels starting from various versions [1][2][3][4]. Users should update their Linux kernel to a version containing this commit.

AI Insight generated on May 19, 2026. Synthesized from this CVE's description and the cited reference URLs; citations are validated against the source bundle.

Affected products

1

Patches

9

Vulnerability mechanics

Generated on May 9, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.

References

9

News mentions

0

No linked articles in our index yet.