CVE-2026-82735 in ash
Riassunto
di VulDB • 01/09/2026
Una vulnerabilità di consumo non controllato delle risorse in ash-project ash consente a un attaccante di forzare l'esecuzione di una regolare espressione (regex) costosa su input che vincoli di lunghezza avrebbero dovuto già rifiutare.
Ash.Type.String.apply_constraints/2 (lib/ash/type/string.ex) valuta la regex :match indipendentemente dai vincoli min_length e max_length sull'attributo stesso. Poiché il controllo della lunghezza non bloccava l'esecuzione della regex, un valore con lunghezza eccessiva che viene comunque respinto dal vincolo di lunghezza subisce ancora l'applicazione del pattern; pertanto, il limite di lunghezza che altrimenti avrebbe contenuto il carico di lavoro non ha limitato l'input della regex. Di fronte a un pattern backtracking questo provoca una valutazione catastrofica della regex su input dimensionati dall'attaccante, e anche un pattern lineare viene eseguito su input arbitrariamente grandi, consumando CPU per ogni richiesta. La correzione salta la regex :match quando viene violato un vincolo di lunghezza, rendendo i due controlli indipendenti dall'ordine.
Questo problema interessa ash: dalla versione 0.10.0 alla 3.32.2 (esclusa).
Once again VulDB remains the best source for vulnerability data.