---
id: CVE-2026-46078
title: 'erofs: fix the out-of-bounds nameoff handling for trailing dirents'
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  erofs: fix the out-of-bounds nameoff handling for trailing dirents

  Currently we already have boundary-checks for nameoffs, but the trailing
  dirents are special since t…
severity: high
cvss: 7.1
cvssVector: 'CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:H'
cvssSource: cna
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= 3aa8ec716e52c02360457fa018296629b4d0becf <
    a8ee527807f7d97e55ce2ef2906f7f34975eb1c7
  - >-
    Linux >= 3aa8ec716e52c02360457fa018296629b4d0becf <
    aa16dca1b062355181ef215229eeac249d7c0d61
  - >-
    Linux >= 3aa8ec716e52c02360457fa018296629b4d0becf <
    80a23c6d1aba35be8746d74ac14e6ba5ae46da21
  - >-
    Linux >= 3aa8ec716e52c02360457fa018296629b4d0becf <
    222055e6b4063abd2d9e13c3d49bbd1724c50789
  - >-
    Linux >= 3aa8ec716e52c02360457fa018296629b4d0becf <
    48b27a955d22391c7f30169fa7b6b2e1977f1ce4
  - >-
    Linux >= 3aa8ec716e52c02360457fa018296629b4d0becf <
    8ebb951a284b7446e025afc7dc5e9516ef9a7214
  - >-
    Linux >= 3aa8ec716e52c02360457fa018296629b4d0becf <
    1d55445226c75ddd4e78b09b3e7d99109b28c366
  - >-
    Linux >= 3aa8ec716e52c02360457fa018296629b4d0becf <
    d18a3b5d337fa412a38e776e6b4b857a58836575
  - Linux 4.19
ssvc:
  exploitation: none
  automatable: 'no'
  technicalImpact: partial
  timestamp: '2026-10-16T15:19:29.931334Z'
published: '2026-05-27'
updated: '2026-10-16'
sourceUpdated: '2026-10-16T15:20:50.333Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-46078'
references:
  - url: 'https://git.kernel.org/stable/c/a8ee527807f7d97e55ce2ef2906f7f34975eb1c7'
  - url: 'https://git.kernel.org/stable/c/aa16dca1b062355181ef215229eeac249d7c0d61'
  - url: 'https://git.kernel.org/stable/c/80a23c6d1aba35be8746d74ac14e6ba5ae46da21'
  - url: 'https://git.kernel.org/stable/c/222055e6b4063abd2d9e13c3d49bbd1724c50789'
  - url: 'https://git.kernel.org/stable/c/48b27a955d22391c7f30169fa7b6b2e1977f1ce4'
  - url: 'https://git.kernel.org/stable/c/8ebb951a284b7446e025afc7dc5e9516ef9a7214'
  - url: 'https://git.kernel.org/stable/c/1d55445226c75ddd4e78b09b3e7d99109b28c366'
  - url: 'https://git.kernel.org/stable/c/d18a3b5d337fa412a38e776e6b4b857a58836575'
tags:
  - cve.org
epss: 0.00131
epssPercentile: 0.02417
ingestedAt: '2026-10-16T17:24:46.705Z'
---

## Overview

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

erofs: fix the out-of-bounds nameoff handling for trailing dirents

Currently we already have boundary-checks for nameoffs, but the trailing
dirents are special since the namelens are calculated with strnlen()
with unchecked nameoffs.

If a crafted EROFS has a trailing dirent with nameoff >= maxsize,
maxsize - nameoff can underflow, causing strnlen() to read past the
directory block.

nameoff0 should also be verified to be a multiple of
`sizeof(struct erofs_dirent)` as well [1].

[1] https://sashiko.dev/#/patchset/20260416063511.3173774-1-hsiangkao%40linux.alibaba.com

## Affected

- `Linux >= 3aa8ec716e52c02360457fa018296629b4d0becf < a8ee527807f7d97e55ce2ef2906f7f34975eb1c7`
- `Linux >= 3aa8ec716e52c02360457fa018296629b4d0becf < aa16dca1b062355181ef215229eeac249d7c0d61`
- `Linux >= 3aa8ec716e52c02360457fa018296629b4d0becf < 80a23c6d1aba35be8746d74ac14e6ba5ae46da21`
- `Linux >= 3aa8ec716e52c02360457fa018296629b4d0becf < 222055e6b4063abd2d9e13c3d49bbd1724c50789`
- `Linux >= 3aa8ec716e52c02360457fa018296629b4d0becf < 48b27a955d22391c7f30169fa7b6b2e1977f1ce4`
- `Linux >= 3aa8ec716e52c02360457fa018296629b4d0becf < 8ebb951a284b7446e025afc7dc5e9516ef9a7214`
- `Linux >= 3aa8ec716e52c02360457fa018296629b4d0becf < 1d55445226c75ddd4e78b09b3e7d99109b28c366`
- `Linux >= 3aa8ec716e52c02360457fa018296629b4d0becf < d18a3b5d337fa412a38e776e6b4b857a58836575`
- `Linux 4.19`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
