Securing the SSL/TLS channel against man-in-the-middle attacks: Future technologies - HTTP Strict Transport Security and Pinning of Certs



Similar documents
SSL/TLS: The Ugly Truth

SSL and Browsers: The Pillars of Broken Security

ADDITIONAL Information Security Review, 3b/ November 2011 On vulnerabilities in the certificate system

SSL BEST PRACTICES OVERVIEW

Should You Trust the Padlock? Web Security and the HTTPS Value Chain. Keeping Current 20 November 2013 Ken Calvert

Securing End-to-End Internet communications using DANE protocol

ALTERNATIVES TO CERTIFICATION AUTHORITIES FOR A SECURE WEB

A Study of What Really Breaks SSL HITB Amsterdam 2011

Is Your SSL Website and Mobile App Really Secure?

Lesson 10: Attacks to the SSL Protocol

Criteria for web application security check. Version

Joe St Sauver, Ph.D. or Manager, InCommon Cer;ficate Program and Manager, Internet2 Na;onwide Security Programs

NIST ITL July 2012 CA Compromise

Attacks against certification service providers and their ramifications

Breaking the Myths of Extended Validation SSL Certificates

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

You re FREE Guide SSL. (Secure Sockets Layer) webvisions

Project X Mass interception of encrypted connections

OWASP and OWASP Top 10 (2007 Update) OWASP. The OWASP Foundation. Dave Wichers. The OWASP Foundation. OWASP Conferences Chair

Where every interaction matters.

Michael Coates michael-coates.blogspot.com

ARPKI: Attack Resilient Public-Key Infrastructure

Recent Web Security Technology. Lieven Desmet iminds-distrinet-ku Leuven 3th February 2015 B-CCENTRE closing workshop

Running head: SSL CERTIFICATE AUTHORITY ISSUES 1. Investigating Implementations Designed. to Resolve SSL Certificate Authority Issues.

Public Key Infrastructure (PKI)

Public Key Infrastructures

Breaking the Security Myths of Extended Validation SSL Certificates

SSL: Paved With Good Intentions. Richard Moore

SSL Report: ebfl.srpskabanka.rs ( )

Sichere Software- Entwicklung für Java Entwickler

More on SHA-1 deprecation:

Vulnerabilità dei protocolli SSL/TLS

Best Practice Guide (SSL Implementation) for Mobile App Development 最 佳 行 事 指 引. Jointly published by. Publication version 1.

SSL implementieren aber sicher!

Digital Certificates (Public Key Infrastructure) Reshma Afshar Indiana State University

EMET 4.0 PKI MITIGATION. Neil Sikka DefCon 21

SSL, PKI and Secure Communication

Introduction to the DANE Protocol

Weird New Tricks for Browser Fingerprinting. yan ToorCon 2015

APPLICATION SECURITY AND ITS IMPORTANCE

PKI : state of the art and future trends

Chapter 17. Transport-Level Security

New Tricks For Defeating SSL In Practice. Moxie Marlinspike

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

Lecture 10: Communications Security

WHITE PAPER. FortiWeb and the OWASP Top 10 Mitigating the most dangerous application security threats

Cleaning Encrypted Traffic

Topics in Network Security

Acano solution. Security Considerations. August E

Security Protocols/Standards

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

Search for Trust: An Analysis and Comparison of CA System Alternatives and Enhancements

Software and Web Security 2 Session Management

Deploying DNSSEC: From End-Customer To Content

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

The weakest link in the chain:

CSC574 - Computer and Network Security Module: Public Key Infrastructure

Public Key Infrastructures. Andreas Hülsing

EXECUTIVE OFFICE OF THE PRESIDENT OFFICE OF MANAGEMENT AND BUDGET WASHINGTON, D.C June 8, 2015

Web Application Security

Chapter 10. Cloud Security Mechanisms

Web Security: Encryption & Authentication

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

Dashlane Security Whitepaper

Web application security

Securing VMware View Communication Channels with SSL Certificates TECHNICAL WHITE PAPER

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

Server Certificates based on DNSSEC

Cryptography for Software and Web Developers

Specific recommendations

BEGINNERS GUIDE TO SSL CERTIFICATES: Making the BEST choice when considering your online security options

Website Security: It s Not all About the Hacker Anymore

ITL BULLETIN FOR JULY Preparing for and Responding to Certification Authority Compromise and Fraudulent Certificate Issuance

Introduction. Purpose. Background. Details

Network-Enabled Devices, AOS v.5.x.x. Content and Purpose of This Guide...1 User Management...2 Types of user accounts2

Web Security. Mahalingam Ramkumar

Sascha Fahl, Marian Harbach, Matthew Smith. Usable Security and Privacy Lab Leibniz Universität Hannover

Web Application Guidelines

How To Understand And Understand The Security Of A Key Infrastructure

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

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

Wildcard and SAN: Understanding Multi-Use SSL Certificates

Overview of CSS SSL. SSL Cryptography Overview CHAPTER

Security & Privacy on the WWW. Topic Outline. Information Security. Briefing for CS4173

