Plateforme
java
Composant
gerrit
Corrigé dans
2.15.22
2.16.26
3.0.16
3.1.12
3.2.7
3.3.2
La vulnérabilité CVE-2021-22553 affecte les serveurs Gerrit versions 3.3.2 et antérieures. Elle se manifeste par un épuisement de la mémoire vive (heap) dû à la création de sessions Jetty persistantes lors d'opérations Git. L'absence d'expiration de ces sessions, combinée à des actions Git répétées, peut rapidement consommer les ressources du serveur, entraînant une dégradation des performances voire un plantage.
L'impact principal de cette vulnérabilité est une déni de service (DoS). Un attaquant, en effectuant un grand nombre d'opérations Git sur un serveur Gerrit vulnérable, peut provoquer une saturation de la mémoire vive, rendant le serveur indisponible pour les utilisateurs légitimes. Cette surcharge peut également affecter d'autres services s'ils partagent les mêmes ressources système. Bien qu'il ne s'agisse pas d'une exécution de code à distance, la dégradation de la disponibilité du serveur peut avoir des conséquences significatives pour les équipes de développement et les processus de gestion du code source. L'accumulation progressive de sessions Jetty non gérées rend cette vulnérabilité particulièrement insidieuse, car elle peut passer inaperçue pendant une période prolongée avant de provoquer un incident majeur.
Cette vulnérabilité n'est pas actuellement répertoriée sur le KEV de CISA. La probabilité d'exploitation est considérée comme faible à modérée, car elle nécessite une connaissance approfondie du fonctionnement de Gerrit et une capacité à effectuer un grand nombre d'opérations Git. Aucun proof-of-concept (PoC) public n'est connu à ce jour. La date de publication de la CVE est le 17 février 2021.
Organizations heavily reliant on Gerrit for code review, particularly those with large development teams or frequent Git activity, are at increased risk. Environments with limited server resources or inadequate monitoring practices are also more vulnerable. Teams using older Gerrit versions without robust session management configurations are particularly exposed.
• java / server:
ps -ef | grep gerrit | grep -v grep | awk '{print $2}' | xargs -I {} jstat -gc {} 2>&1 | grep -i 'HeapUsage' • java / server: Monitor Gerrit's memory usage using tools like JConsole or VisualVM. Look for steadily increasing heap usage without corresponding decreases. • java / server: Check Gerrit's Jetty configuration for session timeout settings. Ensure that session timeouts are properly configured to prevent unbounded session creation. • java / server: Review Gerrit logs for errors related to memory allocation or Jetty session management.
disclosure
Statut de l'Exploit
EPSS
0.09% (percentile 26%)
Vecteur CVSS
La solution recommandée est de mettre à jour immédiatement votre instance Gerrit vers la version 3.3.2 ou supérieure, qui corrige cette vulnérabilité. En attendant la mise à jour, il n'existe pas de correctif direct. Une solution de contournement possible consiste à limiter le nombre d'opérations Git simultanées autorisées sur le serveur, bien que cela puisse affecter la productivité des développeurs. Surveillez attentivement l'utilisation de la mémoire vive du serveur Gerrit et configurez des alertes pour détecter une consommation excessive. L'utilisation d'un pare-feu applicatif web (WAF) peut aider à limiter le nombre de requêtes Git suspectes, mais ne constitue pas une solution de remplacement à la mise à jour.
Mettez à niveau Gerrit à la version 2.15.22, 2.16.26, 3.0.16, 3.1.12, 3.2.7 ou 3.3.2, ou à une version ultérieure. Cela corrige le problème d'épuisement de mémoire (heap) causé par des sessions Jetty non expirées.
Analyses de vulnérabilités et alertes critiques directement dans votre boîte mail.
CVE-2021-22553 is a medium severity vulnerability affecting Gerrit versions 3.3.2 and earlier. Repeated Git operations create unbounded Jetty sessions, leading to heap memory exhaustion and potential denial of service.
If you are using Gerrit versions 3.3.2 or earlier, you are affected by this vulnerability. Upgrade to version 3.3.2 or later to mitigate the risk.
The recommended fix is to upgrade Gerrit to version 3.3.2 or later. If an immediate upgrade is not possible, consider temporary workarounds like limiting Git operations or implementing session timeouts.
There is currently no evidence of active exploitation campaigns targeting CVE-2021-22553, but the vulnerability's nature makes it relatively easy to reproduce.
Refer to the official Gerrit security advisory for detailed information and instructions: https://groups.google.com/g/gerrit-announce/c/Vv-wz1-w_2Q
Téléverse ton fichier de dépendances et découvre instantanément si cette CVE et d'autres te touchent.
Téléverse ton fichier pom.xml et nous te dirons instantanément si tu es affecté.