Protocol Rollback and Network Security



Similar documents
Authenticity of Public Keys

CS 356 Lecture 27 Internet Security Protocols. Spring 2013

Real-Time Communication Security: SSL/TLS. Guevara Noubir CSU610

Communication Systems SSL

Overview. Securing TCP/IP. Introduction to TCP/IP (cont d) Introduction to TCP/IP

Communication Systems 16 th lecture. Chair of Communication Systems Department of Applied Sciences University of Freiburg 2009

Managing and Securing Computer Networks. Guy Leduc. Chapter 4: Securing TCP. connections. connections. Chapter goals: security in practice:

Security Protocols HTTPS/ DNSSEC TLS. Internet (IPSEC) Network (802.1x) Application (HTTP,DNS) Transport (TCP/UDP) Transport (TCP/UDP) Internet (IP)

Overview of CSS SSL. SSL Cryptography Overview CHAPTER

TLS/SSL in distributed systems. Eugen Babinciuc

Web Security Considerations

Network Fundamentals Carnegie Mellon University

Secure Socket Layer (SSL) and Trnasport Layer Security (TLS)

Three attacks in SSL protocol and their solutions

Communication Security for Applications

Announcement. Final exam: Wed, June 9, 9:30-11:18 Scope: materials after RSA (but you need to know RSA) Open books, open notes. Calculators allowed.

CSC 474 Information Systems Security

Network Security Web Security and SSL/TLS. Angelos Keromytis Columbia University

CSC Network Security

Security vulnerabilities in the Internet and possible solutions

Overview. SSL Cryptography Overview CHAPTER 1

3.2: Transport Layer: SSL/TLS Secure Socket Layer (SSL) Transport Layer Security (TLS) Protocol

CS 3251: Computer Networking 1 Security Protocols I

Chapter 17. Transport-Level Security

Network Security Part II: Standards

Session Hijacking Exploiting TCP, UDP and HTTP Sessions

Security Engineering Part III Network Security. Security Protocols (I): SSL/TLS

Security. Contents. S Wireless Personal, Local, Metropolitan, and Wide Area Networks 1

SECURE SOCKETS LAYER (SSL)

Outline. INF3510 Information Security. Lecture 10: Communications Security. Communication Security Analogy. Network Security Concepts

Chapter 7 Transport-Level Security

Outline. Transport Layer Security (TLS) Security Protocols (bmevihim132)

Lecture 10: Communications Security

Cryptography and Network Security Sicurezza delle reti e dei sistemi informatici SSL/TSL

INF3510 Information Security University of Oslo Spring Lecture 9 Communication Security. Audun Jøsang

Transport Level Security

Lecture 7: Transport Level Security SSL/TLS. Course Admin

Chapter 8. Network Security

Overview of SSL. Outline. CSC/ECE 574 Computer and Network Security. Reminder: What Layer? Protocols. SSL Architecture

Information Security

Today s Topics SSL/TLS. Certification Authorities VPN. Server Certificates Client Certificates. Trust Registration Authorities

Programming Project #2. Network Security (TCP/IP and DNS) Overview. Overview. Man in the Middle. Proxy Server. Tadayoshi Kohno

CS5008: Internet Computing

Network Security (TCP/IP and DNS)

TCP/IP Fundamentals. OSI Seven Layer Model & Seminar Outline

Network Security Essentials Chapter 5

TLS and SRTP for Skype Connect. Technical Datasheet

Secure Sockets Layer (SSL) / Transport Layer Security (TLS)

Network Security. Abusayeed Saifullah. CS 5600 Computer Networks. These slides are adapted from Kurose and Ross 8-1

Secure Socket Layer. Security Threat Classifications

, SNMP, Securing the Web: SSL

HTTPS: Transport-Layer Security (TLS), aka Secure Sockets Layer (SSL)

12/8/2015. Review. Final Exam. Network Basics. Network Basics. Network Basics. Network Basics. 12/10/2015 Thursday 5:30~6:30pm Science S-3-028

Computer and Network Security

Security Protocols and Infrastructures. h_da, Winter Term 2011/2012

Internet Architecture and Philosophy

Overview of TCP/IP. TCP/IP and Internet

SSL: Secure Socket Layer

Lab 7. Answer. Figure 1

Guide to Network Defense and Countermeasures Third Edition. Chapter 2 TCP/IP

The Secure Sockets Layer (SSL)

Network Security Fundamentals

APNIC elearning: Network Security Fundamentals. 20 March :30 pm Brisbane Time (GMT+10)

Security Protocols/Standards

