Weak Password Change Mechanism in octoprint/octoprint
Reported on
Aug 20th 2022
Description
The user password change page, doesn't require knowledge of the existing password.
Proof of Concept
- Log in as a normal user
- Go to the User Dashboard page and click
User Settings
.
- Go to the User Dashboard page and click
- Set a any new password.
- Click
confirm
- Click
- The password is changed successfully.
Impact
An attacker that gains access to an active user session, can change the account password without previous knowledge of the current password.
I arrive at CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L for this and thus 5.3 (Medium)
AV:L - "Log in as a normal user". So you need access to the victim's browser session in the first place, and thus this is local. AC:L - Once you have a login session, this is indeed low complexity PR:L - You need to be able to use the victim's browser in their name, with regular privileges of them UI:N - No further help from the user needed S:U - Only OctoPrint is affected C:L - Only the victim's account is affected I:L - Only the victim's account is affected A:L - Only the victim's account is affected
Ironically I already noticed this myself last week and fixed it on the development branch. So it'll be solved in 1.9.0 and actually 1.8.3 since I'll backport it to the next bugfix/security release.