Arbitrary user password reset leading to administrator account takeover
Beschreibung
Die Sicherheitsanfälligkeit ermöglicht es jedem authentifizierten Benutzer, sein eigenes Passwort zu ändern, ohne das aktuelle Passwort anzugeben oder eine aktive erhöhte Sitzung durchzuführen. Es erlaubt dem Angreifer auch, die Passwörter anderer Benutzer zu ändern, wenn das Konto des Angreifers die Berechtigung "Benutzer bearbeiten" hat (was nicht erlaubt, die Passwörter anderer zu ändern) und die Berechtigung "Benutzer verwalten" fehlt (was erforderlich ist, um die Passwörter anderer zu ändern). Die Sicherheitsanfälligkeit existiert in der Aktion "elemente/speichern" beim Speichern eines Benutzerelements. Der "UserPasswordValidator" wendet nur einen "sicheren" Validator auf das "newPassword"-Feld an, ohne eine "on"-Szenarioeinschränkung. Dies macht `newPassword` massenweise zuordenbar während des generischen Elements Save Flow, wodurch die dedizierte `User/Set-Password`-Aktion, die eine erhöhte Sitzungsüberprüfung erzwingt, vollständig umgangen wird. Ein Angreifer mit einer authentifizierten Sitzung (ob entführt oder ein normaler / niedrig privilegierter Benutzer) kann sein eigenes Passwort ändern und möglicherweise Administratorkonten übernehmen. ## Erforderliche Berechtigungen - Zugriff auf das Bedienfeld - Benutzer bearbeiten (für das Szenario der Kontoübernahme erforderlich) ## Auswirkungen - Jeder authentifizierte Benutzer kann sein eigenes Passwort ändern, ohne sein aktuelles Passwort anzugeben. Benutzer mit Edit-Benutzerberechtigung können das Passwort eines Benutzers ändern, einschließlich Administratoren.
Quellen & weiterführende Informationen
Hier werden ausschließlich tatsächlich zu dieser Schwachstelle gespeicherte Quellenbelege angezeigt.
Was ist zur Behebung zu tun?
Auf eine behobene Version aktualisieren: 5.10.8.
Empfohlene Schritte
- Betroffene Systeme identifizieren: Pixel & Tonic Craft CMS.
- Exposition prüfen: Internet-Erreichbarkeit, Admin-Oberflächen, VPN, Mail- oder Webdienste.
- Update/Rollout auf behobene Version vorbereiten und priorisiert einspielen.
- Nacharbeiten dokumentieren: betroffene Assets, Maßnahme, Zeitpunkt, Restrestrisiko.
Übergangsmaßnahmen
- Zugriff auf betroffene Dienste auf vertrauenswürdige Netze einschränken.
- WAF/IDS/EDR-Regeln und Hersteller-IOCs aktivieren, sofern verfügbar.
- Nicht benötigte Funktionen, Plugins oder Dienste temporär deaktivieren.
- Administrative Zugänge besonders absichern: MFA, Passwortrotation, Session-Invalidierung.