Vulnerabilità dei protocolli SSL/TLS



Similar documents
Chapter 17. Transport-Level Security

Web Security Considerations

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

Transport Layer Security Protocols

Chapter 7 Transport-Level Security

Security Protocols/Standards

Using etoken for SSL Web Authentication. SSL V3.0 Overview

Three attacks in SSL protocol and their solutions

Transport Level Security

Secure Socket Layer. Security Threat Classifications

Network Security Essentials Chapter 5

A Perfect CRIME? TIME Will Tell. Tal Be ery, Web research TL

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

Communication Systems SSL

Overview SSL/TLS HTTPS SSH. TLS Protocol Architecture TLS Handshake Protocol TLS Record Protocol. SSH Protocol Architecture SSH Transport Protocol

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

Spirent Abacus. SIP over TLS Test 编 号 版 本 修 改 时 间 说 明

SSL/TLS: The Ugly Truth

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

Secure Sockets Layer

Web Security (SSL) Tecniche di Sicurezza dei Sistemi 1

TLS/SSL in distributed systems. Eugen Babinciuc

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

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

Identifying and Exploiting Padding Oracles. Brian Holyfield Gotham Digital Science

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

Web Payment Security. A discussion of methods providing secure communication on the Internet. Zhao Huang Shahid Kahn

Information Security

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

POODLE. Yoshiaki Kasahara Kyushu University 2015/3/3 APAN 39th in Fukuoka 1

TLS and SRTP for Skype Connect. Technical Datasheet

CS 356 Lecture 27 Internet Security Protocols. Spring 2013

The Secure Sockets Layer (SSL)

SSL BEST PRACTICES OVERVIEW

Authenticity of Public Keys

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

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.

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

Is Your SSL Website and Mobile App Really Secure?

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

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

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

Communication Security for Applications

Savitribai Phule Pune University

Overview. SSL Cryptography Overview CHAPTER 1

Properties of Secure Network Communication

Introduction. Purpose. Background. Details

Systematization of Knowledge Lessons Learned From SSL/TLS Attacks

Secure HTTP

SSL and Browsers: The Pillars of Broken Security

Internet Engineering Task Force (IETF) Request for Comments: Category: Standards Track ISSN: A. Langley Google June 2015

SECURE SOCKETS LAYER (SSL)

SSL: Secure Socket Layer

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

Lecture 10: Communications Security

Web Security: Encryption & Authentication

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

Implementation Vulnerabilities in SSL/TLS

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

Network Security Part II: Standards

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

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

SECURE SOCKETS LAYER (SSL) SECURE SOCKETS LAYER (SSL) SSL ARCHITECTURE SSL/TLS DIFFERENCES SSL ARCHITECTURE. INFS 766 Internet Security Protocols

Web Security. Mahalingam Ramkumar

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

Is your data safe out there? -A white Paper on Online Security

The Misuse of RC4 in Microsoft Word and Excel

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

CS 161 Computer Security Spring 2010 Paxson/Wagner MT2

History of the TLS Authentication Gap Bug. Marsh Ray Steve Dispensa PhoneFactor

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

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

Apache Security with SSL Using Ubuntu

Overview of CSS SSL. SSL Cryptography Overview CHAPTER

WEB Security & SET. Outline. Web Security Considerations. Web Security Considerations. Secure Socket Layer (SSL) and Transport Layer Security (TLS)

Criteria for web application security check. Version

As enterprises conduct more and more

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

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

SSL: Paved With Good Intentions. Richard Moore

Installation and usage of SSL certificates: Your guide to getting it right

Differences Between SSLv2, SSLv3, and TLS

Protocol Rollback and Network Security

Apache Partial HTTP Request Denial of Service Vulnerability - Zero Day. SSL Certificate - Subject Common Name Does Not Match Server FQDN

Web Security: SSL/TLS

SECURE INTERNET ACCESSIBLE MATHEMATICAL COMPUTATION FRAMEWORK

