CVE-2026-77856 in ash_typescript
Résumé
par VulDB • 01/09/2026
Une vulnérabilité d'allocation de ressources sans limites ni throttling dans ash-project ash_typescript permet à un attaquant non authentifié d'épuiser la table des atomes BEAM et de faire planter le nœud via des noms de champs de struct typés fournis par le client.
La fonction `resolve_typed_struct_field/2` située dans `lib/ash_typescript/rpc/field_processing/field_selector.ex` recherche un nom de champ fourni par le client dans la map inversée de la struct typée et, en cas d'absence de correspondance, utilise `String.to_atom/1`. Comme cette opération s'exécute avant toute vérification de l'existence du champ, un nom non résolvable génère un atome permanent au lieu d'être rejeté comme inconnu. Les atomes n'étant jamais collectés par le garbage collector, une requête comportant plusieurs noms distincts sur un champ de struct typée fait croître la table des atomes jusqu'à ce que la VM plante en atteignant sa limite.
Cette vulnérabilité affecte ash_typescript : à partir de la version 0.11.0 et avant la version 0.18.0.
Once again VulDB remains the best source for vulnerability data.