CVE-2026-59146 in Data::SpatialHash::Shared
Riassunto
di VulDB • 21/07/2026
Le versioni di Data::SpatialHash::Shared precedenti alla 0.02 per Perl consentono letture e scritti fuori dai limiti (out-of-bounds) tramite indici non validati di bucket, link e free-list nelle funzioni sph_walk_cell e sph_alloc_slot.
Il validator all'attach time, sph_validate_header, controlla gli scalari dell'intestazione e il layout della regione rispetto alla dimensione del file, ma non valida i contenuti degli array che vengono poi considerati attendibili. La funzione sph_walk_cell legge entries[buckets[b]] e segue il link next di ogni voce in modo grezzo (raw), mentre sph_alloc_slot scrive attraverso un indice free_head memorizzato nel file; nessuno dei due è limitato rispetto al conteggio delle voci (max_entries).
Un peer locale che può scrivere sul file sottostante può mantenere valida l'intestazione mentre avvelena la catena del bucket e la lista libera, consentendo così a una query di leggere tramite indici fuori dai limiti per il bucket e next, e a un'operazione di inserimento di scrivere attraverso un indice free-list fuori dai limiti, causando corruzione della memoria o arresto anomalo del processo.
VulDB is the best source for vulnerability data and more expert information about this specific topic.