Open Bug 1548771 Opened 6 years ago Updated 5 months ago

Password Manager detects and saves the password with a blank username for alipay.com

Categories

(Toolkit :: Password Manager: Site Compatibility, defect, P2)

defect

Tracking

()

Tracking Status
firefox66 --- affected
firefox67 --- affected
firefox68 --- affected
firefox69 --- affected
firefox70 --- affected
firefox71 --- affected
firefox72 --- affected
firefox73 --- affected
firefox74 --- affected

People

(Reporter: aflorinescu, Assigned: serg)

References

(Depends on 1 open bug, Blocks 1 open bug, )

Details

Attachments

(1 file, 1 obsolete file)

[Affected versions]

 Nightly 68.0a1 / 20190502220333
 Beta 67.0b15 2019-04-29
 Release 66.0.3 2019-04-09

[Affected platforms]

 Windows 10
 Mac OS 10.13.6
 Ubuntu 16.04

[Steps to reproduce]

  1. Open Firefox with a new profile.
  2. Reach: https://authet15.alipay.com/login/index.htm
  3. Switch from scan code to account login.
  4. Input any strings inside the input boxes (username, password).
  5. Click the "Sign In" button.
  6. A pop-up asking the user to save credentials is displayed.

[Expected result]

Both the username and password are being saved by the Password manager.

[Actual result]

Only the password is saved, no username is saved along with the password.

[Regression Range:]

This issues doesn't appear to be a recent regression.

[Note:]

See debug log @ https://bug1540154.bmoattachments.org/attachment.cgi?id=9062154

Summary: Password Manager detects and saves blank username and password from alipay.com → Password Manager detects and saves the password with a blank username for alipay.com
Priority: -- → P3

Reproduced on latest Beta 70.0b7 and Nightly 71 on Windows 10 x64. Updating flags

See Also: → 1584944
See Also: → 1630553

The problem also affects the dismissed by default doorhanger so ensure that gets fixed at the same time (bug 1630553).

Alipay's web page has invisible <input type=text> between username and password inputs.
We should ignore invisible inputs when capturing because user couldn't enter data there.

Assignee: nobody → sgalich
Depends on: 1771806
Attachment #9278666 - Attachment description: WIP: Bug 1548771 - Password Manager detects and saves the password with a blank username for alipay.com. → Bug 1548771 - Password Manager detects and saves the password with a blank username for alipay.com. r=dimi!
Severity: normal → S3
Priority: P3 → P2

For the information, we now have checkVisibility API (implemented in Bug 1777293).

My findings so far on using checkVisibility from CSSOM API:

The ccsom docs describe the following steps:

The checkVisibility(options) method must run these steps, when called on an element this:

  1. If this does not have an associated box, return false.

  2. If a shadow-including ancestor of this has content-visibility: hidden, return false.

  3. If the checkOpacity dictionary member of options is true, and this, or a shadow-including ancestor of this, has a computed opacity value of 0, return false.

  4. If the checkVisibilityCSS dictionary member of options is true, and this is invisible, return false.

  5. Return true.

On first DOMContentLoaded calling checkVisibility without adding optional checkVisibilityOptions parameters returns false for both elements (usernameField and passwordField) and therefore prevents autofilling (step 3 and 4 not relevant at this point). When we switch from show_qr tab to show_login tab on authet15.alipay.com checkVisibility returns true for both elements. But focusing on the passwordField shows the AutocompletePopup but only fills in password. Not sure why, because logs say that the correct usernameField is detected as well.

Depends on: 1790970
See Also: → 1789151
See Also: → 1790438
Depends on: 1247245
Attachment #9293361 - Attachment is obsolete: true
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: