Page MenuHomePhabricator

"Change Password" should prompt users to "Reset Password" if no password has been set
Closed, ResolvedPublic

Description

From Q161, I tried to reproduce at rP HEAD and yes, it's reproducible.

  1. Create an account using OAuth,
  2. You feel you want to use user/password option when logging in.
  3. go to settingspassword
  4. Trying to put required 'old password', you realize you cannot put old password because OAuth creation form didn't ask you for password.

Event Timeline

revi updated the task description. (Show Details)
revi added a project: Auth.
revi added subscribers: revi, Intrainos, chad.
eadler added a project: Restricted Project.Jan 8 2016, 10:25 PM
eadler moved this task from Restricted Project Column to Restricted Project Column on the Restricted Project board.Jan 8 2016, 10:41 PM
epriestley renamed this task from OAuth created account cannot have a password to "Change Password" should prompt users to "Reset Password" if no password has been set.Apr 3 2016, 1:15 PM
epriestley triaged this task as Low priority.

The workflow to set a password on an account which does not have one is:

  • Log out.
  • Use the "Reset Password" workflow to get a password reset email.
  • Use that to set a password.

It's intentional that this flow is a little more involved than just typing a password.

One attack that "just type a password" allows is that an attacker can wait for you to get up without locking your terminal, then quickly add a password to your account and log in from elsewhere. This can be fast and hard to detect.

Forcing you through a reset + email workflow isn't much better (since you're probably logged in to Gmail or whatever too, in a different window on the same machine), but does make this attack at least marginally more difficult to execute without alerting the account owner (it will take longer, they may see the email on their phone before you can destroy it, etc).

When setting a password for the first time like this, we should probably also MFA you if we don't already. That should make the attack a bit more difficult.

eadler moved this task from Restricted Project Column to Restricted Project Column on the Restricted Project board.Jul 4 2016, 9:06 PM