An Analysis of Modern Password Manager Security and Usage on Desktop and Mobile Devices
Total Page:16
File Type:pdf, Size:1020Kb
University of Tennessee, Knoxville TRACE: Tennessee Research and Creative Exchange Doctoral Dissertations Graduate School 5-2021 An Analysis of Modern Password Manager Security and Usage on Desktop and Mobile Devices Timothy Oesch [email protected] Follow this and additional works at: https://trace.tennessee.edu/utk_graddiss Part of the Information Security Commons, Other Computer Engineering Commons, and the Other Computer Sciences Commons Recommended Citation Oesch, Timothy, "An Analysis of Modern Password Manager Security and Usage on Desktop and Mobile Devices. " PhD diss., University of Tennessee, 2021. https://trace.tennessee.edu/utk_graddiss/6670 This Dissertation is brought to you for free and open access by the Graduate School at TRACE: Tennessee Research and Creative Exchange. It has been accepted for inclusion in Doctoral Dissertations by an authorized administrator of TRACE: Tennessee Research and Creative Exchange. For more information, please contact [email protected]. To the Graduate Council: I am submitting herewith a dissertation written by Timothy Oesch entitled "An Analysis of Modern Password Manager Security and Usage on Desktop and Mobile Devices." I have examined the final electronic copy of this dissertation for form and content and recommend that it be accepted in partial fulfillment of the equirr ements for the degree of Doctor of Philosophy, with a major in Computer Engineering. Scott I. Ruoti, Major Professor We have read this dissertation and recommend its acceptance: Kent Seamons, Jinyuan Sun, Doowon Kim, Scott I. Ruoti Accepted for the Council: Dixie L. Thompson Vice Provost and Dean of the Graduate School (Original signatures are on file with official studentecor r ds.) An Analysis of Password Manager Security and Usage on Desktop and Mobile Devices A Dissertation Presented for the Doctor of Philosophy Degree The University of Tennessee, Knoxville Timothy Sean Oesch May 2021 © by Timothy Sean Oesch, 2021 All Rights Reserved. ii I would like to dedicate this work to my family, whose unwavering love and support have been a constant source of encouragement throughout the PhD process, and to all those committed to defending the world against the dark arts. iii Acknowledgments I would like to thank my advisor, Dr. Scott Ruoti, without whom this work would not have been possible, and my dissertation committee (Dr. Kent Seamons, Dr. Jinyuan Sun, and Dr. Doowon Kim) who provided timely feedback and direction. I would also like to thank my fellow students James Simmons and Bhaskar Gaur for their feedback and support, and especially Anuj Gautam, who provided invaluable support on two of my papers. I would also like to thank my coworkers who participated in pilot studies and encouraged me throughout the process of completing my studies. And last but certainly not least, I extend a heartfelt thanks to my family, who endured the long hours of studying and were always there to encourage me during this journey. iv Abstract Security experts recommend password managers to help users generate, store, and enter strong, unique passwords. Prior research confirms that managers do help users move towards these objectives, but it also identified usability and security issues that had the potential to leak user data or prevent users from making full use of their manager. In this dissertation, I set out to measure to what extent modern managers have addressed these security issues on both desktop and mobile environments. Additionally, I have interviewed individuals to understand their password management behavior. I begin my analysis by conducting the first security evaluation of the full password manager lifecycle (generation, storage, and autofill) on desktop devices, including the creation and analysis of a corpus of 147 million generated passwords. My results show that a small percentage of generated passwords are weak against both online and offline attacks, and that attacks against autofill mechanisms are still possible in modern managers. Next, I present a comparative analysis of autofill frameworks on iOS and Android. I find that these frameworks fail to properly verify webpage security and identify a new class of phishing attacks enabled by incorrect handling of autofill within WebView controls hosted in apps. Finally, I interview users of third-party password managers to understand both how and why they use their managers as they do. I find evidence that many users leverage multiple password managers to address issues with existing managers, as well as provide explanations for why password reuse continues even in the presence of a password manager. Based on these results, I conclude with recommendations addressing the attacks and usability issues identified in this work. v Table of Contents 1 Introduction1 2 Background5 2.1 Password Managers................................5 2.2 Related Work...................................6 2.2.1 Desktop Managers............................7 2.2.2 Mobile Autofill..............................8 2.2.3 Usability and User Studies........................ 10 2.2.4 Relation to This Work.......................... 12 3 Browser-Based Password Managers on the Desktop 14 3.1 Analyzed Password Managers.......................... 16 3.1.1 App.................................... 16 3.1.2 Extension................................. 18 3.1.3 Browser.................................. 19 3.1.4 Updates for Password Managers..................... 20 3.2 Password Generation............................... 20 3.2.1 Settings and Features........................... 20 3.2.2 Password Collection and Analysis.................... 22 3.2.3 Results................................... 26 3.3 Password Storage................................. 34 3.3.1 Password Vault Encryption....................... 34 3.3.2 Metadata Privacy............................. 36 vi 3.4 Password Autofill................................. 37 3.4.1 User Interaction Requirements...................... 37 3.4.2 Autofill for iframes............................ 40 3.4.3 Fill Form Differing from Saved Form.................. 41 3.4.4 Non-Standard Login Fields........................ 42 3.4.5 Potential Mitigation........................... 42 3.4.6 Web Vault Security & Bookmarklets.................. 43 3.5 Discussion..................................... 44 3.5.1 Filter weak passwords........................... 46 3.5.2 Better master password policies...................... 46 3.5.3 Safer autofill................................ 46 4 A Security Analysis of Autofill Frameworks on iOS and Android 48 4.1 Background.................................... 50 4.1.1 Password Managers............................ 50 4.1.2 Secure Autofill.............................. 51 4.1.3 WebView................................. 52 4.2 Evaluation Methodology............................. 53 4.2.1 Mobile Autofill Frameworks....................... 54 4.2.2 Testing Approach............................. 56 4.3 Browser Autofill.................................. 58 4.3.1 P1|User Interaction........................... 60 4.3.2 P2|Credential-to-Domain Mapping.................. 62 4.3.3 P3|Protecting Filled Credentials.................... 62 4.4 App Autofill.................................... 64 4.4.1 P1|User Interaction........................... 64 4.4.2 P2|Credential-to-App Mapping.................... 67 4.4.3 P3|Protecting Filled Credentials.................... 69 4.5 WebView Autofill................................. 70 4.5.1 P1|User Interaction........................... 73 vii 4.5.2 P2|Credential-to-Domain Mapping.................. 73 4.5.3 P3|Protecting Filled Credentials.................... 75 4.6 Password Generation............................... 76 4.6.1 Comparison to Desktop Managers.................... 79 4.7 Password Storage................................. 79 4.7.1 Password Encryption........................... 82 4.7.2 Metadata Privacy............................. 83 4.7.3 Comparison to Desktop Managers.................... 83 4.8 Discussion..................................... 83 4.8.1 Addressing WebView Phishing Attacks................. 86 4.8.2 Recommendations for Secure Autofill Frameworks........... 87 4.8.3 Autofill Framework Smells........................ 89 4.8.4 Future Research.............................. 89 5 "It basically started using me" - An Observational Study of Password Manager Usage 92 5.1 Methodology................................... 95 5.1.1 Recruitment................................ 95 5.1.2 Interview Design............................. 96 5.1.3 Addressing Potential Risks........................ 99 5.1.4 Analysis.................................. 99 5.1.5 Participant Demographics........................ 100 5.1.6 Limitations................................ 101 5.2 Core Theories................................... 101 5.2.1 Adoption of multiple managers..................... 101 5.2.2 Cross-device entry and reuse....................... 104 5.2.3 Limited usage on mobile......................... 109 5.2.4 Breach notifications desired, but health check overwhelming..... 111 5.2.5 Adoption and promotion......................... 115 5.3 Additional Topics................................. 116 viii 5.3.1 Password sharing via manager difficult and rarely used........ 116 5.3.2 Mental models of password reuse.................... 119 5.3.3 Inconsistencies in autofill and autosave................. 120 5.3.4 Desire for single sign-on......................... 122 5.3.5 Ubiquitous usage of default settings................... 122 5.3.6 Attitudes towards autolock.......................