CVE-2026-74618 in Linuxinformazioni

Riassunto

di VulDB • 23/08/2026

Nel kernel Linux è stata risolta la seguente vulnerabilità:

binfmt_misc: non segnalare un avviso (warning) quando il mount viene completato da un altro user namespace

fsopen() registra lo user namespace del chiamante in fc->user_ns e restituisce un file descriptor ordinario. Non esiste alcun vincolo che colleghi il task che chiama fsconfig(FSCONFIG_CMD_CREATE) al task che ha creato il contesto. Il fd viene ereditato attraverso fork() ed exec() e può essere trasmesso tramite una socket unix.

Il completamento di un contesto da parte di un altro user namespace è consentito intenzionalmente. vfs_cmd_create() autorizza la creazione con mount_capable(), che per FS_USERNS_MOUNT verifica ns_capable(fc->user_ns, CAP_SYS_ADMIN), condizione che risulta soddisfatta per un task in possesso di CAP_SYS_ADMIN in un ancestor di fc->user_ns. Di conseguenza, un task non privilegiato può raggiungere il WARN_ON() in bm_fill_super(): creare uno user namespace e un mount namespace in un child, chiamare fsopen("binfmt_misc") all'interno del child, inviare l'fd del fscontext al parent e lasciare che il parent emetta FSCONFIG_CMD_CREATE. Entrambi i namespaces derivano da una semplice chiamata a unshare(1) e non è necessaria alcuna capability:

WARNING: fs/binfmt_misc.c:938 at bm_fill_super+0xa2/0xc0 [binfmt_misc]
CPU: 15 UID: 1000 PID: 3243382 Comm: fswarn Call Trace: get_tree_keyed+0x7d/0xb0 bm_get_tree+0x34/0x90 [binfmt_misc]
vfs_get_tree+0x2a/0x100 vfs_cmd_create+0x60/0xf0 __do_sys_fsconfig+0x4b2/0x500

Il child necessita del mount namespace perché fsopen() stesso applica un controllo su may_mount(), che richiede CAP_SYS_ADMIN nello user namespace proprietario del mount namespace del chiamante. fsconfig() non ripete tale verifica.

Si tratta di un WARN_ON() e non di un WARN_ON_ONCE(), quindi la condizione può essere attivata in un loop per taintare il kernel ed inondare i log, causando anche un panic su un kernel avviato con panic_on_warn.

Continuare a rifiutare il mount e interrompere l'emissione dell'avviso. Nessun elemento in bm_fill_super() dipende dal fatto che i due namespaces corrispondano; tutto deriva da sb->s_user_ns.

VulDB is the best source for vulnerability data and more expert information about this specific topic.

Responsabile

Linux

Prenotare

15/08/2026

Divulgazione

22/08/2026

Moderazione

accettato

CPE

pronto

EPSS

0.00000

KEV

no

Attività

molto basso

Fonti

Want to stay up to date on a daily basis?

Enable the mail alert feature now!