How To Understand And Understand The Ssl Protocol ( And Its Security Features (Protocol)

Security in IPv6. Basic Security Requirements and Techniques. Confidentiality. Integrity

Outline. CSc 466/566. Computer Security. 18 : Network Security Introduction. Network Topology. Network Topology. Christian Collberg

Client Server Registration Protocol

Secure Socket Layer. Introduction Overview of SSL What SSL is Useful For

Secure Socket Layer/ Transport Layer Security (SSL/TLS)

CSE 127: Computer Security. Network Security. Kirill Levchenko

Software Engineering 4C03 Research Project. An Overview of Secure Transmission on the World Wide Web. Sean MacDonald

Linux Network Security

Internet Protocol: IP packet headers. vendredi 18 octobre 13

Cornerstones of Security

SSL/TLS. What Layer? History. SSL vs. IPsec. SSL Architecture. SSL Architecture. IT443 Network Security Administration Instructor: Bo Sheng

13 Virtual Private Networks 13.1 Point-to-Point Protocol (PPP) 13.2 Layer 2/3/4 VPNs 13.3 Multi-Protocol Label Switching 13.4 IPsec Transport Mode

How To Understand And Understand The Security Of A Key Infrastructure

Introduction to Cryptography

Certificates and network security

Part III-b. Universität Klagenfurt - IWAS Multimedia Kommunikation (VK) M. Euchner; Mai Siemens AG 2001, ICN M NT

Security (II) ISO : Security Architecture of OSI Reference Model. Outline. Course Outline: Fundamental Topics. EE5723/EE4723 Spring 2012

Securing IP Networks with Implementation of IPv6

Secure Socket Layer (SSL) and Transport Layer Security (TLS)

Other VPNs TLS/SSL, PPTP, L2TP. Advanced Computer Networks SS2005 Jürgen Häuselhofer

Secure Sockets Layer

SY system so that an unauthorized individual can take over an authorized session, or to disrupt service to authorized users.

20-CS X Network Security Spring, An Introduction To. Network Security. Week 1. January 7

Web Security. Mahalingam Ramkumar

Secure Sockets Layer (SSL ) / Transport Layer Security (TLS) Network Security Products S31213

Understanding TCP/IP. Introduction. What is an Architectural Model? APPENDIX

ACHILLES CERTIFICATION. SIS Module SLS 1508

Chapter 10. Network Security

First Semester Examinations 2011/12 INTERNET PRINCIPLES

IPV6 vs. SSL comparing Apples with Oranges

Midterm. Name: Andrew user id:

SSL A discussion of the Secure Socket Layer

Lab Exercise SSL/TLS. Objective. Step 1: Open a Trace. Step 2: Inspect the Trace

Transcription:

CSE 484 / CSE M 584 (Spring 2012) Protocol Rollback and Network Security Tadayoshi Kohno Thanks to Dan Boneh, Dieter Gollmann, Dan Halperin, John Manferdelli, John Mitchell, Vitaly Shmatikov, Bennet Yee, and many others for sample slides and materials...

Goals for Today Protocol Rollback Attacks (in SSL) Network security HW2 Lab 3 HW 3 (EC)

What is SSL / TLS? Transport Layer Security (TLS) protocol, version 1.2 De facto standard for Internet security The primary goal of the TLS protocol is to provide privacy and data integrity between two communicating applications In practice, used to protect information transmitted between browsers and Web servers (and mail readers and...) https://datatracker.ietf.org/wg/tls/ Based on Secure Sockets Layers (SSL) protocol, version 3.0 Same protocol design, different algorithms Ubiquitously deployed in commercial Web browsers

TLS Basics TLS consists of two protocols Familiar pattern for key exchange protocols Handshake protocol Use public-key cryptography to establish a shared secret key between the client and the server Record protocol Use the secret key established in the handshake protocol to protect communication between the client and the server We will focus on the handshake protocol

TLS Handshake Protocol Two parties: client and server Negotiate version of the protocol and the set of cryptographic algorithms to be used Interoperability between different implementations of the protocol Authenticate client and server (optional) Use digital certificates to learn each other s public keys and verify each other s identity Use public keys to establish a shared secret

Handshake Protocol Structure ClientHello ServerHello, [Certificate], [ServerKeyExchange], [CertificateRequest], ServerHelloDone C [Certificate], ClientKeyExchange, [CertificateVerify] S switch to negotiated cipher Finished Record of all sent and received handshake messages switch to negotiated cipher Finished

ClientHello ClientHello Client announces (in plaintext): Protocol version Supported Cryptographic algorithms C S

ServerHello C, Version c, suite c, N c ServerHello C Server responds (in plaintext) with: Highest protocol version supported by both client and server Strongest cryptographic suite selected from those offered by the client S

ServerKeyExchange C, Version c, suite c, N c Version s, suite s, N s, ServerKeyExchange C Server sends public-key certificate containing either RSA, or Diffie-Hellman public key (depending on chosen crypto suite) S

ClientKeyExchange C, Version c, suite c, N c Version s, suite s, N s, sig ca (S,K s ), ServerHelloDone C ClientKeyExchange S Client generates some secret key material and sends it to the server encrypted with the server s public key (if using RSA)

Core SSL 3.0 Handshake (Not TLS) C, Version c =3.0, suite c, N c Version s =3.0, suite s, N s, sig ca (S,K s ), ServerHelloDone C {Secret c } Ks S If the protocol is correct, C and S share some secret key material (secret c ) at this point switch to key derived from secret c, N c, N s switch to key derived from secret c, N c, N s

Version Rollback Attack C, Version c =2.0, suite c, N c Server is fooled into thinking it is communicating with a client who supports only SSL 2.0 Version s =2.0, suite s, N s, sig ca (S,K s ), ServerHelloDone C {Secret c } Ks S C and S end up communicating using SSL 2.0 (weaker earlier version of the protocol without finished message from client)

SSL 2.0 Weaknesses (Fixed in 3.0) Cipher suite preferences are not authenticated Cipher suite rollback attack is possible SSL 2.0 uses padding when computing MAC in block cipher modes, but padding length field is not authenticated Attacker can delete bytes from the end of messages MAC hash uses only 40 bits in export mode No support for certificate chains or non-rsa algorithms, no handshake while session is open

Protocol Rollback Attacks Why do people release new versions of security protocols? Because the old version got broken! New version must be backward-compatible Not everybody upgrades right away Attacker can fool someone into using the old, broken version and exploit known vulnerability Similar: fool victim into using weak crypto algorithms Defense is hard: must authenticate version in early designs Many protocols had version rollback attacks SSL, SSH, GSM (cell phones)

Version Check in SSL 3.0 (Approximate) 2 C, Version c =3.0, suite c, N c Embed eight 3s into left side of this secret if server said Versions=2.0 2 Version s =3.0, suite s, N s, sig ca (S,K s ), ServerHelloDone C {Version c,secret c } Ks If embedded version information includes eight 3s but server supports version 3, issue error. S If the protocol is correct, C and S share some secret key material secret c at this point switch to key derived from secret c, N c, N s switch to key derived from secret c, N c, N s

SSL/TLS Record Protection Use symmetric keys established in handshake protocol

Internet Infrastructure backbone local network local network Internet service provider (ISP) ISP TCP/IP for packet routing and connections Border Gateway Protocol (BGP) for route discovery Domain Name System (DNS) for IP address discovery

(Some) Entities User Network Admin Intermediate ISPs Server

(Some) Goals Service (can get to Internet) Privacy (middle-entities shouldn t know what communicating or with whom) User Fairness (e.g., get service I paid for) Integrity (can t impersonate me, modify my data) Safety (network shouldn t attack me)

(Some) Goals Network Admin Service (clients can get to Internet) Performance (network works well) Identity (know what s on network) Safety (no one launching attacks) Accountability (can find bad users)

(Some) Goals Service (deliver traffic -> earn $$) Reliability & Performance (network works well) Intermediate ISPs Integrity of delivered traffic (can bill customers properly, you re not overcharged by providers)

(Some) Goals Service (deliver traffic -> earn $$) Reliability & Performance (network works well) Server Analytics (better delivery) Accounting (can bill customers properly) Safety (not being attacked)

(Some) Malicious Goals User Launch undetectable attacks Probe for vulnerabilities Network Admin Intermediate ISPs Spy on/tamper with traffic Impersonate servers/users Server Spy on users Identify anonymous users

OSI Protocol Stack application presentation session transport network data link email, Web, NFS RPC TCP, UDP, ICMP IP Ethernet physical

Data Formats application layer Application data message transport layer TCP header data TCP header data TCP header data segment network layer IP header TCP header data packet data link layer Ethernet header IP header TCP header data Ethernet trailer frame

IP (Internet Protocol) Connectionless Unreliable, best-effort protocol Uses numeric addresses for routing Typically several hops in the route Alice s computer Bob s ISP Alice s ISP Packet Source 128.83.130.239 128.83.130.239 Dest 171.64.66.201 Bob s computer 171.64.66.201

TCP (Transmission Control Protocol) Sender: break data into packets Sequence number is attached to every packet Receiver: reassemble packets in correct order Acknowledge receipt; lost packets are re-sent Connection state maintained on both sides book mail each page remember received pages and reassemble

UDP (User Datagram Protocol) Sender: break data into packets Sequence number - maybe? If Application wants them Receiver: receive packets No acknowledgement Dropped packets are skipped - no retransmission video mail each frame stream frames to application

ICMP (Control Message Protocol) Provides feedback about network operation Out-of-band messages carried in IP packets Error reporting, congestion control, reachability, etc. Example messages: Destination unreachable Time exceeded Parameter problem Redirect to better gateway Reachability test (echo / echo reply) Message transit delay (timestamp request / reply)

(Some) Malicious Goals User Launch undetectable attacks Probe for vulnerabilities Network Admin Intermediate ISPs Spy on/tamper with traffic Impersonate servers/users Server Identify anonymous users

Detecting attacks User Launch undetectable attacks Problem: IP packets contain source IP address Solution: Spoof IP address

Inferring DDOS (Moore, Voelker, Savage 01) SYN packets B of the D V B V C V Victim Attacker where backs tack r 3.2 C D Attack Backscatter The e spoof acros samp