CHANGES & CHALLENGES IN SSL PROTECTION. Ark. Arkadiusz Szczurowski SSLGURU CEO. please call me. info@sslguru.com

Network Security Essentials Chapter 5

Alert (TA14-212A) Backoff Point-of-Sale Malware

Certificates, Revocation and the new gtld's Oh My!

Recent Advances in Web Application Security

Secure Client Applications

3. Broken Account and Session Management. 4. Cross-Site Scripting (XSS) Flaws. Web browsers execute code sent from websites. Account Management

Savitribai Phule Pune University

Alaska Alternate Assessment. Website Security Assurances

The Inconvenient Truth about Web Certificates

Prioritizing Trust: Certificate Authority Best Practices

Protecting Web Applications and Users

INFORMATION SUPPLEMENT. Migrating from SSL and Early TLS. Version 1.0 Date: April 2015 Author: PCI Security Standards Council

Secure HTTP

SECURING MOBILE APPLICATIONS

Chapter 7 Transport-Level Security

Transcription:

OWASP AppSec APAC 2012 The OWASP Foundation http://www.owasp.org Securing the SSL/TLS channel against man-in-the-middle attacks: Future technologies - HTTP Strict Transport Security and Pinning of Certs Tobias Gondrom Board member of OWASP London Chair of IETF Web Security WG tobias.gondrom@gondrom.org Copyright The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License.

Tobias Gondrom 12 years information security experience as Global Head of Security Team of global ISV, CISO 10 years application development experience Information Security & Risk Management, Research and Advisory, Director Author of Standards on Digital Signatures and Secure Archiving Chair of IETF Web Security Working Group http://datatracker.ietf.org/wg/websec/charter/ Member of the IETF Security Directorate London OWASP chapter board member (former OWASP Germany chapter lead) www.owasp.org

Defending against MITMA Recent Attacks/Breaches Insufficient Transport Layer Protection Possible Solutions HSTS - Secure Channels: Strict Transport Security Cert Pinning When 3

Defending against MITMA Recent Attacks/Breaches Insufficient Transport Layer Protection Possible Solutions HSTS - Secure Channels: Strict Transport Security Cert Pinning When 4

CA breaches March 15 th 2011: Comodo breach Nine fake certificates for seven domains were issued: mail.google.com, login.live.com, www.google.com, login.yahoo.com (three certificates), login.skype.com, addons.mozilla.org, and global trustee Hacked several times afterwards 5

CA breaches June (?) 2011: DigiNotar breach Discovered on June 19 th July 10, 2011: wildcard cert issued for Google, subsequently used by unknown persons in Iran to conduct a man-in-the-middle attack against Google services August 28, 2011, certificate problems were observed on multiple Internet service providers in Iran Tor Project has published extensive updates on the scope of the attack, including a list of 531 fraudulent certificates issued by DigiNotar 6

CA breaches June (?) 2011: DigiNotar breach All browser vendors remove trust of DigiNotar swiftly, e.g. August 30, 2011: Mozilla removed DigiNotar certificates from their list of trusted CAs (via patches etc.) September 20, 2011 DigiNotar filed for bankruptcy Remark: Google Chrome users were protected from this attack because Chrome was able to detect the fraudulent certificate due to pinning. Statements have appeared that the DigiNotar attacker is the same person who attacked Comodo earlier The attacker claims to be an individual Iranian who has chosen to help the government monitor individuals' communications. Additionally, he claims to have compromised four additional as-yet-unspecified certificate authorities. 7

MITMA - TLS attack TLS TLS Attacker replaced Server cert with own compromised cert and could read all communication (incl. passwords) in the clear OWASP

The situation Browsers trust CA certificates for all domains equally (any trusted CA can sign for any identity, true or fake, e.g. google.com, paypal.com, ) hundreds of CAs From 46 countries/jurisdictions If a single one is broken, all TLS/SSL domains are prone to attacks 9

From EFF: SSL Observatory 1,482 CA Certificates trustable by Windows or Firefox 1,167 distinct issuer strings 651 organizations, but ownerships & jurisdictions overlap (If a CA can sign for one domain, it can sign for any domain.) 10

Defending against MITMA Recent Attacks/Breaches Insufficient Transport Layer Protection Possible Solutions HSTS - Secure Channels: Strict Transport Security Cert Pinning When 11

OWASP Top 10 Insufficient Transport Layer Protection

What s the problem - Some are not using / not mandating TLS/SSL - Relies on trust relationships (trust on first use / trusted source) - Weak channel protection - Authentication & leakage of credentials => Today, Web Applications try to fix this on the Application level with little support of the underlying infrastructure 13

A9 Insufficient Transport Layer Protection Transmitting sensitive data insecurely Failure to identify all sensitive data Failure to identify all the places that this sensitive data is sent On the web, to backend databases, to business partners, internal communications Failure to properly protect this data in every location Typical Impact Attackers access or modify confidential or private information e.g, credit cards, health care records, financial data (yours or your customers) Attackers extract secrets to use in additional attacks Company embarrassment, customer dissatisfaction, and loss of trust Expense of cleaning up the incident Business gets sued and/or fined

