Page MenuHomePhabricator

Add a rate limit for guessing old passwords when changing passwords
ClosedPublic

Authored by epriestley on Jan 22 2018, 1:52 AM.
Tags
None
Referenced Files
F13196289: D18906.diff
Sun, May 12, 11:09 PM
F13179783: D18906.id45367.diff
Wed, May 8, 9:26 PM
F13174812: D18906.id45322.diff
Wed, May 8, 1:19 AM
Unknown Object (File)
Fri, May 3, 4:12 AM
Unknown Object (File)
Wed, May 1, 12:14 PM
Unknown Object (File)
Mon, Apr 29, 4:09 PM
Unknown Object (File)
Thu, Apr 25, 12:02 AM
Unknown Object (File)
Fri, Apr 19, 7:07 PM
Subscribers
None

Details

Summary

Depends on D18904. Ref T13043. If an attacker compromises a victim's session and bypasses their MFA, they can try to guess the user's current account password by making repeated requests to change it: if they guess the right "Old Password", they get a different error than if they don't.

I don't think this is really a very serious concern (the attacker already got a session and MFA, if configured, somehow; many installs don't use passwords anyway) but we get occasional reports about it from HackerOne. Technically, it's better policy to rate limit it, and this should reduce the reports we receive.

Test Plan

Tried to change password over and over again, eventually got rated limited. Used bin/auth unlimit to clear the limit, changed password normally without issues.

Diff Detail

Repository
rP Phabricator
Lint
Lint Not Applicable
Unit
Tests Not Applicable