New issue
Advanced search Search tips

Issue 817750 link

Starred by 1 user

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Feature

Blocking:
issue 771657



Sign in to add a comment

Collect crowdsourcing votes for password field detection

Project Member Reported by cfroussios@chromium.org, Mar 1 2018

Issue description

When a password form contains more than one password field, password manager may chose to save the password value from the wrong field. Currently, the user can correct the selected value in the Save password bubble.

We can use crowdsourcing to improve the detection of the correct password field. When a user corrects the selected password value, we can upload a vote to the autofill servers and learn what users choose as their password.
 
Blocking: 771657
Project Member

Comment 2 by bugdroid1@chromium.org, Mar 2 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/fcf7ceda9e282f2dcb296160eca72ff57c37f97b

commit fcf7ceda9e282f2dcb296160eca72ff57c37f97b
Author: Christos Froussios <cfroussios@chromium.org>
Date: Fri Mar 02 12:36:09 2018

[Password Manager] Introduce ValueElementPair in PasswordForm

For a given password form, all_possible_passwords contains every pair of
<password value, password input element>. It will be usued to improve
the accuracy of selecting the correct password element from a password
form, when the form contains multiple password fields.

The type is generalised from PossibleUsernamePair.

Bug: 817750
Change-Id: I339d7fbb204cc1278131a3e510ba28325299adf4
Reviewed-on: https://chromium-review.googlesource.com/925462
Commit-Queue: Christos Froussios <cfroussios@chromium.org>
Reviewed-by: Vasilii Sukhanov <vasilii@chromium.org>
Reviewed-by: Greg Kerr <kerrnel@chromium.org>
Reviewed-by: Maxim Kolosovskiy <kolos@chromium.org>
Reviewed-by: Vaclav Brozek <vabr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#540503}
[modify] https://crrev.com/fcf7ceda9e282f2dcb296160eca72ff57c37f97b/chrome/browser/password_manager/password_manager_browsertest.cc
[modify] https://crrev.com/fcf7ceda9e282f2dcb296160eca72ff57c37f97b/chrome/browser/ui/cocoa/passwords/base_passwords_controller_test.mm
[modify] https://crrev.com/fcf7ceda9e282f2dcb296160eca72ff57c37f97b/chrome/browser/ui/cocoa/passwords/save_pending_password_view_controller.mm
[modify] https://crrev.com/fcf7ceda9e282f2dcb296160eca72ff57c37f97b/chrome/browser/ui/views/passwords/password_pending_view.cc
[modify] https://crrev.com/fcf7ceda9e282f2dcb296160eca72ff57c37f97b/components/autofill/content/common/autofill_types.mojom
[modify] https://crrev.com/fcf7ceda9e282f2dcb296160eca72ff57c37f97b/components/autofill/content/common/autofill_types.typemap
[modify] https://crrev.com/fcf7ceda9e282f2dcb296160eca72ff57c37f97b/components/autofill/content/common/autofill_types_struct_traits.cc
[modify] https://crrev.com/fcf7ceda9e282f2dcb296160eca72ff57c37f97b/components/autofill/content/common/autofill_types_struct_traits.h
[modify] https://crrev.com/fcf7ceda9e282f2dcb296160eca72ff57c37f97b/components/autofill/content/common/autofill_types_struct_traits_unittest.cc
[modify] https://crrev.com/fcf7ceda9e282f2dcb296160eca72ff57c37f97b/components/autofill/content/renderer/password_form_conversion_utils.cc
[modify] https://crrev.com/fcf7ceda9e282f2dcb296160eca72ff57c37f97b/components/autofill/content/renderer/password_form_conversion_utils_browsertest.cc
[modify] https://crrev.com/fcf7ceda9e282f2dcb296160eca72ff57c37f97b/components/autofill/core/common/password_form.cc
[modify] https://crrev.com/fcf7ceda9e282f2dcb296160eca72ff57c37f97b/components/autofill/core/common/password_form.h
[modify] https://crrev.com/fcf7ceda9e282f2dcb296160eca72ff57c37f97b/components/password_manager/core/browser/login_database.cc
[modify] https://crrev.com/fcf7ceda9e282f2dcb296160eca72ff57c37f97b/components/password_manager/core/browser/login_database_unittest.cc
[modify] https://crrev.com/fcf7ceda9e282f2dcb296160eca72ff57c37f97b/components/password_manager/core/browser/password_form_manager.cc
[modify] https://crrev.com/fcf7ceda9e282f2dcb296160eca72ff57c37f97b/components/password_manager/core/browser/password_form_manager_unittest.cc

r550557 should have referred to this bug.
Project Member

Comment 4 by bugdroid1@chromium.org, Apr 17 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/23d0d92f6965edb1e1a1daaf0ad89c1b339ab257

