EPTI: Efficient Defence Against Meltdown Attack for Unpatched

Total Page:16

File Type:pdf, Size:1020Kb

EPTI: Efficient Defence Against Meltdown Attack for Unpatched EPTI: Efficient Defence against Meltdown Attack for Unpatched VMs Zhichao Hua, Dong Du, Yubin Xia, Haibo Chen, and Binyu Zang, Institute of Parallel and Distributed Systems, Shanghai Jiao Tong University https://www.usenix.org/conference/atc18/presentation/hua This paper is included in the Proceedings of the 2018 USENIX Annual Technical Conference (USENIX ATC ’18). July 11–13, 2018 • Boston, MA, USA ISBN 978-1-939133-02-1 Open access to the Proceedings of the 2018 USENIX Annual Technical Conference is sponsored by USENIX. EPTI: Efficient Defence against Meltdown Attack for Unpatched VMs Zhichao Hua, Dong Du, Yubin Xia, Haibo Chen, Binyu Zang Institute of Parallel and Distributed Systems, Shanghai Jiao Tong University fhuazhichao123,dd nirvana,xiayubin,haibochen,[email protected] Abstract Spectre vulnerability. However, in order to fix the Melt- down vulnerability, which is much more serious and eas- The Meltdown vulnerability, which exploits the inher- ier to exploit, users are required to apply a kernel patch ent out-of-order execution in common processors like named KPTI (kernel page table isolation) [30] that uses x86, ARM and PowerPC, has shown to break the fun- two page tables to host kernel and user programs to iso- damental isolation boundary between user and kernel late kernel address space from any user process. While space. This has stimulated a non-trivial patch to mod- this patch can effectively defend the Meltdown attacks, ern OS to separate page tables for user space and kernel it brings three issues, which leaves thousands of millions space, namely, KPTI (kernel page table isolation). While of unpatched machines in danger. this patch stops kernel memory leakages from rouge user First, the patch has to be applied manually by every processes, it mandates users to patch their kernels (usu- user. In cloud environment, although the cloud adminis- ally requiring a reboot), and is currently only available trators can patch the host OS, they cannot directly patch on the latest versions of OS kernels. Further, it also in- guest OS running in VMs (virtual machines) since they troduces non-trivial performance overhead due to page are not allowed to do so. For example, Amazon “recom- table switching during user/kernel crossings. mend that customers patch their instance operating sys- In this paper, we present EPTI, an alternative approach tems to address process-to-process or process-to-kernel to defending against the Meltdown attack for unpatched concerns of this issue” [12]. However, many cloud users VMs (virtual machines) in cloud, yet with better per- are not capable of doing such system maintenance. formance than KPTI. Specifically, instead of using two Second, the patch may depend on specific versions of guest page tables, we use two EPTs (extended page ta- kernel, especially for Linux. Till now, Linux community bles) to isolate user space and kernel space, and unmap just released version 4.15 that contains the patch. The all the kernel space in user’s EPT to achieve the same patch may not work on some early versions of kernel like effort of KPTI. The switching of EPTs is done through 4.4 [28]. It is expected to take a long time before the a hardware-support feature called EPT switching within patch can be applied to all the versions of Linux kernel. guest VMs without hypervisor involvement. Meanwhile, EPT switching does not flush TLB since each EPT has Third, the patch may incur non-trivial performance its own TLB, which further reduces the overhead. We slowdown. The KPTI patch makes the kernel and have implemented our design and evaluated it on Intel user process use different page tables, which causes Kaby Lake CPU with different versions of Linux kernel. TLB-flush during the switching between user-mode and The results show that EPTI only introduces up to 13% kernel-mode and thus increases the rate of TLB miss. overhead, which is around 45% less than KPTI. Prior evaluation results show that for some system-call intensive workload, the performance penalty may be high as 30% in VMs [22]; our own experiments con- 1 Introduction firmed such performance slowdown (Section 6). In this paper, we present an alternative approach to The recently discovered Meltdown [16] and Spectre [14] defending against Meltdown attack for VMs in cloud. vulnerabilities allow unauthorized processes to read data Our approach, namely EPTI, can be applied to unpatched of privileged kernel or other processes, which brings se- guest VMs without users’ awareness and can achieve bet- vere security threat especially to cloud platforms. Cur- ter performance than KPTI at the same time. First, in- rently, Intel has released micro-code patches to fix the stead of using two gPTs (guest page tables) as in KPTI, USENIX Association 2018 USENIX Annual Technical Conference 255 EPTI uses two EPTs (extended page tables), namely Origin KPTI EPTI EPTk and EPTu, to run the kernel and user processes, Kernel correspondingly. The guest kernel and user still share space one gPT, but in user mode, the gPT entries for mapping kernel address space are set to zero in EPTu, which for- bids any translation of address within kernel space to mit- User space igate the Meltdown attack. Second, we leverage one of Intel’s hardware features for virtualization, named EPT User-mode Kernel-mode User-mode Kernel-mode User-mode switching, to switch the two EPTs within the VM itself Kernel-mode Mapped in both gPT and EPT without causing any VMExit. We use binary instrumen- Not mapped in gPT Mapped in gPT, not mapped in EPT tation to insert two trampolines at the entrance and exit of guest kernel to do the EPT switching, which does not Figure 1: Page table isolation. For a VM, KPTI uses two require kernel’s source code and has little (if any) de- gPTs and one EPT, while EPTI uses one gPT (since VM is not pendence on kernel versions. Third, through a detailed patched) and two EPTs. micro-architectural analysis, we find that EPT switching can be more efficient than gPT switching. Since each to access kernel address A and to leverage its data as an EPT has its own TLB, when switching the EPTs there index to access the cache; step-2: to get the data through will be no TLB flushing by hardware, which is the main cache covert channel. The key problem here is that the reason of performance degradation of KPTI. We also Step-1 is executed reordered and will be canceled even- adopt several optimizations to minimize the number of tually, but the cache layout is affected without rollback. VMExits to further reduce the overhead. Fourth, EPTI Since the kernel will typically map all the physical mem- can be seamlessly deployed in the cloud by combining ory within its memory space, the malicious application with live VM migration [5]: a host can migrate away all can potentially get all of the memory contents. the guest VMs, patch the host hypervisor with EPTI, and KPTI (kernel page table isolation) [30] is based on then migrate all the VMs back. KAISER (kernel address isolation to have side-channels We have implemented EPTI on KVM and use unmod- efficiently removed) [19], which is proposed to defend ified Ubuntu distribution as guest VM for evaluation. We against the Meltdown attack. This patch separates user conduct a detailed security analysis as well as evalua- space and kernel space page tables entirely, as shown in tion to show that our EPTI can achieve the same security Figure 1. The one used by kernel is the same as before, guarantee as KPTI. We also evaluate real-world bench- while the one used by application contains a copy of user marks to measure the performance overhead. The results space and a small set of kernel space mapping with only show that the average performance overhead on server trampoline code to enter the kernel. Since the data of ker- applications of EPTI is about 6%, which is 45% lower nel are no longer mapped in the user space, a malicious than KPTI whose average overhead is 11%. application cannot directly de-reference kernel’s data ad- To summarize, this paper makes the following contri- dress, and thus cannot issue Meltdown attack. KPTI has butions: been merged to the mainstream Linux kernel 4.15, which was released on 28 Jan, 2018. However, the patch still • An EPT-level isolation of kernel’s and user’s has problems on previous Linux kernel versions. For address spaces to defend against Meltdown attack example, it is reported that some Ubuntu user “just got for unpatched guest VMs. the Meltdown update to kernel linux-image-4.4.0-108- • Several optimizations to achieve better performance generic but this does not boot at all” [28]. Considering than the current solution KPTI. the patch needs to be applied manually by system ad- ministrators, it may take a long time before most of the • A prototype of our design on real hardware for machines getting the patch deployed. performance and security evaluation. 2 Motivation and Background 2.2 Overhead of KPTI 2.1 Meltdown Attack and KPTI KPTI introduces performance overhead since both entering-kernel and exiting-kernel require additional The Meltdown vulnerability was published in January page table switching. The switching is done by loading 2018, known to affect Intel’s x86 CPU, ARM Cortex- the CR3 register, which takes around 300 cycles. Mean- A75 [16] and some versions of PowerPC processor [11]. while, since TLB (translation lookaside buffer) will be Through this attack, a malicious user application can flushed during CR3 changing, the performance will fur- steal contents of kernel memory in two steps.
Recommended publications
  • Systematization of Vulnerability Discovery Knowledge: Review
    Systematization of Vulnerability Discovery Knowledge Review Protocol Nuthan Munaiah and Andrew Meneely Department of Software Engineering Rochester Institute of Technology Rochester, NY 14623 {nm6061,axmvse}@rit.edu February 12, 2019 1 Introduction As more aspects of our daily lives depend on technology, the software that supports this technology must be secure. We, as users, almost subconsciously assume the software we use to always be available to serve our requests while preserving the confidentiality and integrity of our information. Unfortunately, incidents involving catastrophic software vulnerabilities such as Heartbleed (in OpenSSL), Stagefright (in Android), and EternalBlue (in Windows) have made abundantly clear that software, like other engineered creations, is prone to mistakes. Over the years, Software Engineering, as a discipline, has recognized the potential for engineers to make mistakes and has incorporated processes to prevent such mistakes from becoming exploitable vulnerabilities. Developers leverage a plethora of processes, techniques, and tools such as threat modeling, static and dynamic analyses, unit/integration/fuzz/penetration testing, and code reviews to engineer secure software. These practices, while effective at identifying vulnerabilities in software, are limited in their ability to describe the engineering failures that may have led to the introduction of vulnerabilities. Fortunately, as researchers propose empirically-validated metrics to characterize historical vulnerabilities, the factors that may have led to the introduction of vulnerabilities emerge. Developers must be made aware of these factors to help them proactively consider security implications of the code that they contribute. In other words, we want developers to think like an attacker (i.e. inculcate an attacker mindset) to proactively discover vulnerabilities.
    [Show full text]
  • Internet Security Threat Report VOLUME 21, APRIL 2016 TABLE of CONTENTS 2016 Internet Security Threat Report 2
    Internet Security Threat Report VOLUME 21, APRIL 2016 TABLE OF CONTENTS 2016 Internet Security Threat Report 2 CONTENTS 4 Introduction 21 Tech Support Scams Go Nuclear, 39 Infographic: A New Zero-Day Vulnerability Spreading Ransomware Discovered Every Week in 2015 5 Executive Summary 22 Malvertising 39 Infographic: A New Zero-Day Vulnerability Discovered Every Week in 2015 8 BIG NUMBERS 23 Cybersecurity Challenges For Website Owners 40 Spear Phishing 10 MOBILE DEVICES & THE 23 Put Your Money Where Your Mouse Is 43 Active Attack Groups in 2015 INTERNET OF THINGS 23 Websites Are Still Vulnerable to Attacks 44 Infographic: Attackers Target Both Large and Small Businesses 10 Smartphones Leading to Malware and Data Breaches and Mobile Devices 23 Moving to Stronger Authentication 45 Profiting from High-Level Corporate Attacks and the Butterfly Effect 10 One Phone Per Person 24 Accelerating to Always-On Encryption 45 Cybersecurity, Cybersabotage, and Coping 11 Cross-Over Threats 24 Reinforced Reassurance with Black Swan Events 11 Android Attacks Become More Stealthy 25 Websites Need to Become Harder to 46 Cybersabotage and 12 How Malicious Video Messages Could Attack the Threat of “Hybrid Warfare” Lead to Stagefright and Stagefright 2.0 25 SSL/TLS and The 46 Small Business and the Dirty Linen Attack Industry’s Response 13 Android Users under Fire with Phishing 47 Industrial Control Systems and Ransomware 25 The Evolution of Encryption Vulnerable to Attacks 13 Apple iOS Users Now More at Risk than 25 Strength in Numbers 47 Obscurity is No Defense
    [Show full text]
  • The Dark Reality of Open Source Spotlight Report
    SPOTLIGHT The Dark Reality of Open Source Through the Lens of Threat and Vulnerability Management RiskSense Spotlight Report • May 2020 Executive Summary Open sourCe software (OSS) has quiCkly transformed both And while Heartbleed and the Apache Struts how modern applications are built and the underlying code vulnerabilities are the household names of open source they rely on. Access to high-quality and powerful open vulnerabilities, they are far from the only examples. Open source software projects has allowed developers to quickly source software is increasingly being targeted by integrate new capabilities into their applications without cryptominers, ransomware, and leveraged in DDoS having to reinvent the wheel. As a result, it is now estimated attacks. Unfortunately, OSS vulnerabilities are often a that between 80% and 90% of the code in most modern blind spot for many enterprises, who may not always be applications is made up of open source components. aware of all the open source projects and dependencies Likewise, many of the very tools that have enabled the that are used in their applications. growth of DevOps and CI/CD such as Jenkins, Kubernetes, and Docker are themselves open source projects. With this in mind, we have focused this version of the RiskSense Spotlight report on vulnerabilities in some of OSS also allows organizations to reduce their software today’s most popular open source software, including costs, and is often key to digital transformation efforts more than 50 OSS projects and over 2,600 vulnerabilities. and the transition of services to the cloud. It is no We then used this dataset to provide a risk-based surprise then that a 2020 report from Red Hat found that analysis of open source software to reveal the following: 95% of organizations view open source software as strategically important to their business.
    [Show full text]
  • Combat Top Security Vulnerabilities: HPE Tippingpoint Intrusion
    Business white paper Combat top security vulnerabilities HPE TippingPoint intrusion prevention system Business white paper Page 2 The year 2014 marked a new pinnacle for hackers. Vulnerabilities were uncovered in some of the most widely deployed software in the world—some of it in systems actually intended to make you more secure. HPE TippingPoint next-generation intrusion prevention system (IPS) and next-generation firewall (NGFW) customers rely on us to keep their networks safe. And when it comes to cyber threats, every second matters. So how did HPE TippingPoint do? This brief highlights the top security vulnerabilities of 2014—the ones that sent corporate security executives scrambling to protect their businesses. And it describes how HPE TippingPoint responded to keep our customers safe. Heartbleed—HPE TippingPoint intrusion prevention system stops blood flow early Any vulnerability is concerning, but when a vulnerability is discovered in software designed to assure security, it leaves businesses exposed and vulnerable. That was the case with the Heartbleed vulnerability disclosed by the OpenSSL project on April 7, 2014. They found the vulnerability in versions of OpenSSL—the open-source cryptographic library widely used to encrypt Internet traffic. Heartbleed grew from a coding error that allowed remote attackers to read information from process memory by sending heartbeat packets that trigger a buffer over-read. As a demonstration of the vulnerability, the OpenSSL Project created a sample exploit that successfully stole private cryptography keys, user names and passwords, instant messages, emails, and business-critical documents and communications. We responded within hours to protect TippingPoint customers. On April 8, we released a custom filter package to defend against the vulnerability.
    [Show full text]
  • Automating Patching of Vulnerable Open-Source Software Versions in Application Binaries
    Automating Patching of Vulnerable Open-Source Software Versions in Application Binaries Ruian Duan:, Ashish Bijlani:, Yang Ji:, Omar Alrawi:, Yiyuan Xiong˚, Moses Ike:, Brendan Saltaformaggio,: and Wenke Lee: fruian, ashish.bijlani, yang.ji, alrawi, [email protected], [email protected] [email protected], [email protected] : Georgia Institute of Technology, ˚ Peking University Abstract—Mobile application developers rely heavily on open- while ensuring backward compatibility, and test for unin- source software (OSS) to offload common functionalities such tended side-effects. For the Android platform, Google has as the implementation of protocols and media format playback. initiated the App Security Improvement Program (ASIP) [21] Over the past years, several vulnerabilities have been found in to notify developers of vulnerable third-party libraries in popular open-source libraries like OpenSSL and FFmpeg. Mobile use. Unfortunately, many developers, as OSSPolice [15] and applications that include such libraries inherit these flaws, which LibScout [4] show, do not update or patch their application, make them vulnerable. Fortunately, the open-source community is responsive and patches are made available within days. However, which leaves end-users exposed. Android developers mainly mobile application developers are often left unaware of these use Java and C/C++ [1] libraries. While Derr et al. [14] flaws. The App Security Improvement Program (ASIP) isa show that vulnerable Java libraries can be fixed by library- commendable effort by Google to notify application developers level update, their C/C++ counterparts, which contain many of these flaws, but recent work has shown that many developers more documented security bugs in the National Vulnerability do not act on this information.
    [Show full text]
  • Cyberwar: the ISIL Threat & Resiliency in Operational Technology
    Cyberwar: The ISIL Threat & Resiliency in Operational Technology Thesis Presented to the Faculty of the Department of Information and Logistics Technology University of Houston In Partial Fulfillment of the Requirements for the Degree Master’s of Information Systems Security By Gregory S. Anderson May 2017 Cyberwar: The ISIL Threat & Resiliency in Operational Technology ____________________________________ Gregory S. Anderson Approved: Committee Chair: ____________________________________ Wm. Arthur Conklin, PhD Computer Information Systems and Information System Security Committee Member: ____________________________________ Chris Bronk, PhD Computer Information Systems and Information System Security Committee Member: ____________________________________ Paula deWitte, PhD Computer Information Systems and Information System Security ____________________________________ ____________________________________ Rupa Iyer, PhD Dan Cassler Associate Dean for Research and Graduate Interim Chair for Department of Information Studies, College of Technology and Logistics Technology THIS PAGE INTENTIONALLY LEFT BLANK Acknowledgments First, I would like to thank Dr. Chris Bronk and Dr. Art Conklin for their support and guidance throughout my time at the University of Houston. Their dedication to students is unparalleled for any other professor I have come across during my education. I would also like to thank my family for their ongoing encouragement and love. The fostering environment to peruse knowledge and “never settle for less” has been a constant inspiration throughout my life. Lastly, to my partner of 7 years, Lorelei. None of my achievements these past few years would have come to fruition without her continuous love, support, and willingness to sacrifice for the greater good is deeply appreciated. Thank you for being the most patient and steadfast person I have ever known, I love you.
    [Show full text]
  • Extra Credit Homework CS 642: Information Security
    Extra Credit Homework CS 642: Information Security December 10, 2014 This homework assignment is for extra credit. It can only make your grade go up, and you can turn in as much as you finish and still get bonus points (assuming the finished portions are correct). You may not work with a partner. It is due Dec 18, 2014 by midnight local time. 1 ShellShock Shellshock, also known as Bashdoor, is a Unix Bash vulnerability that was made public in September 2014. The bug affected a large number of Internet services since it allowed attackers to remotely execute arbitrary commands in vulnerable versions of Bash. In this problem, you need to finish the following tasks: • (Description) You should read materials about the Shellshock bug and what the error was in the source code of BASH. Provide a brief description (at most a few paragraphs) explaining the vulnerability and describe how to fix the bug. • (Impact) Security experts said that exploits against ShellShock were used to generate Botnets and trigger DDoS attacks. Provide a brief description of how that might work, given your knowledge of the vulnerability. • (Tester) You should write a script that tests whether a BASH environment is vulnerable. Provide the script and explain the details of your code (in a separate text file). 2 Heartbleed The Heartbleed bug, an OpenSSL encryption flaw, was made public in April 2014. The bug had huge consequences, as the vulnerable software was used widely among website servers. Millions of servers were in danger of information leaks. Heartbleed allows hackers to remotely retrieve swathes of process memory from the openssl process.
    [Show full text]
  • Legacy of Heartbleed: MITM and Revoked Certificates
    Legacy of Heartbleed: MITM and Revoked Certificates Alexey Busygin [email protected] NeoBIT Notable Private Key Leaks • 2010 – DigiCert Sdn Bhd. issued certificates with 512-bit keys • 2012 – Trustwave issued CA certificate for one of its customers DLP system • 2013 – DigiNotar CA was totally compromised • 2014 – Heartbleed bug caused certificate revocation storm. 500000+ certs to be revoked • 2015 – RSA-CRT private key leaks • 2017 – Cloudbleed bug in Cloudflare reverse proxies 2 Checking Certificate Revocation Status: Certificate Revocation Lists (CRL) • CAs publish CRLs – lists of revoked certificate serial numbers • Normally certificate contains URL of the corresponding CRL Why it’s not OK? CRLs are not appropriate for online checks: • Excess size (up to 1 MB) • Vulnerable to replay attacks 3 Checking Certificate Revocation Status: Online Certificate Status Protocol (OCSP) • CAs maintain OCSP responders answering with certificate revocation status • Normally certificate contains URL of the OCSP responder • OCSP provides optional replay attack protection Why it’s not OK? • Slows down connection establishment • Browsing history leaks to CA • OCSP responder is DDoS target 4 Checking Certificate Revocation Status: OCSP Stapling • No browsing history leaks • Choose one: o Replay attack protection o TLS server side OCSP response caching: Minimal impact on connection establishment time Reduced load on OCSP responder Why it’s not OK? • Stapled OCSP responses are optional and may be stripped by MITM • OCSP responder is DDoS target (if replay
    [Show full text]
  • Heartbleed the Live Action Monologue
    Heartbleed The Live Action Monologue Just over 40 slides / April 23rd, 2014 Cruft to Content ratio ~1:3 Rights of pictures per copyright holder/creator Ben Sapiro (CC-BY-SA), 2014 Ben Sapiro (CC-BY-SA), 2014 Ben Sapiro = @ironfog Ben Sapiro (CC-BY-SA), 2014 Standard Disclaimer ● My own opinion and views, not that of anyone else (most especially not my employer) ● I’m sorry in advance for whatever I may have done ● I’m sorry for whatever I did in the past ● I didn’t mean it that way (unless that way is correct and good) ● Go make your own informed decisions Ben Sapiro (CC-BY-SA), 2014 “Looking for a talking head…” Ben Sapiro (CC-BY-SA), 2014 OpenSSL = ... … an open-source implementation of the SSL and TLS protocols Ben Sapiro (CC-BY-SA), 2014 What’s a Heartbeat? “A HeartbeatRequest message can arrive almost at any time during the lifetime of a connection. Whenever a HeartbeatRequest message is received, it SHOULD be answered with a corresponding HeartbeatResponse message.” - RFC 6520 Ben Sapiro (CC-BY-SA), 2014 CVE-2014-0160 OpenSSL version 1.01(A-E) Ben Sapiro (CC-BY-SA), 2014 /* Enter response type, length and copy payload */ *bp++ = TLS1_HB_RESPONSE; s2n(payload, bp); memcpy(bp, pl, payload); User controlled What is not ● It is not a virus ● It is not a flaw in SSL or TLS ● It is not a flaw in any cipher suite ● It does not affect all web sites ● Does not directly impact other software outside of OpenSSL/LibSSL ● It is not an issue with all versions of OpenSSL ● It is not a BoF, ROP or any other voodoo Ben Sapiro (CC-BY-SA), 2014 XKCD
    [Show full text]
  • Software Bug Bounties and Legal Risks to Security Researchers Robin Hamper
    Software bug bounties and legal risks to security researchers Robin Hamper (Student #: 3191917) A thesis in fulfilment of the requirements for the degree of Masters of Law by Research Page 2 of 178 Rob Hamper. Faculty of Law. Masters by Research Thesis. COPYRIGHT STATEMENT ‘I hereby grant the University of New South Wales or its agents a non-exclusive licence to archive and to make available (including to members of the public) my thesis or dissertation in whole or part in the University libraries in all forms of media, now or here after known. I acknowledge that I retain all intellectual property rights which subsist in my thesis or dissertation, such as copyright and patent rights, subject to applicable law. I also retain the right to use all or part of my thesis or dissertation in future works (such as articles or books).’ ‘For any substantial portions of copyright material used in this thesis, written permission for use has been obtained, or the copyright material is removed from the final public version of the thesis.’ Signed ……………………………………………........................... Date …………………………………………….............................. AUTHENTICITY STATEMENT ‘I certify that the Library deposit digital copy is a direct equivalent of the final officially approved version of my thesis.’ Signed ……………………………………………........................... Date …………………………………………….............................. Thesis/Dissertation Sheet Surname/Family Name : Hamper Given Name/s : Robin Abbreviation for degree as give in the University calendar : Masters of Laws by Research Faculty : Law School : Thesis Title : Software bug bounties and the legal risks to security researchers Abstract 350 words maximum: (PLEASE TYPE) This thesis examines some of the contractual legal risks to which security researchers are exposed in disclosing software vulnerabilities, under coordinated disclosure programs (“bug bounty programs”), to vendors and other bug bounty program operators.
    [Show full text]
  • Certificate Authority – Registration Authority (Verifies Cert Requests) – Validation Authority (Handles Revocation)
    11. Trust on the Web Blase Ur and David Cash February 5th, 2020 CMSC 23200 / 33250 Overview • Secure Sockets Layer (SSL) and its successor, Transport Layer Security (TLS) enable secure communication • Frequently encountered with web browsing (HTTPS) and more behind the scenes in app, VOIP, etc. What we want to defend against • People snooping on our communications – The contents of what we’re sending – Session tokens (see, e.g., Firesheep) • Person-in-the-middle attacks – We want to authenticate that we are talking to the right site, not an imposter – Use certificates inside a public-key infrastructure How we could obtain trust • Web of trust – People you already trust introduce you to people they trust – Can get complicated, doesn’t scale well – Infrequently seen in practice • Public-Key Infrastructure (PKI) – Certificates are issued by certificate authorities that bind cryptographic keys to identities Public-Key Infrastucture • Binding of keys to identities – Certificate authority – Registration authority (verifies cert requests) – Validation authority (handles revocation) Image from Wikimedia Foundation What does SSL look like to users? • Compare, e.g., the following: – https://www.google.com (normal certificate) – Go to Google images and then click on an image and see what happens (mixed content) – https://www.thawte.com (EV certificate) What does SSL look like to users? (From Felt et al. SOUPS 2016) How does PKI look to browsers? • Hundreds of trusted certificate authorities – Certificate authorities (CAs) sign the certificates binding
    [Show full text]
  • A Technical View of Theopenssl 'Heartbleed' Vulnerability
    A technical view of theOpenSSL ‘Heartbleed’ vulnerability A look at the memory leak in the OpenSSL Heartbeat implementation Bipin Chandra [email protected] Version 1.2.1, May 13, 2014 Abstract: This article describes ‘OpenSSL Heartbleed Vulnerability’ in detail. It describes the ‘HeartBleed’ problem, its causes and its impact. The purpose of this article is to increase awareness about Heartbleed vulnerability in OpenSSL library, using which attackers can get access to passwords, private keys or any encrypted data. It also explains how Heartbleed works, what code causes data leakage and explains the resolution with code fix. • Table of Contents 1Introduction to Heartbleed Vulnerability.................................................................................................3 2Heartbleed Explanation............................................................................................................................3 2.1The OpenSSL Project......................................................................................................................3 2.2SSL, TLS and DTLS Protocols........................................................................................................3 2.3TLS/DTLS Heartbeat Extension......................................................................................................4 2.3.1How the heartbeat works..........................................................................................................4 2.3.2Heartbeat Implementation in OpenSSL....................................................................................5
    [Show full text]