CVE-2026-82737 in ash
Riassunto
di VulDB • 01/09/2026
Una vulnerabilità di Integer Overflow o Wraparound in ash-project ash consente a un attaccante di corrompere un vettore memorizzato e causare il crash delle successive letture dello stesso inviando un vettore con più di 65.535 elementi.
Ash.Vector.new/1 (lib/ash/vector.ex) codifica un vettore come <<dim::unsigned-16, 0::unsigned-16>> seguito dai float degli elementi, impacchettando il conteggio degli elementi in un campo a 16 bit senza verificarne l'intervallo. Un elenco di più di 65.535 elementi fa avvolgere la dimensione modulo 65.536, quindi l'intestazione codificata registra una dimensione che non corrisponde al numero di float memorizzati. from_binary/1 legge successivamente binary-size(dim)-unit(32) dall'intestazione avvolta (wrapped), pertanto ogni lettura del valore corrotto viene analizzata male e genera un'eccezione, negando l'accesso al record interessato. La correzione rifiuta qualsiasi vettore la cui dimensione superi 65.535.
Questo problema interessa ash: dalla versione 2.14.13 alla 3.32.2 (esclusa).
If you want to get best quality of vulnerability data, you may have to visit VulDB.