Certificates and network security

Wireless Networks. Welcome to Wireless

mod_ssl Cryptographic Techniques

CSE/EE 461 Lecture 23

Lesson 10: Attacks to the SSL Protocol

CSC Network Security

Midterm 2 exam solutions. Please do not read or discuss these solutions in the exam room while others are still taking the exam.

SSL Interception Proxies. Jeff Jarmoc Sr. Security Researcher Dell SecureWorks. and Transitive Trust

LBSEC.

CSC 474 Information Systems Security

CS5008: Internet Computing

Security. Learning Objectives. This module will help you...

Lecture 9 - Network Security TDTS (ht1)

Cleaning Encrypted Traffic

Transcription:

Università degli Studi di Milano Facoltà di Scienze Matematiche, Fisiche e Naturali Dipartimento di Informatica e Comunicazione Vulnerabilità dei protocolli SSL/TLS Andrea Visconti

Overview Introduction to SSL/TLS Security provided by SSL/TLS Browser Exploit Against SSL/TLS (2011) Null Prefix Attack (2009) Renegotiation Attack (2009) 2

Introduction SSL and TLS were meant to provide a secure channel over untrusted networks; 1994: Secure Sockets Layer (SSL) protocol, created by Netscape; 1996: Transport Layer Security (TLS), developed by the Internet Engineering Task Force (IETF); SSL: SSL2 (Feb 95), SSL3 (Mar 96); TLS: TLS1.0 (Jan 99), TLS1.1 (Apr 06), TLS1.2 (Ago 08); How do you choose which one to use? 3

Introduction Let your browser choose for you... FIREFOX 4

Introduction INTERNET EXPLORER 5

Introduction Firefox: TLS 1.0, TLS 1.1, TLS 1.2 IE: TLS 1.0, TLS 1.1, TLS 1.2 Chrome: TLS 1.0, TLS 1.1, TLS 1.2 Opera: TLS 1.0, TLS 1.1, TLS 1.2 Safari: TLS 1.0, TLS 1.1, TLS 1.2 Only Opera enables TLS 1.1 and TLS 1.2 by default. 6

Security Security goals: Authentication (Certificates, Digital Signature); Integrity (Hash); Privacy (Encryption); SSL and TLS should be able to prevent: Message Forgery; Tampering; Eavesdropping; 7

Security The cipher suite includes algorithms for encrypting data, computing the MAC, and exchanging keys. 8

Browser Exploit Against SSL/TLS 9

Browser Exploit Against SSL/TLS A security flaw: G.V. Bard (2004), (2006); Possible solutions: fix the bug, upgrading to TLS 1.1 or later, the ostrich solution, etc. Browser exploit against SSL/TLS: T. Duong, J. Rizzo (2011); Unfortunately, the ostrich solution never works when it comes to security flaws. 10

Browser Exploit Against SSL/TLS Cipher Block Chaining (CBC) mode encryption: Plaintext P 1 P 2 P n Initialization Vector IV E K E K E K C 1 Ciphertext C 2 C n 11

Browser Exploit Against SSL/TLS An attacker (Eva) can intercept network traffic; She will know C 0 =IV, C 1, C 2,, C n ; CBC mode encryption with chained initialization vectors; Initialization Vector (IV) is predictable; An example: Plaintext P=VISCONTIANDREA P 1 = VISCONTI P 2 = ANDREA%% 12

Browser Exploit Against SSL/TLS 1. Block size B bytes (e.g. 8 bytes); P 1 = V I S C O N T I = 8 bytes; 2. Eva chooses a random string R (B 1 bytes); R = A A A A A A A = 7 bytes; 3. She prepends R to P: P 1* = A A A A A A A V = 8 bytes; 4. She tries to guess P 1* : P 1 = Random String R Random character = A A... A? = 8 bytes; 13