Still not using SSL? 15

Insufficient Transport Layer Protection External Victim Custom Code Backend Systems Business Partners External Attacker 1 External attacker steals credentials and data off network 2 Internal Attacker Employees Internal attacker steals credentials and data from internal network

OWASP

OWASP

<div class="menu_login_container"><form method="post" action="https://login.facebook.com/login.php?login_attempt=1" id="login_form"> OWASP

Common attack vectors SSL downgrading Attacks SSL stripping Use of fake of SSL certs 20

Moxie s SSL Strip Terminates SSL Changes https to http Normal https to the server Acts as client OWASP

Moxie s SSL Strip Secure cookie? Encoding, gzip? Cached content? Sessions? Strip the secure attribute off all cookies. Strip all encodings in the request. Strip all if-modified-since in the request. Redriect to same page, set-cookie expired OWASP

A9 Avoiding Insufficient Transport Layer Protection Protect with appropriate mechanisms Use TLS on all connections with sensitive data Individually encrypt messages before transmission E.g., XML-Encryption Sign messages before transmission E.g., XML-Signature

A9 Avoiding Insufficient Transport Layer Protection Use the mechanisms correctly Use standard strong algorithms (disable old SSL algorithms) Manage keys/certificates properly Verify SSL certificates before using them Use proven mechanisms when sufficient E.g., SSL vs. XML-Encryption See: http://www.owasp.org/index.php/transport_layer_protection_cheat _Sheet for more details

Defending against MITMA Recent Attacks/Breaches Insufficient Transport Layer Protection Possible Solutions HSTS - Secure Channels: Strict Transport Security Cert Pinning When 25

Who Introducing the Players OWASP Top Ten Browser Security Day at OWASP Summit IETF Web Security WG Browser Vendors Secure Web-sites of critical information and payments (e.g. paypal, google, ebay, ) Security Researchers and Plug-in developers for browsers 26

What s been done / what s coming Secure Channel: HSTS Strict Transport Security Cert Pinning TLS in DNSSEC Other methods: Moxie s Convergence (browser plug-in) 27

HSTS - Secure Channels: Strict Transport Security Server declares I only talk TLS Example: HTTP(S) Response Header: Strict-Transport-Security: max-age=15768000; includesubdomains Header can be cached and also prevents leakage via subdomain-content through non-tls links in content Weakness: Trust on first use Already first deployments 28

Cert Pinning (1) draft-ietf-websec-key-pinning-01 Server identities tend to be long-lived, but clients have to re-establish the server's identity on every TLS session. How could Google/Chrome be resilient to DigiNotar attack? Google built in "preloaded" fingerprints for the known public keys in the certificate chains of Google properties. Thereby exposed the false *.google.com certificate DigiNotar signed. 29

Cert Pinning (2) But...preloading does not scale, so we need something dynamic: => Could use an HTTP header i.e. transmit the SHA1 or SHA256 hash of the Subject Public Key Info structure of the X.509 certificate. (You could pin to end entity, intermediary, root. Select your degree of precision.) 30

Cert Pinning - Syntax Header add Public-Key-Pins "maxage=10000; pinsha1=\"obt42aospaqwdy9wfrfl7i0h svk=\"; pinsha1=\"hvfkn/qlp/zhxr3cuerq6jd2z7g=\ " 31

Cert Pinning - parameters List at least 2 certs: 1 live pin (a hash of an SPKI in the current cert chain) and at least one backup pin (a hash of an SPKI not in the current cert chain). Clients remember the most recently seen set of pins for max-age seconds after it was most recently seen. Clients drop TLS connections if not using the listed certs. 32

Cert Pinning possible problems Possible Problems: Bootstrap trust on first use Pre-loaded browser Servers might accidently "brick" themselves (pin for a long time to an SPKI which is later lost, for example) reason why backup cert is mandatory Attackers with ISP capabilities / man-in-the-middle access may try to brick domains for users even when outside of their reach (imagine: Iranian travelling abroad and no longer able to access Google, etc.) Recovery / cache flush mechanisms 33

Other Methods: Secure Channels: DNSSEC for TLS DNSSEC can be used to declare supported protocols for domains DNSSEC can be used to declare server certificate for domain Advantage: Advantage of trusted signed source Disadvantage: long time to deploy 34

Other Methods: Moxie s Convergence plug-in Ask trusted party about cert Notaries 35

Defending against MITMA Recent Attacks/Breaches Insufficient Transport Layer Protection Possible Solutions HSTS - Secure Channels: Strict Transport Security Cert Pinning When 36

When - Timeframes HSTS Strict Transport Security Q2/2012 (LC in Q1) Cert Pinning Q3 2012 TLS in DNSSEC - 2014 37

Join the discussion Ideas / feedback / participation welcome IETF Websec: http://tools.ietf.org/wg/websec/charters Or drop me an email: tobias.gondrom@gondrom.org 38

Questions? 39

Thank you