Lorsque `NodeVM` combine une liste d’autorisation `external` et un résolveur personnalisé, une correspondance partielle peut autoriser un nom de paquet qui contient le nom autorisé, tel que `evil-left-pad` pour une autorisation `left-pad`. Si le résolveur trouve ce paquet dans un chemin hôte résoluble, vm2 peut l’exécuter dans le contexte hôte; mettez à niveau vers 3.11.7 et vérifiez que les noms de paquets autorisés sont comparés exactement.
Analyse technique
Le contrôle de l’allowlist ne borne pas la correspondance au nom complet du paquet avant d’appeler le résolveur personnalisé. Le risque dépend de la présence du paquet collisionnel dans un chemin que ce résolveur peut atteindre.
Impact, versions et correctif
Détection / vérification
Vérifier la version de vm2 et les configurations NodeVM associant require.external à un résolveur personnalisé.
Action recommandée
Mettre à niveau vm2 vers 3.11.7. Vérifier les paquets accessibles au résolveur personnalisé et appliquer une comparaison exacte des noms autorisés.
Sources
Priorisation DFS : P3 · 1 source(s).