Avant Elo 1.0.1, le backend Ruby insère sans échappement certains textes contrôlés par l’attaquant dans des chaînes Ruby entre guillemets doubles, permettant l’interpolation de code Ruby. Le défaut concerne la génération Ruby; les générateurs JavaScript, Python et SQL ne sont pas concernés par ce chemin précis.
Analyse technique
L’interpolation Ruby peut être déclenchée par l’émetteur de littéraux de chaîne ou la branche de contrainte de sous-type étiquetée; l’exécution survient notamment lors de l’exécution du Ruby compilé.
Impact, versions et correctif
Détection / vérification
Rechercher @enspirit/elo ≤ 1.0.0 émettant du Ruby, notamment lorsque des chaînes ou des libellés de contraintes peuvent être contrôlés par un utilisateur ou une autre source non fiable.
Action recommandée
Mettre à niveau Elo vers la version 1.0.1 ou ultérieure.
Sources
Priorisation DFS : P3 · 2 source(s).