280 likes | 418 Views
Hardening Web Browsers Against Man-in-the-Middle and Eavesdropping Attacks. Dr. José Carlos Brustoloni Dept. Computer Science University of Pittsburgh jcb@cs.pitt.edu Joint work with Haidong Xia. Motivation. Technology for securing Web applications is thought to be well-understood:
E N D
Hardening Web Browsers Against Man-in-the-Middle and Eavesdropping Attacks Dr. José Carlos Brustoloni Dept. Computer Science University of Pittsburgh jcb@cs.pitt.edu Joint work with Haidong Xia
Motivation • Technology for securing Web applications is thought to be well-understood: • HTTPS = HTTP + SSL/TLS • What about the usability of this technology? Jose' Brustoloni
Contributions We performed user studies to answer three related questions: • With current browsers and users, how likely is an attack to succeed? • A: Very likely. HTTPS provides alarmingly little actual security. • Is it possible to make browsers more foolproof? • A: Yes. We propose and demonstrate new user interface techniques, CSCV and SPW, that greatly increase usable security. • Can user education improve Web browsing security? • A: Yes, but better browser/CSCV had greater impact than did education. Jose' Brustoloni
Eavesdropping attacks • Easy to perform on local area networks with shared medium, e.g.: • Ethernet (with hubs) • Wi-Fi • Many free applications can be used for eavesdropping, e.g.: • tcpdump • ethereal Jose' Brustoloni
Man-in-the-middle (MITM) attacks • Actually only slightly more complicated than eavesdropping • Easily available, free tools: • arpspoof • dnsspoof • webmitm • Necessary if no shared medium (e.g. switched Ethernet) or packets encrypted (e.g. WPA, SSL/TLS) Jose' Brustoloni
MITM attack on switched Ethernet Jose' Brustoloni
Access Point Stronger or Closer Access Point (Tool: Airsnarf) SSID: “goodguy” SSID: “badguy” Wi-Fi Card SSID: “ANY” “goodguy” “badguy” MITM attack on Wi-Fi Jose' Brustoloni
Certificate verification (in theory) • Browser has public keys of major certifying authorities (CAs, e.g., Verisign) • Secure site supposed to get certificate from one of these CAs, with: • CA’s signature • certificate expiration • site’s name • site’s public key • Browser supposed to: • check CA’s signature, expiration, site’s name, CA’s revocation list • get site’s public key and use it to authenticate site Jose' Brustoloni
Certificate verification (in practice) • Public-key infrastructure (PKI) not universally deployed • Certificate verification errors are common • Browsers warn users of errors, but allow users to continue despite errors → Vulnerability to MITM attacks despite HTTPS Jose' Brustoloni
Why certificate verification fails • Browser does not have public key of certificate’s issuer • very common for internal sites → often not attack • uncommon for public sites → high risk of attack • Certificate expired • may result from simple inattention • unlikely to be attack • Certificate’s subject not desired site • if subject in same domain as desired site → unlikely to be attack • otherwise → high risk of attack Current browsers allow user to proceed despite error in all of these cases Jose' Brustoloni
Context-Sensitive Certificate Verification (CSCV) CSCV-aware private CA: • Distributes its public key to organization members, on removable media (e.g., floppy disk or USB key) • Includes administrator’s contact information in issued certificates If certificate verification fails because issuer’s public key unknown, CSCV-aware browser: • Asks user for key on removable media • If user does not have it, uses information in certificate to guide user on how to contact CA’s administrator to overcome error • Does not allow user to continue without correcting error Jose' Brustoloni
Unencrypted passwords Existing browsers warn against unencrypted transmission, but: • Do not discriminate between passwords and other data • Warnings occur quite frequently • Often ignored or disabled by users Jose' Brustoloni
Specific Password Warnings (SPW) • Browser detects user about to send password unencrypted • Asks if password protects important account • If so, strongly discourages user from continuing: • Tells user signs of secure site (https:, closed padlock) • Asks user to consider possibility of MITM replica of usually secure site • Asks user to consider consequences of financial or privacy loss Jose' Brustoloni
Just-in-Time Instruction (JITI) • Warn-and-Continue (WC) – e.g., Internet Explorer (IE): • Uses concepts that users do not understand • Does not fully disclose possible consequences • Does not tell users how to overcome error • Can be ignored by users Jose' Brustoloni
Improving JITI • Guidance Without Override (GWO) – e.g., CSCV: • Addresses all four shortcomings in WC • Not always possible • Guidance With Override (G+O) – e.g., SPW: • Unlike GWO, can be ignored by user • More generally applicable, but less secure Jose' Brustoloni
Well-in-Advance Instruction (WIAI) • Whitten’s alternative to JITI • Safe staging: each stage enables only data and functions that user knows how to manipulate safely • Our instantiation: Staged PKI Client (SPKIC) • Use browser with restricted functions and learn to reject unverified certificates, not to send unencrypted passwords, and how to get CA’s public key • Learn about MITM attacks, set up CA, issue bona fide and bogus certificates • Use IE without restrictions Jose' Brustoloni
User studies Male CS undergrads • Untrained, using unmodified IE • Untrained, using modified Mozilla with CSCV, SPW • After staged security training, using unmodified IE Scenario • Check balance at “rewards” site in students’ university – with HTTPS, certificate from unknown CA, correct local contact info • Spend rewards to buy one or more items at e-merchant site – with HTTPS, certificate from unknown CA, bogus contact info • Get order confirmation message at Web-based email site – with HTTP only / no certificate Jose' Brustoloni
Experimental results • Alarming insecurity for untrained users with existing • browsers • Users actually behaved less securely with HTTPS • CSCV, SPW, and SPKIC all had highly significant benefits • CSCV’s effect significantly higher than SPKIC’s Jose' Brustoloni
Caveats • Task completion bias • Difficulty effect • Age, gender, education level, ability not controlled Jose' Brustoloni
Related work • Usable security (Adams & Sasse, Anderson, Zurko & Simon, Sandhu, Xia & Brustoloni) • Whitten & Tygar – PGP • Out-of-band certificate fingerprint verification • Identity-based cryptography • Ackerman & Cranor – critics • Ye & Smith – browser trusted paths • Yan & al. – education on password selection Jose' Brustoloni
Conclusions • Most users do not check or understand certificates and ignore warnings • Delegating security decisions to users defeats Web security • CSCV: Discriminate context in which certificate verification fails & guide user in correction • SPW: Warn possible consequences of sending passwords unencrypted • CSCV and SPW greatly increase usable security of browsers Jose' Brustoloni
Significance analysis Jose' Brustoloni
Dialog for certificate on removable media Jose' Brustoloni
Dialog for determining relationship between client and server Jose' Brustoloni
Dialog guiding inside member for getting certificate Jose' Brustoloni
Dialog cautioning public client about certificate error Jose' Brustoloni
Dialog for unencrypted password – important account Jose' Brustoloni