Security Vulnerabilities in Commercial Password Managers
Security Vulnerabilities in Commercial Password Managers
2
Dept. of Computer Science, University of York, YO10 5GH, UK
[email protected]
1 Introduction
Passwords remain the dominant authentication mechanism in the digital realm
despite their shortcomings. Furthermore, they are expected to persist as a pri-
mary authentication mechanism for the some time [6]. Among the tools that
can greatly reduce the cognitive burden of remembering multiple passwords for
multiple services are password managers. Hence, their use is strongly advocated
by security experts, including the UK’s National Cyber Security Centre [13].
A password manager is an encrypted vault that stores any number of creden-
tials for the user and is accessed by a single master password. In this context,
a credential is a username-password pair that authenticates the user to a web-
based service. Over and above individual use, a commercial password manager
usually provides extra features, e.g. credential sharing and admin interfaces, and
?
This is an accepted manuscript to appear in the proceedings of the 35th Int’l Conf.
on ICT Systems Security & Privacy Protection (IFIP SEC 2020), Maribor, Slovenia.
2 Michael Carr and Siamak F. Shahandashti
2 Related Work
In recent years password managers have been analysed a multitude of times, both
within and outside academia. Here we review the major reported vulnerabilities.
An area that has been of substantial interest to researchers is the autofill feature
that password managers implement to increase their usability. A number of works
have exploited poor implementation of autofill to extract user’s credentials, in
some cases automatically [1, 5, 11]. In [11], a minimal survey implemented as an
HTML form was sent to users of multiple webmail services. The form contained
a visible question along with invisible email and password input boxes. The idea
was that the password managers would see the email as a login form with the
webmail domain as origin and autofill the credentials for the webmail service.
With auto-login enabled, merely opening the email would automatically fill in
the credentials and submit the form in some webmail services, and in others
the user was warned that a form is about to be submitted but would still be
vulnerable if they clicked through the warning.
Dashlane was the subject of a security analysis in 2016 [4]. When attempting
to log on, if an invalid username is entered, a message stating ‘Incorrect login’ is
shown, whereas if an incorrect password is entered, a message stating ‘Incorrect
password’ is shown. This indicates that a username is registered with Dashlane
and would aid an attacker when attempting a brute force attack on usernames
and passwords. Although an attacker would need access to the victim’s devices
as Dashlane uses two-factor authentication (2FA) for any new devices, a device
authentication vulnerability meant that 2FA could be bypassed. This allows an
unauthorised device to access passwords.
3 Method
We specify the methods we used in each step of this work in the following.
took into account the number of users documented by the password manager
vendors, install counts in application stores and recommendations by reputable
websites such as PCMag.com. Further, less publicised products were identified
by inputting terms such as ‘password manager’ into web search engines.
Once the search reached saturation, identified by a lack of new products ap-
pearing, each of the password managers listed was investigated and their features
compared. To make our final selection, we considered two characteristics: popu-
larity of the tool as an indicator of the number of users affected by a potential
vulnerability, and richness of features, as an indicator of both desirability for
companies as customers and at the same time diversity of attack vectors.
After selecting the products for testing, a two-week enterprise trial was started
with each of the products consecutively. To begin, the systems were tested under
normal operation to identify any abnormalities. This involved completing a large
number of tasks using features that are available (to users as well as admins) in
the enterprise editions of the software. A comprehensive list of all the operations
that were performed is not presented here, but included the following:
Following the initial testing of standard features, all of the password managers
were tested against the identified previously disclosed vulnerabilities. Through
checking previously disclosed vulnerabilities across all of the password managers
6 Michael Carr and Siamak F. Shahandashti
4 Results
In this section we first give the detailed specifications of our test settings and then
provide our results on testing the selected password managers against previously
disclosed vulnerabilities and our discovery of new vulnerabilities.
Our search for password managers identified 19 applications supporting most
of the features that can be considered basic features for password managers,
e.g. password capture and encrypted storage, password generation, mobile app,
and autofill. Overall, we identified 27 features, including a number of desirable
additional security features, e.g. two-factor and biometric authentication, and
some that are especially desirable in a professional environment, e.g. password
sharing, security breach alerts, admin console, and API provision. The full list
of password managers and features we considered can be found in Appendix A.
From the 19 password managers identified, those with the greatest popularity
and richness of features were selected for testing. These password managers are
LastPass, Dashlane, Keeper, 1Password, and RoboForm.
The desktop components of the password managers were tested using a
laptop running Windows 10 Enterprise version 10.0.14393 build 14393 and
Chrome version 59.0.3071.115 where extensions were used. Any mobile com-
ponents were tested using an Android 7.0 phone. Note that Windows, Android,
and Chrome are respectively the current most widely-used OS, mobile OS, and
browser worldwide. Tested password manager versions are shown in Table 1.
Password Manager
Component
Dashlane LastPass Keeper 1Password RoboForm
Chrome Extension 4.8.2 4.1.60 10.8.1 6.6.439 8.3.7.7
Android App 4.17.0.1995 4.2.762 10.7.0 6.5.3 8.0.9
Li et al. [8] appear to have been patched in all password managers we considered.
Hence, we do not list those vulnerabilities here in the interest of conciseness.
URL Mismatch Vulnerability: Log in fields being filled with a username and
password, despite the source and destination URLs not matching [1].
Summary: Table 2 shows the results of testing the five password managers
against the vulnerabilities listed above. These vulnerabilities were tested using
the same processes and resources for all the password managers. As can be seen
from the table, at least one of the password managers is vulnerable to every
single issue apart from 2FA Seed vulnerability. The tested password managers
are most vulnerable to URL Mismatch, HTTP(S) Autofill, and Ignoring Subdo-
mains vulnerabilities, with all but one of the managers being susceptible to URL
Mismatch and all to HTTP(S) Autofill and Ignoring Subdomains vulnerabilities.
All of these vulnerabilities concern the web interfaces, and more specifically the
autofill feature, which has been an area of focus for previous works. Hence, it
was hoped that vendors had responded by making their software resilient to such
attacks. However, this appears not to be always the case.
8 Michael Carr and Siamak F. Shahandashti
Password Manager
Vulnerability
Dashlane LastPass Keeper 1Password RoboForm
2FA Seed # # # # #
Element Inspection # #
Registration Discovery # # # #
URL Mismatch #
HTTP(S) Autofill
Ignoring Subdomains
Our feature testing flagged issues for further investigation. Here we present a
developed proof-of-concept attack and three other vulnerabilities of the tested
password managers. Unlike previous vulnerabilities, the ones we discuss here do
not only concern web interfaces and some are related to mobile apps.
Phishing Attack: Both the 1Password and LastPass Android applications were
found vulnerable to a phishing attack. The issue discovered was that both ap-
plications use weak matching criteria for identifying which stored credentials to
suggest for autofill. This allowed for a rogue application to impersonate a le-
gitimate one simply by crafting the package name to be identical. A developed
proof-of-concept attack is described in detail below for LastPass but essentially
the same attack applies to 1Password.
To identify the process used when matching an application and credentials,
a blank login screen was created. After selecting the Add Login option in the
LastPass pop-up, the URL shown in the LastPass application is the package
name of the application developed. This indicated that the matching criteria
employed by LastPass is based on the package name of the application only.
After discovering how LastPass matches applications and credentials, a ma-
licious app was developed with the package name of com.google. This app had
a login screen, shown in Figure 1, that was designed to mimic that of the official
Google login screen and thereby be hard to distinguish. The weak matching em-
ployed by LastPass means that when the malicious app is launched, LastPass will
offer to autofill the login page with Google credentials stored in a user’s vault.
This can be seen in Figure 2. In our proof-of-concept attack, after a victim se-
lects their credentials from the LastPass pop-up and taps the Next button, the
credentials are sent across to a server and stored. Hence, as long as the victim is
tricked into installing and launching a malicious application, their credential can
be stolen easily leveraging the weak matching used by 1Password and LastPass.
The attack developed here succeeds if the following conditions are met.
Firstly, the malicious app needs to be installed on the victim’s device. Attackers
might achieve this by either getting around app store security mechanisms (see
e.g. [10] in the case of Google Play Store) or otherwise fooling the victim into
sideloading the app onto their device. This could be done in combination with
Revisiting Security Vulnerabilities in Commercial Password Managers 9
another phishing attack, for example, sending an email stating the targeted ser-
vice’s application requires an upgrade. Secondly, the victim needs to be a user of
the vulnerable password managers and using the LastPass or 1Password autofill
prompt, although other users may be fooled and enter their password manually.
Finally, the user needs to have credentials for the target application, in this
case, Google, in their vault. Having said these, if an organisation is identified as
a commercial user of a vulnerable password manager along with other services
(e.g. Google email service), the latter two conditions are met and a large-scale
phishing campaign may be launched against the organisation employees which
one expects to have some degree of success in stealing employee credentials and
thereby potentially compromising organisation security. The suggested mitiga-
tion for this vulnerability is for password managers to apply more strict matching
criteria that is not merely based on an app’s purported package name.
Clipboard Vulnerability: A crucial usability feature of password managers
is the ability to autofill credentials on a website. While autofill performs as
expected on an overwhelming majority of websites across all the password man-
agers tested, occasionally it would not. When the autofill feature does not work,
password managers often provide the option to copy credentials to the clipboard.
It was discovered during the initial testing phase that the tested password
managers do not provide enough protection surrounding copying sensitive items
to the clipboard, except 1Password. Standard computer security advice recom-
mends that a user locks their machine as soon as they leave it unattended and
if a user was to follow this advice, the risk associated with leaving passwords in
the clipboard should be reduced in theory. However, Windows 10 allows access
to the clipboard of a locked machine [9]. This allows pasting in the value of the
clipboard in cleartext by an adversary that may be a person with physical access
10 Michael Carr and Siamak F. Shahandashti
Table 3. New vulnerabilities discovered and their contexts: mobile app (app) or
browser extension (ext). A indicates no countermeasures observed (hence application
is or could be vulnerable), a G
# indicates only partial countermeasures observed, a #
indicates sufficient countermeasures observed (hence application is not vulnerable).
Password Manager
Dashlane LastPass Keeper 1Password RoboForm
Attack:
Phishing (app) # # #
Vulnerabilities:
Clipboard (ext) #
PIN Brute Force (app) # # #
Potential vulnerability:
Pwd Brute Force (ext) G
# #
G
the clipboard. The impact is loss of the credential, hence affecting confidentiality,
integrity, and availability for the compromised account.
The PIN brute force vulnerability may also enable an opportunistic attack.
It requires physical access to the victim’s device. Although it does not require
any further privilege of user interaction. The impact of the attack is much more
severe than the previous two attacks since a successful attacker gets access to the
entire password manager vault and any services whose passwords are managed by
the password manager. This means that a successful attacker may freely access
and modify the contents and credentials of all the managed accounts and hence
it amounts to severe possible loss of confidentiality, integrity, and availability.
Finally, the possible brute force via extension vulnerability would only re-
quire network access to the victim’s device and no specific privilege or user
interaction. However, since a password is being brute forced, the probability of
success is typically less than the case where a PIN is targeted. Nevertheless,
the low complexity and remote executability of this attack make it a highly
feasible attack which if not mitigated can be exploited rather comfortably. The
attack also has the potential of a severe impact in the form of loss of the master
password that enables the attacker to access all the accounts managed by the
password manager. Hence, confidentiality, integrity, and availability may be all
severely impacted. Perhaps the only limitation of this attack is that it can be, at
least in theory, easily identified through detecting higher than usual frequency
of attempts to gain access to the targeted password manager account(s).
5 Responsible Disclosure
6 Conclusions
References
1. Blanchou, M., Youn, P.: Password managers: Exposing passwords everywhere.
White paper, iSEC Partners (2013)
2. Bonneau, J., Preibusch, S., Anderson, R.: A birthday present every eleven wallets?
the security of customer-chosen banking PINs. In: FC. pp. 25–40. Springer (2012)
3. Gasti, P., Rasmussen, K.B.: On the security of password manager database formats.
In: ESORICS. pp. 770–787. Springer (2012)
4. Gentili, P., Shader, S., Yip, R., Zeng, B.: Security analysis of Dashlane (2016),
https://courses.csail.mit.edu/6.857/2016/files/25.pdf
5. Gonzalez, R., Chen, E.Y., Jackson, C.: Automated Password Extraction Attack on
Modern Password Managers. ArXiv e-print arXiv:1309.1416 (2013)
6. Herley, C., Van Oorschot, P.: A research agenda acknowledging the persistence of
passwords. IEEE Security & Privacy 10(1), 28–36 (2011)
7. Karlsson, M.: How I made LastPass give me all your passwords (July 2016), https:
//labs.detectify.com/2016/07/27
8. Li, Z., He, W., Akhawe, D., Song, D.: The emperor’s new password manager: Se-
curity analysis of web-based password managers. In: 23rd USENIX Security Sym-
posium. pp. 465–479. San Diego, CA (2014)
9. Moe, O.: Accessing clipboard from the lock screen in Windows 10 (Jan 2017),
https://msitpros.com/?p=3746
10. Oberheide, J., Miller, C.: Dissecting the Android Bouncer. SummerCon2012, New
York 95, 110 (2012)
11. Silver, D., Jana, S., Boneh, D., Chen, E.Y., Jackson, C.: Password managers: At-
tacks and defenses. In: Usenix Security. pp. 449–464 (2014)
12. Vigo, M.: Design flaws in Lastpass 2FA implementation (2017), www.martinvigo.
com/design-flaws-lastpass-2fa-implementation
13. W. Emma: What does the NCSC think of password managers? (2017), www.ncsc.
gov.uk/blog-post/what-does-ncsc-think-password-managers
14. Zhao, R., Yue, C., Sun, K.: A security analysis of two commercial browser and
cloud based password managers. In: SocialCom 2013. pp. 448–453 (2013)
Group Password Sharing, Manage User Account and Roles (for organisation
admins), Custom Password Policies, and API Provision.