HTTPS and the Lock Icon Dan Boneh. Goals for this lecture Brief overview of HTTPS: How the SSL/TLS protocol works (very briefly) How to use HTTPS Integrating.

Slides:



Advertisements
Similar presentations
1 IEEE Symposium on Security and Privacy, May 2009 Shuo Chen, Ziqing Mao, Yi-Min Wang, Ming Zhang Microsoft Research Purdue University May 20 th, 2009.
Advertisements

Enabling Secure Internet Access with ISA Server
Why Eve & Mallory Love Android
ForceHTTPS: Protecting High-Security Web Sites from Network Attacks Collin Jackson and Adam Barth.
The Dog’s Biggest Bite. Overview History Start Communication Protocol Weakness POODLE Issues.
1 Lecture 17: SSL/TLS history, architecture basic handshake session initiation/resumption key computation negotiating cipher suites application: SET.
Dan Boneh Web security HTTPS and the Lock Icon. Dan Boneh Goals for this lecture Brief overview of HTTPS: How the SSL/TLS protocol works (very briefly)
SSLstrip Stepan Shykerynets
SSL CS772 Fall Secure Socket layer Design Goals: SSLv2) SSL should work well with the main web protocols such as HTTP. Confidentiality is the top.
Hands-On Ethical Hacking and Network Defense Lecture 15 Man in the Middle Attack to get Passwords from HTTPS Sessions.
CMSC 414 Computer and Network Security Lecture 26 Jonathan Katz.
COMP043-Cryptology Week 4 – Certs and Sigs. Digital Signatures Digital signatures provide –Integrity –Authenticity and –Non-repudiation How do they work?
SSL, HTTPS and the Lock Icon Borrowed from Dan Boneh & others.
By: Hassan Waqar.  A PROTOCOL for securely transmitting data via the internet.  NETWORK LAYER application.  Developed by NETSCAPE.
Session Hijacking Why web security depends on communications security and how TLS everywhere is the only solution. Scott Helme - 6th Aug scotthel.me.
SSL Serguei Mokhov SOEN321, Fall Contents Background SET SSL –origins –protocol.
DNS and HTTPs ACN Presentation. Domain Names We refer to computers on the Internet (Internet hosts), by names like: sharda.ac.in These are called domain.
More on SSL/TLS. Internet security: TLS TLS is one of the more prominent internet security protocols. TLS is one of the more prominent internet security.
1 Supplement III: Security Controls What security services should network systems provide? Confidentiality Access Control Integrity Non-repudiation Authentication.
A Third Party Service for Providing Trust on the Internet Work done in 2001 at HP Labs by Michael VanHilst and Ski Ilnicki.
Apr 2, 2002Mårten Trolin1 Previous lecture On the assignment Certificates and key management –Obtaining a certificate –Verifying a certificate –Certificate.
K. Salah 1 Chapter 31 Security in the Internet. K. Salah 2 Figure 31.5 Position of TLS Transport Layer Security (TLS) was designed to provide security.
Online Security Tuesday April 8, 2003 Maxence Crossley.
Encryption An Overview. Fundamental problems Internet traffic goes through many networks and routers Many of those networks are broadcast media Sniffing.
Protected Extensible Authentication Protocol
Beware of Finer-Grained Origins
SSL By: Anthony Harris & Adam Shkoler. What is SSL? SSL stands for Secure Sockets Layer SSL is a cryptographic protocol which provides secure communications.
Christopher Chapman | MCT Content PM, Microsoft Learning, PDG Planning, Microsoft.
CSCI 6962: Server-side Design and Programming
Course 201 – Administration, Content Inspection and SSL VPN
Web Security Sankar Roy 1. Acknowledgement While preparing the presentation slides and the demo, I received help from Professor Eugene Vasserman Professor.
CHAPTER 2 PCs on the Internet Suraya Alias. The TCP/IP Suite of Protocols Internet applications – client/server applications The client requested data.
Securing Data at the Application Layer Planning Authenticity and Integrity of Transmitted Data Planning Encryption of Transmitted Data.
Threat Management Gateway 2010 Questo sconosciuto? …ancora per poco! Manuela Polcaro Security Advisor.
Digital Certificates Made Easy Sam Lutgring Director of Informational Technology Services Calhoun Intermediate School District.
HTTPS and the Lock Icon Faisal Karim Shaikh Slides by Dan Boneh.
Secure Socket Layer (SSL)
1 Computer Communication & Networks Lecture 28 Application Layer: HTTP & WWW p Waleed Ejaz
Implementing ISA Server Publishing. Introduction What Are Web Publishing Rules? ISA Server uses Web publishing rules to make Web sites on protected networks.
SSL / TLS in ITDS Arun Vishwanathan 23 rd Dec 2003.
Configuring and Troubleshooting Identity and Access Solutions with Windows Server® 2008 Active Directory®
Zscaler New Interface and Reporting From Saturday 8 th June 2013.
E-Commerce Security Professor: Morteza Anvari Student: Xiaoli Li Student ID: March 10, 2001.
Certificate-Based Operations. Module Objectives By the end of this module participants will be able to: Define how cryptography is used to secure information.
Module 9: Fundamentals of Securing Network Communication.
Apache Web Server Quick and Dirty for AfNOG 2015 (Originally by Joel Jaeggli for AfNOG 2007) ‏
Integrating and Troubleshooting Citrix Access Gateway.
Lecture 16 Page 1 CS 236 Online Web Security CS 236 On-Line MS Program Networks and Systems Security Peter Reiher.
Security fundamentals Topic 5 Using a Public Key Infrastructure.
Configuring and Troubleshooting Identity and Access Solutions with Windows Server® 2008 Active Directory®
Pertemuan #10 Secure HTTP (HTTPS) Kuliah Pengaman Jaringan.
Measures to prevent MITM attack and their effectiveness CSCI 5931 Web Security Submitted By Pradeep Rath Date : 23 rd March 2004.
Session Management Tyler Moore CS7403 University of Tulsa Slides adapted in part or whole from Dan Boneh, Stanford CS155 1.
Secure Socket Layer SSL and TLS. SSL Protocol Peer negotiation for algorithm support Public key encryptionPublic key encryption -based key exchange and.
SSL: Secure Socket Layer By: Mike Weissert. Overview Definition History & Background SSL Assurances SSL Session Problems Attacks & Defenses.
Secure HTTP (HTTPS) Pat Morin COMP 2405.
Web security HTTPS and the Lock Icon.
Setting and Upload Products
Web security HTTPS and the Lock Icon.
Apache web server Quick overview.
Practical Censorship Evasion Leveraging Content Delivery Networks
How to Check if a site's connection is secure ?
CS 142 Lecture Notes: Network Security
Using SSL – Secure Socket Layer
Web security HTTPS and the Lock Icon.
CS 142 Lecture Notes: Network Security
Figure 1-7: Eavesdropping on a Dialog
CS 142 Lecture Notes: Securing the Connection
CS 142 Lecture Notes: Network Security
Advanced Computer Networks
Presentation transcript:

