Plateforme
go
Composant
github.com/juju/juju
Corrigé dans
2.9.57
3.6.21
4.0.6
0.0.0-20260408003526-d395054dc2c3
La vulnérabilité CVE-2026-5774 affecte Canonical Juju, impliquant une synchronisation incorrecte de la carte userTokens dans le serveur API. Cette faille peut permettre à un utilisateur authentifié de provoquer un déni de service sur le serveur ou de réutiliser un jeton de déchargement à usage unique. Les versions concernées sont les versions 2.0.0 à 4.0.6. Une correction est disponible dans la version 4.0.6.
La CVE-2026-5774 affecte le serveur API de Juju, plus précisément la structure localLoginHandlers. Cette structure utilise une carte en mémoire pour stocker les jetons de déchargement après une authentification locale réussie. La vulnérabilité réside dans le fait que cette carte est accédée de manière concurrente à partir de plusieurs goroutines de gestionnaires HTTP, sans aucun primitif de synchronisation (tel qu'un mutex) pour la protéger. Cela peut entraîner des pannes du temps d'exécution Go en raison de conditions de concurrence lors de la lecture, de l'écriture ou de la suppression de jetons simultanément. Dans le pire des cas, un jeton de déchargement pourrait être consommé plus d'une fois avant d'être supprimé, ce qui pourrait permettre un accès non autorisé aux ressources ou aux actions au sein de l'environnement Juju.
L'exploitation de cette vulnérabilité nécessite un accès au serveur API Juju. Un attaquant pourrait envoyer plusieurs requêtes d'authentification locale simultanément, en espérant que l'absence de synchronisation dans la gestion des jetons de déchargement permette à un jeton d'être consommé plus d'une fois. Cela pourrait permettre à l'attaquant d'obtenir un accès aux ressources ou d'exécuter des actions au sein de l'environnement Juju comme s'il était un utilisateur légitime. La probabilité d'exploitation dépend de la charge sur le serveur API et de la fréquence à laquelle les authentifications locales sont utilisées. L'absence d'un KEV (Key Evidence) indique qu'il n'y a aucune preuve publique d'exploitation active dans la nature.
Organizations heavily reliant on Juju for application deployment and management are at significant risk. This includes cloud providers, DevOps teams, and any environment where Juju is used to orchestrate applications, especially those handling sensitive data or critical infrastructure. Environments with legacy Juju installations or those that have not implemented robust access controls are particularly vulnerable.
• linux / server: Monitor Juju API server logs for Go runtime panics or unusual authentication patterns. Use journalctl -u juju-api-server to filter for error messages related to discharge token handling.
journalctl -u juju-api-server | grep -i "panic"• go: Review Juju source code for potential concurrency issues in the localLoginHandlers struct and related functions. Use static analysis tools to identify potential race conditions.
• generic web: Monitor authentication endpoints for unusual request patterns or excessive authentication attempts. Check access logs for errors related to discharge token handling.
disclosure
Statut de l'Exploit
EPSS
0.01% (percentile 2%)
CISA SSVC
La correction fournie (0.0.0-20260408003526-d395054dc2c3) résout cette vulnérabilité en introduisant des mécanismes de synchronisation appropriés, tels que des mutex, pour protéger l'accès concurrent à la carte des jetons de déchargement. Il est fortement recommandé de mettre à niveau vers cette version corrigée dès que possible. De plus, examinez les politiques de sécurité de votre environnement Juju et limitez l'accès aux ressources aux utilisateurs et services autorisés. Surveiller les journaux du serveur API Juju à la recherche d'erreurs ou de comportements inhabituels peut également aider à détecter les tentatives d'exploitation potentielles. Envisagez de mettre en œuvre une authentification à deux facteurs (2FA) pour une couche de sécurité supplémentaire.
Actualice el servidor de la API de Juju a la versión 2.9.57 o superior, 3.6.21 o superior, o 4.0.6 o superior para mitigar la vulnerabilidad. La actualización corrige la sincronización incorrecta del mapa de tokens de usuario, previniendo así posibles ataques de denegación de servicio o la reutilización de tokens de descarga de un solo uso.
Analyses de vulnérabilités et alertes critiques directement dans votre boîte mail.
Un jeton de déchargement est un identifiant temporaire qui permet à un utilisateur d'accéder à un environnement Juju après une authentification réussie.
Cette vulnérabilité pourrait permettre à un attaquant d'obtenir un accès non autorisé aux ressources ou d'exécuter des actions au sein de votre environnement Juju.
Si vous ne pouvez pas mettre à niveau immédiatement, envisagez de limiter l'accès au serveur API Juju et de surveiller les journaux à la recherche d'activités suspectes.
Actuellement, il n'y a aucune preuve publique que cette vulnérabilité a été exploitée dans la nature (KEV : non).
Vous pouvez trouver plus d'informations sur cette vulnérabilité dans le référentiel GitHub de Juju : github.com/juju/juju
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 go.mod et nous te dirons instantanément si tu es affecté.