A case study in UI design and evaluation for computer security Rob Reeder Dependable Systems Lab Carnegie Mellon University February 16, 2006 Memogate: A user interface scandal !! 2 Overview Task domain: Windows XP file permissions Design of two user interfaces: native XP interface, Salmon Evaluation: Which interface was better? Analysis: Why was one better? 3 Part 1: File permissions in Windows XP File permissions task: Allow authorized users access to objects, deny unauthorized users access to objects Objects: Files and folders Users: People with accounts on the system Access: 13 types, such as Read Data, Write Data, Execute, Delete 4 Challenges for file permissions UI design Maybe thousands of users – impossible to set permissions individually for each Thirteen access types – hard for a person to remember them all 5 Grouping to handle users Administrators Power Users Everyone Admin-defined 6 A problematic user grouping Xu Ari Bill Cindy Group A Miguel Yasir Zack Group B 7 Precedence rules No setting = Deny by default Allow > No setting Deny > Allow (> means “takes precedence over”) 8 Grouping to handle access types Moral Setting file permissions is quite complicated But a good interface design can help! 10 The XP file permissions interface 11 The Salmon interface ProjectF Example task: Wesley Initial state Final state Wesley allowed READ & WRITE from a group Wesley allowed READ , denied WRITE What needs to be done Deny Wesley WRITE 13 What’s so hard? Conceptually: Nothing! Pragmatically: User doesn’t know initial group membership Not clear what changes need to be made Checking work is hard 14 Learning Wesley’s initial permissions 1 2 Click “Effective Permissions” Click “Advanced” 3 4 View Wesley’s Effective Permissions Select Wesley 15 Learning Wesley’s group membership Bring up Computer 5 Management interface 6 Click on “Users” Read Wesley’s group membership 9 7 Doubleclick Wesley Click “Member Of” 8 Changing Wesley’s permissions 10 11 Deny Write Click “Add…” Click “Apply” 12 17 Checking work 13 14 Click “Effective Permissions” Click “Advanced” 15 16 View Wesley’s Effective Permissions Select Wesley 18 XP file permissions interface: Poor 19 Part 2: Common security UI design problems Poor feedback Ambiguous labels Violation of conventions Hidden options Omission errors 20 Problem #1: Poor feedback 1 2 Click “Effective Permissions” Click “Advanced” 3 4 View Wesley’s Effective Permissions Select Wesley 21 Salmon: immediate feedback ProjectF Problem #2: Labels (1/3) Full control Modify Read & Execute Read Write Special Permissions Problem #2: Labels (2/3) Full control Traverse Folder/Execute File List Folder/Read Data Read Attributes Read Extended Attributes Create Files/Write Data Create Folders/Append Data Write Attributes Write Extended Attributes Delete Read Permissions Change Permissions Take Ownership Salmon: clearer labels ProjectF Problem #3: Violating interface conventions Normally, a clicking on a checkbox only changes that checkbox –but click a checkbox in one of these sets, and some other checkboxes may also be changed – confusing! Salmon: better checkboxes ProjectF Problem #4: Hidden options 28 Problem #4: Hidden options 1 2 Click “Advanced” Double-click entry 3 Click “Delete” checkbox 29 Salmon: All options visible ProjectF Problem #5: Omission errors (1/2) Omission error: Failure to complete a necessary step in a procedure Classic examples: Forgetting to take your card out of the ATM after receiving cash Forgetting to take your original after making photocopies Omission errors are quite common in security-based tasks Forgetting to change a default password Forgetting to restart a service after making changes 31 Problem #5: Omission errors (2/2) XP interface showed much potential for omission errors: Users failed to make necessary changes to permissions that were hidden from view (e.g. Change Permissions and Take Ownership) User failed to check group membership, because the group membership information was so hard to find 32 Salmon: Feedback helps prevent omission errors ProjectF FLOCK: Summary of design problems Feedback poor Labels ambiguous Omission error potential Convention violation Keeping options visible 34 Part 3: Evaluation of XP and Salmon Conducted laboratory-based user studies Formative and summative studies for Salmon I’ll focus on summative evaluation 35 Advice for user studies Know what you’re measuring! Maintain internal validity Maintain external validity 36 Common usable security metrics Accuracy – with what probability do users correctly complete tasks? Speed – how quickly can users complete tasks? Security – how difficult is it for an attacker to break into the system? Etc. – satisfaction, learnability, memorability 37 Measure the right thing! Keystroke dynamics analysis poses a real threat to any computer user. Hackers can easily record the sounds of users' keystrokes and obtain sensitive passwords from them. We address this issue by introducing a new typing method we call "Babel Type", in which users hit random keys when asked to type in their passwords. We have built a prototype and tested it on 100 monkeys with typewriters. We discovered that our method reduces the keystroke attack by 100%. This approach could potentially eliminate all risks associated with keystroke dynamics and increase user confidence. It remains an open question, however, how to let these random passwords authenticate the users. 38 Measurement instruments Speed – Easy; use a stopwatch, time users Accuracy – Harder; need unambiguous definitions of “success” and “failure” Security – Very hard; may require serious math, or lots of hackers 39 Internal validity Internal validity: Making sure your results are due to the effect you are testing Manipulate one variable (in our case, the interface, XP or Salmon) Control or randomize other variables Use same experimenter Experimenter reads directions from a script Tasks presented in same text to all users Assign tasks in different order for each user Assign users randomly to one condition or other 40 External validity External validity: Making sure your experiment can be generalized to the real world Choose real tasks Sources of real tasks: • Web forums • Surveys • Your own experience Choose real participants We were testing novice or occasional filepermissions users with technical backgrounds (so CMU students & staff fit the bill) 41 User study compared Salmon to XP Seven permissions-setting tasks, I’ll discuss two: Wesley Jack Metrics for comparison: Accuracy (measured as deviations in users’ final permission bits from correct permission bits) Speed (time to task completion) Not security – left that to Microsoft 42 Study design Between-participants comparison of interfaces 12 participants per interface, 24 total Participants were technical staff and students at Carnegie Mellon University Participants were novice or occasional file permissions users 43 Wesley and Jack tasks Wesley task Initial state Deny Wesley WRITE Initial state Wesley allowed READ, denied WRITE What needs to be done Wesley allowed READ & WRITE Final state Jack task Final state Jack allowed READ, WRITE, & ADMINISTRATE Jack allowed READ, denied WRITE & ADMINISTRATE What needs to be done Deny Jack WRITE & ADMINISTRATE Salmon outperformed XP in accuracy Percent successful completions by task 300% 100 100 50 25 0 Wesley task 25 XP 58 Salmon 75 improvement Salmon 83 XP Percent of Users Who Correctly Completed Tasks 43% improvement Jack task Task Name 45 Salmon outperformed XP in accuracy p = 0.09 83 100 p < 0.0001 50 25 0 Wesley task 25 XP 58 Salmon 75 Salmon 100 XP Percent of Users Who Correctly Completed Tasks Percent successful completions by task Jack task Task Name 46 Salmon did not sacrifice speed Speed (Time-to-Task-Completion) Results 250 173 150 Salmon 100 50 XP 183 Salmon 208 200 XP Time (seconds) 208 Successful XP users Successful Salmon users 0 Wesley task Jack task Task Name 47 Salmon did not sacrifice speed 250 Speed (Time-to-Task-Completion) Results p = 0.35 p = 0.20 173 150 Salmon 100 50 XP 183 Salmon 208 200 XP Time (seconds) 208 Successful XP users Successful Salmon users 0 Wesley task Jack task Task Name 48 Part 4: Analysis What led Salmon users to better performance? 49 How users spent their time - Wesley 45 40 35 All XPFP users 30 25 20 15 All Salmon users Successful XPFP users Successful Salmon users wo Ch rk ec k gr ou Le ps ar n in te rfa Co ce ns ul tH Se el tp p er m iss M io an ns ag e wi Re nd m ow ov s e fro m AC L to Ad d Ch ec k AC L an Pl ta sk 10 5 0 Re ad Time (seconds) Average behavior time per participant for Wesley task Behavior 50 Where Salmon did better - Wesley 45 40 35 All XPFP users 30 25 20 15 All Salmon users Successful XPFP users Successful Salmon users wo Ch rk ec k gr ou Le ps ar n in te rfa Co ce ns ul tH Se el tp p er m iss M io an ns ag e wi Re nd m ow ov s e fro m AC L to Ad d Ch ec k AC L an Pl ta sk 10 5 0 Re ad Time (seconds) Average behavior time per participant for Wesley task Behavior 51 Where XP did better - Wesley 45 40 35 All XPFP users 30 25 20 15 All Salmon users Successful XPFP users Successful Salmon users wo Ch rk ec k gr ou Le ps ar n in te rfa Co ce ns ul tH Se el tp p er m iss M io an ns ag e wi Re nd m ow ov s e fro m AC L to Ad d Ch ec k AC L an Pl ta sk 10 5 0 Re ad Time (seconds) Average behavior time per participant for Wesley task Behavior 52 How users spent their time - Jack Average behavior time per participant for Jack task 60 All XPFP users 40 All Salmon users 30 Successful XPFP users 20 Successful Salmon users 10 wo Ch rk ec k gr ou Le ps ar n in te rfa Co ce ns ul tH Se el tp p er m iss M io an ns ag e wi Re nd m ow ov s e fro m AC L to Ad d Ch ec k AC L an Pl ta sk 0 Re ad Time (seconds) 50 Behavior 53 Where Salmon did better - Jack Average behavior time per participant for Jack task 60 All XPFP users 40 All Salmon users 30 Successful XPFP users 20 Successful Salmon users 10 wo Ch rk ec k gr ou Le ps ar n in te rfa Co ce ns ul tH Se el tp p er m iss M io an ns ag e wi Re nd m ow ov s e fro m AC L to Ad d Ch ec k AC L an Pl ta sk 0 Re ad Time (seconds) 50 Behavior 54 Where XP did better - Jack Average behavior time per participant for Jack task 60 All XPFP users 40 All Salmon users 30 Successful XPFP users 20 Successful Salmon users 10 wo Ch rk ec k gr ou Le ps ar n in te rfa Co ce ns ul tH Se el tp p er m iss M io an ns ag e wi Re nd m ow ov s e fro m AC L to Ad d Ch ec k AC L an Pl ta sk 0 Re ad Time (seconds) 50 Behavior 55 Common UI problems summary Feedback poor Labels ambiguous Omission error potential Convention violation Keeping options visible 56 User interface evaluation summary Know what you’re measuring Internal validity: Control your experiment External validity: Make your experiment realistic 57 Good UI design Peace on Capitol Hill? 58 Thanks Rob Reeder Email: reeder@cs.cmu.edu 59 x-x-x-x-x-x-x END x-x-x-x-x-x-x-x 60