HTTPS and the Lock Icon Dan Boneh

Goals for this lecture Brief overview of HTTPS: How the SSL/TLS protocol works (very briefly) How to use HTTPS Integrating HTTPS into the browser Lots of user interface problems to watch for

Threat Model: Network Attacker Network Attacker: Controls network infrastructure: Routers, DNS Passive attacker: only eavesdrops on net traffic Active attacker: eavesdrops, injects, blocks, and modifies packets Examples: Wireless network at Internet Café Internet access at hotels (untrusted ISP)

SSL/TLS overview Alice Enc m c Bob Dec c m PK Bob SK Bob Bob generates (SK Bob, PK Bob ) Alice: using PK Bob encrypts messages and only Bob can decrypt Public-key encryption:

Certificates How does Alice (browser) obtain PK Bob ? CA PK and proof “I am Bob” Browser Alice SK CA check proof issue Cert with SK CA : Bob’s key is PK choose (SK,PK ) Server Bob PK CA verify Cert Bob uses Cert for an extended period (e.g. one year) PK CA

Certificates: example Important fields:

Certificates on the web Subject’s CommonName can be: An explicit name, e.g. cs.stanford.edu, or A name with a wildcard character, e.g. *.stanford.edu or cs*.stanford.edu matching rules: IE7: “ * ” must occur in leftmost component, does not match “.” example: *.a.com matches x.a.com but not y.x.a.com FF3: “ * ” matches anything

Certificate Authorities Browsers accept certificates from a large number of CAs

Brief overview of SSL/TLS browser server SK client-hello server-hello + server-cert ( PK ) key exchange (several options) Finished cert client-key-exchange: E(PK, k) rand. k k HTTP data encrypted with KDF(k) Most common: server authentication only

Integrating SSL/TLS with HTTP  HTTPS Two complications Web proxies solution: browser sends CONNECT domain-name before client-hello (dropped by proxy) Virtual hosting: two sites hosted at same IP address. solution in TLS 1.1 (RFC 4366) client_hello_extension: server_name=cnn.com implemented in FF2 and IE7 (vista) web proxy web server corporate network web server cert CNN cert FOX client-hello server-cert ???