commit 23d0d92f6965edb1e1a1daaf0ad89c1b339ab257
Author: Christos Froussios <cfroussios@chromium.org>
Date: Tue Apr 17 12:46:00 2018

[Password Manager] Update old key elements only when best match exists

When we update parts of the key of existing credentials, we need the
pre-update data. We take this data from the password store, as found in
|best_matches|. Sometimes, the updated credential is not in the matches.
This CL fixes a crash from
https://chromium-review.googlesource.com/c/chromium/src/+/941522 where
we presumed that the credentials are always in the matches.

Bug: 833171, 817750
Change-Id: Id2aae19b307d65c3527cdf9a6c80703dc6bfeb34
Reviewed-on: https://chromium-review.googlesource.com/1012848
Commit-Queue: Christos Froussios <cfroussios@chromium.org>
Reviewed-by: Maxim Kolosovskiy <kolos@chromium.org>
Cr-Commit-Position: refs/heads/master@{#551303}
[modify] https://crrev.com/23d0d92f6965edb1e1a1daaf0ad89c1b339ab257/components/password_manager/core/browser/password_form_manager.cc

Project Member

Comment 5 by bugdroid1@chromium.org, May 16 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/0fa3be71f5c131b986e2fb322a16244be88f98f9

commit 0fa3be71f5c131b986e2fb322a16244be88f98f9
Author: Christos Froussios <cfroussios@chromium.org>
Date: Wed May 16 09:47:01 2018

[Password Manager] Upload whether the user has seen the password

Currently, we upload a crowdsourcing vote every time the user corrects
the password manager's save prompt, because it detected that the value
from a wrong password field should be saved. However, passwords are
obscured as dots. The vote is untrustworthy, unless we also know that
the user has viewed the actual value of the password.

With this CL, we add to the vote whether the user asked to see the
actual password values.

Bug: 817750
Change-Id: I5bf02d31c3bcc0dcdb3828c0ed167c287c191085
Reviewed-on: https://chromium-review.googlesource.com/1013579
Reviewed-by: Maxim Kolosovskiy <kolos@chromium.org>
Reviewed-by: Roger McFarlane <rogerm@chromium.org>
Reviewed-by: Vasilii Sukhanov <vasilii@chromium.org>
Reviewed-by: Sebastien Seguin-Gagnon <sebsg@chromium.org>
Reviewed-by: Vadym Doroshenko <dvadym@chromium.org>
Commit-Queue: Christos Froussios <cfroussios@chromium.org>
Cr-Commit-Position: refs/heads/master@{#559024}
[modify] https://crrev.com/0fa3be71f5c131b986e2fb322a16244be88f98f9/chrome/browser/autofill/autofill_server_browsertest.cc
[modify] https://crrev.com/0fa3be71f5c131b986e2fb322a16244be88f98f9/chrome/browser/ui/passwords/manage_passwords_bubble_model.cc
[modify] https://crrev.com/0fa3be71f5c131b986e2fb322a16244be88f98f9/chrome/browser/ui/passwords/manage_passwords_bubble_model_unittest.cc
[modify] https://crrev.com/0fa3be71f5c131b986e2fb322a16244be88f98f9/chrome/browser/ui/passwords/manage_passwords_ui_controller.cc
[modify] https://crrev.com/0fa3be71f5c131b986e2fb322a16244be88f98f9/chrome/browser/ui/passwords/manage_passwords_ui_controller.h
[modify] https://crrev.com/0fa3be71f5c131b986e2fb322a16244be88f98f9/chrome/browser/ui/passwords/passwords_model_delegate.h
[modify] https://crrev.com/0fa3be71f5c131b986e2fb322a16244be88f98f9/chrome/browser/ui/passwords/passwords_model_delegate_mock.h
[modify] https://crrev.com/0fa3be71f5c131b986e2fb322a16244be88f98f9/components/autofill/core/browser/form_structure.cc
[modify] https://crrev.com/0fa3be71f5c131b986e2fb322a16244be88f98f9/components/autofill/core/browser/form_structure.h
[modify] https://crrev.com/0fa3be71f5c131b986e2fb322a16244be88f98f9/components/autofill/core/browser/form_structure_unittest.cc
[modify] https://crrev.com/0fa3be71f5c131b986e2fb322a16244be88f98f9/components/autofill/core/browser/proto/server.proto
[modify] https://crrev.com/0fa3be71f5c131b986e2fb322a16244be88f98f9/components/password_manager/core/browser/password_form_manager.cc
[modify] https://crrev.com/0fa3be71f5c131b986e2fb322a16244be88f98f9/components/password_manager/core/browser/password_form_manager.h
[modify] https://crrev.com/0fa3be71f5c131b986e2fb322a16244be88f98f9/components/password_manager/core/browser/password_form_manager_unittest.cc

Sign in to add a comment