Plattform
go
Komponente
github.com/juju/juju
Behoben in
2.9.57
3.6.21
4.0.6
0.0.0-20260408003526-d395054dc2c3
CVE-2026-5774 describes a concurrency vulnerability discovered in Juju, a tool for deploying and managing applications on cloud platforms. This flaw stems from the lack of synchronization when accessing discharge tokens within the Juju API server, potentially leading to runtime panics and the possibility of a discharge token being consumed multiple times. The vulnerability affects Juju versions up to 0.0.0-20260408003526-d395054dc2c3, and a fix is available in version 0.0.0-20260408003526-d395054dc2c3.
CVE-2026-5774 betrifft den Juju API-Server, insbesondere die Struktur localLoginHandlers. Diese Struktur verwendet eine In-Memory-Map, um Discharge-Token nach erfolgreicher lokaler Authentifizierung zu speichern. Die Schwachstelle liegt darin, dass auf diese Map von mehreren HTTP-Handler-Goroutinen gleichzeitig zugegriffen wird, ohne ein Synchronisationsprimitiv (z. B. ein Mutex) zum Schutz. Dies kann zu Go-Laufzeit-Paniken aufgrund von Race Conditions beim gleichzeitigen Lesen, Schreiben oder Löschen von Token führen. Im schlimmsten Fall könnte ein Discharge-Token mehr als einmal konsumiert werden, bevor es gelöscht wird, was unbefugten Zugriff auf Ressourcen oder Aktionen innerhalb der Juju-Umgebung ermöglichen könnte.
Die Ausnutzung dieser Schwachstelle erfordert Zugriff auf den Juju API-Server. Ein Angreifer könnte mehrere lokale Authentifizierungsanfragen gleichzeitig senden, in der Hoffnung, dass das Fehlen einer Synchronisation in der Discharge-Token-Verwaltung dazu führt, dass ein Token mehr als einmal konsumiert wird. Dies könnte es dem Angreifer ermöglichen, auf Ressourcen zuzugreifen oder Aktionen innerhalb der Juju-Umgebung als legitimer Benutzer auszuführen. Die Wahrscheinlichkeit einer Ausnutzung hängt von der Last auf dem API-Server und der Häufigkeit ab, mit der lokale Authentifizierungen verwendet werden. Das Fehlen eines KEV (Key Evidence) deutet darauf hin, dass es keine öffentlichen Beweise für eine aktive Ausnutzung in der Wildnis gibt.
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
Exploit-Status
EPSS
0.01% (2% Perzentil)
CISA SSVC
Die bereitgestellte Korrektur (0.0.0-20260408003526-d395054dc2c3) behebt diese Schwachstelle, indem geeignete Synchronisationsmechanismen, wie z. B. Mutexe, eingeführt werden, um den gleichzeitigen Zugriff auf die Discharge-Token-Map zu schützen. Es wird dringend empfohlen, so schnell wie möglich auf diese gepatchte Version zu aktualisieren. Überprüfen Sie außerdem die Sicherheitsrichtlinien Ihrer Juju-Umgebung und beschränken Sie den Zugriff auf Ressourcen auf autorisierte Benutzer und Dienste. Die Überwachung der Juju API-Serverprotokolle auf Fehler oder ungewöhnliches Verhalten kann ebenfalls dazu beitragen, potenzielle Exploitationsversuche zu erkennen. Erwägen Sie die Implementierung einer Zwei-Faktor-Authentifizierung (2FA) für eine zusätzliche Sicherheitsebene.
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.
Schwachstellenanalysen und kritische Warnungen direkt in deinen Posteingang.
Ein Discharge-Token ist ein temporärer Identifikator, der einem Benutzer den Zugriff auf eine Juju-Umgebung nach erfolgreicher Authentifizierung ermöglicht.
Diese Schwachstelle könnte es einem Angreifer ermöglichen, unbefugten Zugriff auf Ressourcen zu erhalten oder Aktionen innerhalb Ihrer Juju-Umgebung auszuführen.
Wenn Sie nicht sofort aktualisieren können, beschränken Sie den Zugriff auf den Juju API-Server und überwachen Sie die Protokolle auf verdächtige Aktivitäten.
Derzeit gibt es keine öffentlichen Beweise dafür, dass diese Schwachstelle in der Wildnis ausgenutzt wurde (KEV: nein).
Sie finden weitere Informationen zu dieser Schwachstelle im Juju GitHub-Repository: github.com/juju/juju
Lade deine Abhängigkeitsdatei hoch und erfahre sofort, ob dich diese und andere CVEs treffen.
Lade deine go.mod-Datei hoch und wir sagen dir sofort, ob du betroffen bist.