New issue
Advanced search Search tips

Issue 783755 link

Starred by 2 users

Issue metadata

Status: Available
Owner: ----
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Android , Windows , Chrome , Mac , Fuchsia
Pri: 3
Type: Bug

Blocking:
issue 770175



Sign in to add a comment

autofilling is displayed with <input type="text">

Reported by francesc...@outlook.com, Nov 10 2017

Issue description

UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36

Example URL:
any

Steps to reproduce the problem:
You can see the bug in the attached screenshot. The field has type="text", but the "Use password for:" popup is displayed.

An example to reproduce:

a) Store a password in Chrome for the site: https://jsfiddle.net/5zspem7m/1/

b) open this: https://jsfiddle.net/66afpv7w/
If you focus the password field, no autofilling popup is displayed (as intended).
If you type some characters and then delete all of them, the popup is displayed (bug).

What is the expected behavior?

What went wrong?
The input has type=text but the browser asks to put a password into it, and displays it in plain text on hover

Does it occur on multiple sites: Yes

Is it a problem with a plugin? No 

Did this work before? N/A 

Does this work in other browsers? Yes

Chrome version: 61.0.3163.100  Channel: stable
OS Version: 10.0
Flash Version:
 
chrome-pass-bug.png
136 KB View Download

Comment 1 by kochi@chromium.org, Nov 10 2017

Components: -Blink Blink>Forms>Text UI>Browser>Autofill
Labels: M-64 Needs-Milestone OS-Mac
Status: Untriaged (was: Unconfirmed)
Able to reproduce the issue on Mac 10.12.6 and Win-10 using chrome stable version #62.0.3202.94 and latest canary #64.0.3268.0.
Issue is not seen in OS-Linux.
This is a non-regression issue as it is observed from M62 old builds. 
Note: From M61 and older builds, using the URL: https://jsfiddle.net/5zspem7m/1/ did not prompt for saving the password. Hence, was unable to confirm the issue on those builds.
Attaching screen cast of the issue.
Hence, marking it as untriaged to get more inputs from dev team.

Thanks...!!
783755.webm
5.0 MB View Download

Comment 3 by se...@chromium.org, Nov 14 2017

Components: UI>Browser>Passwords

Comment 4 by vabr@chromium.org, Nov 23 2017

Cc: kolos@chromium.org battre@chromium.org
Labels: -Pri-2 -Needs-Milestone -M-64 Hotlist-Polish OS-Android OS-Chrome OS-Fuchsia OS-iOS OS-Linux Pri-3
Status: Available (was: Untriaged)
Cc-ing battre@ and kolos@ to check wheter they disagree with my assessment of this bug.

The cause on Chrome side:
When the user types into the field, the site changes the field type into 'password' and Chrome registers the field for further filling. However, when the user deletes the characters, the site switches the field type back to 'text' and Chrome ignores that and offers to fill.

I am trying to figure out use-cases for sites to switch between text and password field types (other than to stop Chrome assisting with passwords). One might be to allow showing the typed password on user's explicit request (which is a better alternative to duplicating the password field for confirmation during password reset).

I think keeping the ability to switch field type is desirable to allow an easy implementation of the above use-case. Keeping Chrome assisting the user is also valuable, so as soon as Chrome has a hint that the field is used for passwords, it should offer to fill. It is actually a pity that Chrome cannot fill the field before the user starts typing. Perhaps we could teach Chrome through votes that the field is actually a password field?

To address this particular issue, I suggest that while Chrome fills, it also overrides the type of the field to be 'password'. That means, that immediately after filling, the password will be masked. If later the user or the site decide to unmask, that's fine. The user knows what they are doing, and if the site wants to behave badly, it's the site's problem.

Comment 5 by vabr@chromium.org, Nov 23 2017

Blocking: 770175 770184

Comment 6 by battre@chromium.org, Nov 24 2017

Why do we need to override the type of the field to be 'password'? Would we ever fill if it is not 'password'?
I think Chrome should give to the website the ability to turn off password autocomplete in some way. 
For example in my case above, I want to be sure the user does know the password and it's authorized to perform that action. (it can happen, for example, that people leave their PC unlocked and someone else can get access to it)
Many websites with sensitive information are now forced to use complex hacks to disable chrome autofill, where storing the password is not suitable (for example, bank accounts)

Comment 8 by vabr@chromium.org, Nov 27 2017

Ad #6 -- As long as the input field never changes its type into 'password', Chrome won't fill it. Once the field does change to 'password' once, Chrome starts to consider it fillable. We could observe the change back to 'text', but then we just enabled an utterly confusing way of saying autocomplete=off.

Ad #7 -- Chrome (security) team has a very firm stance of not letting the website override the user's choice to get assistance with passwords by Chrome [1]. If the team ever changed their mind on this, the autocomplete=off would start to work for passwords again.


[1] https://dev.chromium.org/Home/chromium-security/security-faq#TOC-Why-does-the-Password-Manager-ignore-autocomplete-off-for-password-fields-
Labels: -OS-iOS
Filling on account select of password fields is not implemented on IOS, so this bug has nothing to do with IOS.
Status: Untriaged (was: Available)
Blocking: -770184
Cc: vasi...@chromium.org
Status: Available (was: Untriaged)
I think we should address it once we see multiple real sites doing this technique.

Comment 12 Deleted

If an input of type='password' is being changed changes to text, I think it would be best if Chrome would clear the field before changing the input type to text.  It seems very wrong that something what was masked as a password would get revealed on screen.

Sign in to add a comment