Vulnérabilité dans le module http2 de Node.js

Les développeurs de la plateforme JavaScript côté serveur Node.js ont publié les versions correctives 12.22.4, 14.17.4 et 16.6.0, qui corrigent partiellement une vulnérabilité (CVE-2021-22930) dans le module http2 (client HTTP/2.0) , qui vous permet de déclencher un crash de processus ou potentiellement d'organiser l'exécution de votre code dans le système lors de l'accès à un hôte contrôlé par l'attaquant.

Le problème est dû à l'accès à la mémoire déjà libérée lors de la fermeture d'une connexion après avoir reçu des trames RST_STREAM (thread reset) pour les threads qui effectuent des opérations de lecture intensives qui bloquent les écritures. Si une trame RST_STREAM est reçue sans spécifier de code d'erreur, le module http2 appelle en plus une procédure de nettoyage des données déjà reçues, à partir de laquelle le gestionnaire de fermeture est à nouveau appelé pour le flux déjà fermé, ce qui conduit à une double libération des structures de données.

La discussion sur les correctifs indique que le problème n'est pas complètement résolu et que, dans des conditions légèrement modifiées, il continue d'apparaître dans les mises à jour publiées. L'analyse a montré que le correctif ne couvre qu'un des cas particuliers - lorsque le thread est en mode lecture, mais ne prend pas en compte les autres états du thread (lecture et pause, pause et certains types d'écriture).

Source: opennet.ru

Ajouter un commentaire