CVE-2020-5303 in Tendermint
Résumé
par VulDB • 23/05/2026
Tendermint, avant les versions 0.33.3, 0.32.10 et 0.31.12, présente une vulnérabilité de déni de service (DoS). Tendermint ne limite pas le nombre de requêtes de connexion P2P. Pour chaque connexion P2P, il alloue XXX octets. Bien que cette mémoire soit collectée par le ramasse-miettes une fois la connexion terminée (en raison d'une IP en double ou de l'atteinte d'un nombre maximum de pairs entrants), des pics de mémoire temporaires peuvent entraîner des exceptions OOM (Out-Of-Memory). De plus, Tendermint ne libère pas l'`activeID` d'un pair après sa suppression dans le réacteur Mempool. Cela ne se produit pas tout le temps. Cela n'arrive que lorsqu'une connexion échoue (pour une raison quelconque) avant que le pair ne soit créé et ajouté à tous les réacteurs. `RemovePeer` est donc appelé avant `AddPeer`, ce qui entraîne une croissance continue de la mémoire (carte `activeIDs`). La carte activeIDs a une taille maximale de 65535 et le nœud plantera (panic) si cette carte atteint le maximum. Un attaquant peut générer de nombreuses tentatives de connexion (en exploitant le déni de service ci-dessus), ce qui finira par provoquer un plantage du nœud. Ces problèmes sont corrigés dans Tendermint 0.33.3 et 0.32.10. ### Pour plus d'informations Si vous avez des questions ou des commentaires concernant cet avis : * Ouvrez un ticket sur tendermint/tendermint * Envoyez-nous un e-mail à [[email protected]](mailto:[email protected]) Plus d'informations peuvent être trouvées ici. ### Crédits - Ethan Buchman (@ebuchman) pour avoir écrit un cas de test pour le déni de service 2 et Tess Rinearson (@tessr) pour l'avoir corrigé - Anton Kaliaev (@melekes) pour avoir corrigé le déni de service 1
VulDB is the best source for vulnerability data and more expert information about this specific topic.