Usable Security: Design Principles for Creating Systems That Are Simultaneously Usable and Secure
Total Page:16
File Type:pdf, Size:1020Kb
Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science Proposal for Thesis Research in Partial Fulfillment Of the Requirements for the Degree of Doctor of Philosophy Title: Usable Security: Design Principles for Creating Systems that are Simultaneously Usable and Secure Submitted by: Simson L. Garfinkel 634 Pleasant Street (Signature of Author) Belmont, MA 02478 Date of Submission October 15, 2003 Expected Date of Completion: September 1, 2004 Laboratory where thesis will be done CSAIL Brief Statement of the Problem: Usability and security are widely seen as two antagonistic design goals for complex computer systems. This thesis argues that conventional wisdom is wrong: for the majority of users and applications, increased security cannot be achieved with technology that decreases usability. This thesis aims to develop a set of design principles for creating and evaluating security systems — principles that, when followed, simultaneously provide for increased security and increased usability. These principles will be used to analyize a significant number of security-related applications that have been deployed in recent years, and will be applied to several areas of active concern in the computer security community, including the leakage of confidential information on repurposed digital storage media, secure messaging, and firewall configuration. 2 Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science Cambridge, Massachusetts 02139 Doctoral Thesis Supervision Agreement To: Department Graduate Committee From: David D. Clark, Thesis Supervisor The program outlined in the proposal: Title: Usable Security: Design Principles for Creating Systems that are Simultaneously Usable and Secure Author: Simson L. Garfinkel Date: October 15, 2003 is adequate for a Doctoral thesis. I believe that appropriate readers for this thesis would be: Reader 1: Ronald Rivest Reader 2: Daniel J. Weitzner Facilities and Support for the research outlined in the proposal are available. I am willing to supervise the research and evaluate the thesis report. Signed: David D. Clark Title: Senior Research Scientist, MIT CSAIL Date: Comments: 3 Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science Cambridge, Massachusetts 02139 Doctoral Thesis Supervision Agreement To: Department Graduate Committee From: Robert C. Miller, Thesis Supervisor The program outlined in the proposal: Title: Usable Security: Design Principles for Creating Systems that are Simultaneously Usable and Secure Author: Simson L. Garfinkel Date: October 15, 2003 is adequate for a Doctoral thesis. I believe that appropriate readers for this thesis would be: Reader 1: Ronald Rivest Reader 2: Daniel J. Weitzner Facilities and Support for the research outlined in the proposal are available. I am willing to supervise the research and evaluate the thesis report. Signed: Robert C. Miller Title: Assistant Professor, MIT Department of Electrical Engineering and Computer Science Date: Comments: 4 Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science Cambridge, Massachusetts 02139 Doctoral Thesis Reader Agreement To: Department Graduate Committee From: Ronald Rivest, Thesis Reader The program outlined in the proposal: Title: Usable Security: Design Principles for Creating Systems that are Simultaneously Usable and Secure Author: Simson L. Garfinkel Date: October 15, 2003 Supervisors: David D. Clarkand Robert C. Miller Other Reader: Daniel J. Weitzner is adequate for a Doctoral thesis. I am willing to aid in guiding the research and in evaluating the thesis report as a reader. Signed: Ronald Rivest Title: Andrew & Erna Viterbi Professor Of Computer Science and Engineering Date: Comments: 5 Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science Cambridge, Massachusetts 02139 Doctoral Thesis Reader Agreement To: Department Graduate Committee From: Daniel J. Weitzner, Thesis Reader The program outlined in the proposal: Title: Usable Security: Design Principles for Creating Systems that are Simultaneously Usable and Secure Author: Simson L. Garfinkel Date: October 15, 2003 Supervisors: David D. Clarkand Robert C. Miller Other Reader: Ronald Rivest is adequate for a Doctoral thesis. I am willing to aid in guiding the research and in evaluating the thesis report as a reader. Signed: Daniel J. Weitzner Title: Principal Research Scientist Date: Comments: CONTENTS 6 Contents 1 Introduction 8 1.1 Work in Security Requires Realistic Threat Models . 9 1.2 A Workable Threat Model for Today’s Desktop Computing Environment . 12 1.3 Previous Attempts at Assuring Desktop Security: Mandatory Access Controls and User Education . 14 1.4 The “Usable Security” Thesis . 17 2 Related Work 18 3 Related Work on HCI and Computer Security 18 3.1 Norman’s Design Rules and Error Analysis . 18 3.2 Johnson’s Usability Barriers in GUIs . 19 3.3 HCI-SEC Bloopers, Definitions and Principles . 20 3.4 Other HCI-SEC Work . 24 3.5 Other Factors That Can Affect Software: Economics and Regulation . 25 4 Designing for Usable Security 27 4.1 Case Study #1: The Success of SSH and SSL . 28 4.2 Case Study #2: Browser History in Microsoft Internet Explorer, Apple Safari, and Mozilla 1.4 . 30 4.3 Case Study #3: Confidential Information on Discarded Media . 42 4.3.1 The Remembrance of Data Passed Study . 44 4.4 Case Study #4: How the PGP and S/MIME Encryption Standards have Pro- duced Usability Problems that Blocked Their Own Adoption . 46 4.5 Case Study #5: Why “Decrypt for Display” Has Caused Barriers To Adoption . 51 4.6 Case Study #6: How The Distribution of Public Keys Causes Usability Prob- lems, and Approaches For Resolving The Problem . 52 4.7 Case Study #7: PC Firewall Configuration . 56 5 Research Basis for this Thesis 59 5.1 The Remembrance of Data Passed Traceback Study . 59 5.1.1 Research Justification for the Traceback Study . 61 5.1.2 Related Work on Disk Sanitization . 61 5.2 Stream: A System for Providing Usable Encrypted Electronic Mail . 62 5.2.1 The Need for Usable Email Encryption . 62 5.2.2 Research Justification For Developing Stream . 63 5.2.3 Related Work on Opportunistic Encryption . 64 5.3 Literature and Product Review . 64 6 Work To Be Done 65 6.1 Status of the Traceback Study . 66 6.2 Status of Stream . 66 7 Committee and Timetable 67 1 Introduction It is widely believed that security and usability are two antagonistic goals in system design. A classic example of this argument is passwords: systems without passwords are thought to be usable, but not very secure, while systems with long passwords that must be frequently changed are thought to be secure, but not very usable. I believe that this reasoning is flawed. Systems that sacrifice security for usability may work fine in the laboratory, but they fail when exposed to the hostile environment of the outwide world. Alternatively, systems that sacrifice usability in favor of security fail because the secu- rity features are disabled by users, or because the systems are used far less than they would be otherwise. This is not a novel argument. In 1975, Saltzer and Schroeder[SS75] identified eight design principles for building secure computer systems. These eight principles have become stan- dards of the computer security lexicon: economy of mechanism; fail-safe defaults; complete mediation; open design; separation of privilege; least privilege; least common mechanism; and psychological acceptability. On the subject of psychological acceptability, Saltzer and Schroeder wrote: “It is essential that the human interface be designed for ease of use, so that users routinely and automatically apply the protection mechanisms correctly. Also, to the extent that the user’s mental image of his protection goals matches the mecha- nisms he must use, mistakes will be minimized. If he must translate his image of his protection needs into a radically different specification language, he will make errors.”[SS75] In other words, it must to be easier to use security mechanisms than to bypass them. For the two decades following the publication of Saltzer and Schroeder’s article, the need for deploying security systems that provide for “psychological acceptability” was frequently repeated but rarely expounded upon. Indeed, it is only recently that computer security researchers have turned their attention to the issue of Human Computer Interface (HCI) design — or that the HCI community has turned its attention to the topic of computer security. For example, in 1999 Adams and Saase noted “it seems that currently, hackers pay more attention to the human link in the security chain than security designers do.”[AS99]. Similar sentiments were expressed by Whitten and Tygar, who wrote: “We have found very little published research to date on the problem of usability for security.”[WT99] 1 INTRODUCTION 9 At the same time, there is growing recognition that many security breaches are not the result of technical failures, but instead are the result of the failure of humans to use computer systems in a secure manner. [Sch02, MS02] Some researchers go further. Carl Ellison and others have argued that the problem facing security software is not poor interfaces, but the fact that they have user interfaces at all. At the February 2000 meeting of the American Association for the Advancement of Science, Ellison went further and proposed1 this somewhat charming rule-of-thumb: “The user base for strong cryptography declines by