Skip to content

Craft CMS: Arbitrary user password reset leading to administrator account takeover

High severity GitHub Reviewed Published Jul 25, 2026 in craftcms/cms

Package

composer craftcms/cms (Composer)

Affected versions

>= 5.0.0-RC1, < 5.10.8

Patched versions

5.10.8

Description

The vulnerability allows any authenticated user to change their own password without providing the current password or having an active elevated session. It also allows the attacker to change other users’ passwords if the attacker’s account has edit users permission (which doesn’t allow changing others’ passwords) and lacks Administrate users permission (which is required to change others’ passwords).

The vulnerability exists in the elements/save action when saving a User element. The UserPasswordValidator applies only a safe validator to the newPassword field without an on scenario restriction. This makes newPassword mass-assignable during the generic element save flow, completely bypassing the dedicated users/set-password action that enforces elevated session verification.

An attacker with any authenticated session (whether it’s hijacked or a normal / low-privileged user) can change their own password, and potentially take over administrator accounts.

Required Permissions

  • Access the control panel
  • Edit users (needed for the account takeover attack scenario)

Impact

  • Any authenticated user can change their own password without providing their current password.
  • Users with Edit users permission can change any user’s password, including administrators.

References

@angrybrad angrybrad published to craftcms/cms Jul 25, 2026
Published to the GitHub Advisory Database Aug 6, 2026
Reviewed Aug 6, 2026

Severity

High

EPSS score

Weaknesses

Improper Authorization

The product does not perform or incorrectly performs an authorization check when an actor attempts to access a resource or perform an action. Learn more on MITRE.

CVE ID

No known CVE

GHSA ID

GHSA-p8x7-9vfw-p7vc

Source code

Credits

Loading Checking history
See something to contribute? Suggest improvements for this vulnerability.