Why is HTTPS not used for all web traffic? Slows down web servers Breaks Internet caching ISPs cannot cache HTTPS traffic Results in increased traffic at web site Incompatible with virtual hosting (older browsers)

HTTPS in the Browser

The lock icon: SSL indicator Intended goal: Provide user with identity of page origin Indicate to user that page contents were not viewed or modified by a network attacker In reality: Origin ID is not always helpful example: Stanford HR is hosted at BenefitsCenter.com Many other problems (next few slides)

When is the (basic) lock icon displayed All elements on the page fetched using HTTPS (with some exceptions) For all elements: HTTPS cert issued by a CA trusted by browser HTTPS cert is valid (e.g. not expired) CommonName in cert matches domain in URL

The lock UI: help users authenticate site IE7:

The lock UI: help users authenticate site Firefox 3: (SSL) (no SSL)

The lock UI: help users authenticate site Firefox 3: clicking on bottom lock icon gives

The lock UI: Extended Validation (EV) Certs Harder to obtain than regular certs requires human lawyer at CA to approve cert request Designed for banks and large e-commerce sites Helps block “semantic attacks”:

A general UI attack: picture-in-picture Trained users are more likely to fall victim to this [JSTB’07]

HTTPS and login pages: incorrect version Users often land on login page over HTTP: Type site’s HTTP URL into address bar, or Google links to the HTTP page <form method="post" action=" View source:

HTTPS and login pages: guidelines General guideline: Response to should beRedirect:

Problems with HTTPS and the Lock Icon

1.Upgrade from HTTP to HTTPS 2.Semantic attacks on certs 3.Invalid certs 4.Mixed content HTTP and HTTPS on the same page 5.Origin contamination Weak HTTPS page contaminates stronger HTTPS page

1. HTTP  HTTPS upgrade Common use pattern: browse site over HTTP; move to HTTPS for checkout connect to bank over HTTP; move to HTTPS for login Easy attack: prevent the upgrade (ssl_strip) [Moxie’08]  Location: https ://...  Location: http ://... (redirect)  web server attacker SSLHTTP

Tricks and Details Tricks: drop-in a clever fav icon Details: Erase existing session and force user to login: ssl_strip injects “Set-cookie” headers to delete existing session cookies in browser. Number of users who detected HTTP downgrade: 0 

2. Semantic attacks on certs International domains: xyz.cn Rendered using international character set Observation: chinese character set contains chars that look like “/” and “?” and “.” and “=” Attack: buy domain cert for *.badguy.cn setup domain called: note: single cert *.badguy.cn works for all sites Extended validation (EV) certs may help defeat this

[Moxie’08]

3. Invalid certs Examples of invalid certificates: expired: current-date > date-in-cert CommonName in cert does not match domain in URL unknown CA (e.g. self signed certs) Small sites may not want to pay for cert Users often ignore warning: Is it a misconfiguration or an attack? User can’t tell. Accepting invalid cert enables man-in-middle attacks (see )

Man in the middle attack using invalid certs Attacker proxies data between user and bank. Sees all traffic and can modify data at will. bank attacker ClientHello BankCertBadguyCert ServerCert (Bank) ServerCert (Badguy) GET bad cert warning! SSL key exchange k1k1 k1k1 k2k2 k2k2 HTTP data enc with k 1 HTTP data enc with k 2

Firefox: Invalid cert dialog Firefox 3.0: Four clicks to get firefox to accept cert page is displayed with full HTTPS indicators

IE: invalid cert URL bar

4. Mixed Content: HTTP and HTTPS Page loads over HTTPS, but contains content over HTTP (e.g. ) IE7: displays mixed-content dialog and no SSL lock Firefox 3.0: displays `!’ over lock icon (no dialog by default) Both browsers: Flash swf file over HTTP does not trigger warning !! note: Flash can script the embedding page Safari: does not attempt to detect mixed content

Mixed Content: HTTP and HTTPS silly dialogs IE7: No SSL lock in address bar:

Mixed Content: HTTP and HTTPS Firefox 3.0: No SSL indicator in address bar Clicking on bottom lock gives:

Mixed content and network attacks banks: after login all content served over HTTPS Developer error: somewhere on bank site write Active network attacker can now hijack session Better way to include content: served over the same protocol as embedding page

An Example From an Online Bank … var so = new SWFObject(" http ://mfasa.chase.com/auth/device.swf",... network attacker can modify SWF file and hijack session (the site has been fixed)

5. Origin Contamination: an example safeLock: removes lock from top page after loading bottom page

Final note: the status Bar Trivially spoofable <a href=“ onclick=“this.href = ‘ PayPal

THE END