The password of a saved login can be revealed with devtools without re-entering the master password if one is set
Categories
(Firefox :: about:logins, defect, P2)
Tracking
()
Tracking | Status | |
---|---|---|
firefox-esr60 | --- | unaffected |
firefox-esr68 | --- | unaffected |
firefox69 | --- | disabled |
firefox70 | - | wontfix |
firefox71 | - | wontfix |
firefox72 | - | wontfix |
firefox73 | --- | verified |
People
(Reporter: cmuntean, Assigned: MattN)
References
Details
(Keywords: csectype-disclosure, regression, sec-moderate, Whiteboard: [adv-main73-] )
Attachments
(5 files, 4 obsolete files)
[Affected Versions]:
- Nightly 71.0a1
- Beta 70.0b9
[Affected Platforms]
- All Windows
- All Mac
- All Linux
[Prerequisites]
- Have multiple logins saved.
- Have a master password set.
[Steps to reproduce]:
- Open the latest Nightly build with the profile from prerequisites.
- Navigate to a login page and enter the MP to unlock it (eg: "https://www.facebook.com/").
- Open about:logins and select any saved password from the login list.
- Right-click on the password and select the "Inspect Element" option.
- From the Inspector tool change the input's argument from "password" to "text" and press "Ente" key.
- Observe the password from login-item.
[Expected results]:
- The password is not revealed.
[Actual results]:
- The password is revealed.
[Notes]:
- Attached a screen recording with the issue.
Assignee | ||
Updated•5 years ago
|
Updated•5 years ago
|
Comment 1•5 years ago
|
||
Like the other similar bug, this would be prevented by asking for the master password always when you load about:logins, rather than trying to wait until you look at individual items.
Updated•5 years ago
|
Assignee | ||
Comment 2•5 years ago
|
||
(In reply to Daniel Veditz [:dveditz] from comment #1)
Like the other similar bug, this would be prevented by asking for the master password always when you load about:logins, rather than trying to wait until you look at individual items.
Right, but that is more annoying for users who weren't going to copy/reveal any of the passwords so there is a tradeoff. I guess we can see how common that case is with the event telemetry.
Reporter | ||
Updated•5 years ago
|
Assignee | ||
Updated•5 years ago
|
Comment 3•5 years ago
|
||
Unless you think this should block the feature for 70, I'll assume at this point we're aiming to fix it for 71.
But we still have beta 13 and 14 next week and I would still take a patch for 70.
Updated•5 years ago
|
Assignee | ||
Updated•5 years ago
|
Assignee | ||
Updated•5 years ago
|
Comment 5•5 years ago
|
||
Matt, do you intend to fix this in beta 71? thanks
Assignee | ||
Comment 6•5 years ago
|
||
Mass removing [skyline] and [passwords:management] from about:logins bugs which are no longer useful.
Assignee | ||
Updated•5 years ago
|
Assignee | ||
Comment 7•5 years ago
|
||
(In reply to Pascal Chevrel:pascalc from comment #5)
Matt, do you intend to fix this in beta 71? thanks
No, probably not since we need UX input and/or architectural changes.
Assignee | ||
Comment 8•5 years ago
|
||
I found that this was reported publicly in the (somewhat) wrong component in bug 1580929. Should we dupe that one hear (since it has more info) and open this one up?
Comment 9•5 years ago
|
||
(In reply to Matthew N. [:MattN] (PM me if requests are blocking you) from comment #8)
I found that this was reported publicly in the (somewhat) wrong component in bug 1580929. Should we dupe that one hear (since it has more info) and open this one up?
Thanks, let's move it to th 72 queue then.
Comment 10•5 years ago
|
||
It makes sense to dupe 1580929 here given there's more discussion here.
Unhiding is fine with me. We just had another duplicate report of this sent to the security@ mail alias.
Comment 12•5 years ago
|
||
Could we have an explicit "log out" or "Re-lock" button on the about:logins page to re-secure the Password Manager?
Currently, the only way I think you can log out -- other than by ending your session -- is to cancel out of the Master Password dialog. So clicking any "Show password" icon and then clicking Cancel (or pressing the Esc key) in the dialog is a workaround; the page will be re-secured if reloaded. But this is not intuitive or easy to discover (except by accident).
So a button to log out and clear the contents would be helpful for those Master Password users who don't want to leave the page "unlocked."
Assignee | ||
Comment 16•5 years ago
|
||
(Quoting Matthew N. [:MattN] from comment #2)
(In reply to Daniel Veditz [:dveditz] from comment #1)
Like the other similar bug, this would be prevented by asking for the master password always when you load about:logins, rather than trying to wait until you look at individual items.
Right, but that is more annoying for users who weren't going to copy/reveal any of the passwords so there is a tradeoff. I guess we can see how common that case is with the event telemetry.
Katie are you fine with what comment 1 proposes as a solution until we finish bigger decisions about MP? I don't want this to blow up since it's a regression for this UI (even though autofill in every browser has this issue too).
Comment 17•5 years ago
|
||
Yes, asking for the user to enter their MP upon loading about:logins makes sense (rather than waiting until a user chooses to show a password). If a user has chosen to set a MP, then this step feels like a feature of how it protects all logins rather than an annoyance/bug.
Assignee | ||
Updated•5 years ago
|
Comment 18•5 years ago
|
||
Bugbug thinks this bug is a regression, but please revert this change in case of error.
Updated•5 years ago
|
Updated•5 years ago
|
Comment 19•5 years ago
|
||
If anyone's counting duplicates we just got another report of this issue mailed to the security@ alias. Clearly people think this is a security problem and don't understand that they've already unlocked everything if they've entered the master password once already. As Matt points out this has implications for password fill as well. There's no way to "log out" of the master password--via official UX, anyway. If you know the trick you can do it by trying to view a password and not entering a valid password, but that's a non-obvious ugly hack.
Maybe we need a locked/un-locked button in the toolbar, kind of like the keychain one for MacOS. That's probably a terrible suggestion, but maybe on the FxA toolbar menu there could be a "Unlock passwords" | "Log-out of Master Password" toggle menu item grouped with the existing "Logins and Passwords" that only shows for people with master passwords.
(In reply to Matthew N. [:MattN] (PM me if requests are blocking you) from comment #2)
Right, but that is more annoying for users who weren't going to copy/reveal any of the passwords so there is a tradeoff. I guess we can see how common that case is with the event telemetry.
Is it common for people to go into about:logins just to see the site list? Isn't a list of sites and usernames kind of sensitive on its own?
Assignee | ||
Comment 20•5 years ago
|
||
FYI I did spend multiple hours working on a fix but it gets quite complicated when you have to handle multiple about:logins being open at once and the existing code is not at all friendly to re-locking once its opened. I also had discussions with UX about possible solutions but haven't had a chance to get back to this due to an unclear path forward that is feasible to implement while there are also other competing priorities.
Assignee | ||
Comment 21•5 years ago
|
||
Assignee | ||
Comment 22•5 years ago
|
||
Depends on D57691
Assignee | ||
Comment 23•5 years ago
|
||
The master password is now required before loading the page so we can filter by its value without disclosing new information.
Depends on D57692
Assignee | ||
Comment 24•5 years ago
|
||
Depends on D57693
Assignee | ||
Comment 25•5 years ago
|
||
The above patches are just prerequisite cleanups, not the main patch which is still WIP.
Updated•5 years ago
|
Updated•5 years ago
|
Updated•5 years ago
|
Updated•5 years ago
|
Assignee | ||
Comment 26•5 years ago
|
||
Depends on D58128
Assignee | ||
Comment 27•5 years ago
|
||
Depends on D58129
Assignee | ||
Comment 28•5 years ago
|
||
Depends on D58130
Assignee | ||
Comment 29•5 years ago
|
||
Requiring the MP before loading the page was too big of a change for something we would ideally uplift and would be inconsistent with how the old password management UI worked and how Chrome works so for now I'm just addressing the specific issue in this bug summary: access to the plaintext password via the password input element in the Inspector of developer tools before re-entering the master password. There will still be other ways to get the plaintext out of the page, just like the same can be done from the Browser Console/Toolbox once MP has already been unlocked.
(In reply to Daniel Veditz [:dveditz] from comment #19)
If anyone's counting duplicates we just got another report of this issue mailed to the security@ alias. Clearly people think this is a security problem and don't understand that they've already unlocked everything if they've entered the master password once already. As Matt points out this has implications for password fill as well. There's no way to "log out" of the master password--via official UX, anyway. If you know the trick you can do it by trying to view a password and not entering a valid password, but that's a non-obvious ugly hack.
Technically there is a button buried in the Security Devices preferences sub-dialog (chrome://pippki/content/device_manager.xhtml) for this but it's still a few clicks as you have to choose Software Security Device on sidebar then choose "Log Out".
(In reply to Matthew N. [:MattN] (PM me if requests are blocking you) from comment #2)
Right, but that is more annoying for users who weren't going to copy/reveal any of the passwords so there is a tradeoff. I guess we can see how common that case is with the event telemetry.
Is it common for people to go into about:logins just to see the site list? Isn't a list of sites and usernames kind of sensitive on its own?
It is for me and both our old UI and Chrome support this use case. I just checked with telemetry and the number of actions that would currently require a MP is only 65% of the number of times about:logins was loaded so it seems like it is fairly common. This analysis was for all users, not specific to users with MP enabled.
Comment 30•5 years ago
|
||
Comment 31•5 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/812145c6e714
https://hg.mozilla.org/mozilla-central/rev/d16058ad1ced
https://hg.mozilla.org/mozilla-central/rev/06976e586b36
Reporter | ||
Comment 32•5 years ago
|
||
I have verified this issue and is no longer reproducible. Tested on the latest Nightly 73.0a1 build (Build ID: 20200103094738) on Windows 7 x64, Mac OS 10.15 and Ubuntu 18.04 x64.
- The password of a saved login can no longer be revealed with devtools without re-entering the master password.
- The master password is required when entering edit mode.
Updated•5 years ago
|
Updated•5 years ago
|
Comment 34•5 years ago
|
||
Assignee | ||
Comment 35•5 years ago
|
||
I personally don't think this deserves an advisory as this protection isn't really security protection, it's to make it harder for people snooping and this was an known limitation of the fix in bug 1579512. If you think we need one then it should clarify that the bypass is only through the use of developer tools.
Comment 36•5 years ago
|
||
I was really leaning against it but wasn't certain and figured I'd write it up and see if anyone said anything.
Description
•