Browser Exploit Against SSL/TLS 5. Eva chooses a random string R (B 2 bytes); R = A A A A A A = 6 bytes; 6. She prepends R to P 1 : X 1* = A A A A A A V I = 8 bytes; 7. She tries to guess X 1* : X 1 = Random String R Random character = = A A... A V? = 8 bytes; 14

Browser Exploit Against SSL/TLS CBC mode encryption: C 0 = IV; C i = E K (P i C i-1 ) 1. Eva tries to guess P 1 ; 2. She knows that C 1 = E K (P 1 IV); 3. R is prepended to plaintext P, P * =AAAAAAA VISCONTIAN 4. P * is divided in blocks of B byte P * = P 1* P 2* P 3* ; 5. P * is encrypted, C * = C 1* C 2* C 3* ; 6. C * is transmitted over the channel; 15

Browser Exploit Against SSL/TLS 7. Eva tries to guess P 1* =AAAAAAAV; 8. She knows that C * 1 = E K (P * 1 IV) = E K (P * 1 C 0* ) 9. She defines G 1 = IV C * 0 P 1 10.She sends G 1 to the client; 11.If P 1 = P * 1 then C 1 = E K (G 1 IV) = E K (IV C * 0 P 1 IV) = E K (C * 0 P 1 ) = E K (C * 0 P 1* ) = C * 1 12.If P 1 P * 1 then C 1 C * 1 16

Browser Exploit Against SSL/TLS Deterministic algorithm; An attacker tries to guess the encoding of a byte instead of a block; 256 iterations (worst case); 128 iterations (average case); 17

Null Prefix Attack 18

Null Prefix Attack The problem is related to how browsers handle certificate fields with null value character (\0). String format: PASCAL VS. C; Common name: Main field checked for authentication; Authentication: Domain validation certificates rely on email checking; 19

Null Prefix Attack Attackers generate and submit a fake certificate request to Certification Authorities; www.my_email.com\0i_am_cheating_you.com During validation, Certification Authorities do not check request content fully, ignoring the subdomains placed before the null value character; www.my_email.com\0i_am_cheating_you.com 20

Null Prefix Attack Domain validation certificates rely on email checking; www.i_am_cheating_you.com Browsers interpret \0 character as a terminating point www.my_email.com\0i_am_cheating_you.com hence www.my_email.com 21

TLS Renegotiation Attack 22

RFC 5746: TLS Renegotiation Indication Extension Feb 2010 RFC 5746 Abstract: Secure Socket Layer (SSL) and Transport Layer Security (TLS) renegotiation are vulnerable to an attack in which the attacker forms a TLS connection with the target server, injects content of his choice, and then splices in a new TLS connection from a client. The server treats the client's initial TLS handshake as a renegotiation and thus believes that the initial data transmitted by the attacker is from the same entity as the subsequent client data. This specification defines a TLS extension to cryptographically tie renegotiations to the TLS connections they are being performed over, thus preventing this attack. 23

RFC 5746: TLS Renegotiation Indication Extension Feb 2010 RFC 5746 Introduction: In some protocols (notably HTTPS), no distinction is made between pre- and postauthentication stages and the bytes are handled uniformly, resulting in the server believing that the initial traffic corresponds to the authenticated client identity. Even without certificate-based authentication, a variety of attacks may be possible in which the attacker convinces the server to accept data from it as data from the client. For instance, if HTTPS is in use with HTTP cookies, the attacker may be able to generate a request of his choice validated by the client's cookie. 24

TLS Renegotiation Attack EVA holds the client_hello msg. 25

TLS Renegotiation Attack 26

TLS Renegotiation Attack EVA forwards the client_hello msg renegotiation!! 27

TLS Renegotiation Attack 28

TLS Renegotiation Attack 29

TLS Renegotiation Attack GET /redirect_url_http HTTP/1.1 Host: my_email.abc X-ignore-this: GET/login.html HTTP/1.1 Host: my_email.abc Cookie: AuthMe=OK \r\n 30