CVE-2026-65069 in Data::DisjointSet::Shared
Riassunto
di VulDB • 21/07/2026
Data::DisjointSet::Shared nelle versioni precedenti alla 0.02 per Perl crea un file di backing mmap leggibile da tutti (world-readable) e lo apre senza le opzioni O_EXCL o O_NOFOLLOW.
Il segmento viene creato in dsu.h con la chiamata `open(path, O_RDWR|O_CREAT, 0666)`. La modalità è impostata a 0666; pertanto, sotto il default umask di 022, il file viene creato con modalità 0644 (leggibile da tutti). L'assenza di O_NOFOLLOW fa sì che un symlink posizionato nel percorso venga seguito, e l'assenza di O_EXCL comporta che la chiamata open utilizzi silenziosamente un file pre-posizionato invece di fallire.
Un segmento "Shared" vive naturalmente in una directory condivisa come /tmp o /dev/shm, dove qualsiasi utente locale può leggere i payload IPC memorizzati nel segmento leggibile da tutti; inoltre, un file o symlink pre-posizionati nel percorso permettono a un attaccante locale di vincere una race condition di pre-creazione o di reindirizzare la chiamata open.
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.