Not-Quite-So-Broken TLS: Lessons in Re-Engineering a Security Protocol Specification and Implementation

Total Page:16

File Type:pdf, Size:1020Kb

Not-Quite-So-Broken TLS: Lessons in Re-Engineering a Security Protocol Specification and Implementation Not-Quite-So-Broken TLS: Lessons in Re-Engineering a Security Protocol Specification and Implementation David Kaloper-Meršinjak, Hannes Mehnert, Anil Madhavapeddy, and Peter Sewell, University of Cambridge https://www.usenix.org/conference/usenixsecurity15/technical-sessions/presentation/kaloper-mersinjak This paper is included in the Proceedings of the 24th USENIX Security Symposium August 12–14, 2015 • Washington, D.C. ISBN 978-1-939133-11-3 Open access to the Proceedings of the 24th USENIX Security Symposium is sponsored by USENIX Not-quite-so-broken TLS: lessons in re-engineering a security protocol specification and implementation David Kaloper-Mersinjakˇ †, Hannes Mehnert†, Anil Madhavapeddy and Peter Sewell University of Cambridge Computer Laboratory [email protected] † These authors contributed equally to this work Abstract sensitive services, they are not providing the security we need. Transport Layer Security (TLS) is the most widely Transport Layer Security (TLS) implementations have a deployed security protocol on the Internet, used for au- history of security flaws. The immediate causes of these thentication and confidentiality, but a long history of ex- are often programming errors, e.g. in memory manage- ploits shows that its implementations have failed to guar- ment, but the root causes are more fundamental: the chal- antee either property. Analysis of these exploits typically lenges of interpreting the ambiguous prose specification, focusses on their immediate causes, e.g. errors in mem- the complexities inherent in large APIs and code bases, ory management or control flow, but we believe their root inherently unsafe programming choices, and the impos- causes are more fundamental: sibility of directly testing conformance between imple- mentations and the specification. Error-prone languages: historical choices of pro- We present nqsb-TLS, the result of our re-engineered gramming language and programming style that tend to approach to security protocol specification and imple- lead to such errors rather than protecting against them. mentation that addresses these root causes. The same Lack of separation: the complexities inherent in code serves two roles: it is both a specification of TLS, working with large code bases, exacerbated by lack of executable as a test oracle to check conformance of traces emphasis on clean separation of concerns and modular- from arbitrary implementations, and a usable implemen- ity, and by poor language support for those. tation of TLS; a modular and declarative programming style provides clean separation between its components. Ambiguous and untestable specifications: the chal- Many security flaws are thus excluded by construction. lenges of writing and interpreting the large and ambigu- nqsb-TLS can be used in standalone Unix applica- ous prose specifications, and the impossibility of di- tions, which we demonstrate with a messaging client, rectly testing conformance between implementations and and can also be compiled into Xen unikernels (spe- a prose specification. cialised virtual machine image) with a trusted comput- In this paper we report on an experiment in developing ing base (TCB) that is 4% of a standalone system run- a practical and usable TLS stack, nqsb-TLS, using a new ning a standard Linux/OpenSSL stack, with all network approach designed to address each of these root-cause traffic being handled in a memory-safe language; this problems. This re-engineering, of the development pro- supports applications including HTTPS, IMAP, Git, and cess and of our concrete stack, aims to build in improved Websocket clients and servers. Despite the dual-role de- security from the ground up. sign, the high-level implementation style, and the func- tional programming language we still achieve reasonable We demonstrate the practicality of the result in sev- performance, with the same handshake performance as eral ways: we show on-the-wire interoperability with ex- OpenSSL and 73% – 84% for bulk throughput. isting stacks; we show reasonable performance, in both bulk transfer and handshakes; we use it in a test oracle, validating recorded packet traces which contain TLS ses- 1 Introduction sions between other implementations; and we use it as part of a standalone instant-messaging client. In addition Current mainstream engineering practices for specifying to use in such traditional executables, nqsb-TLS is us- and implementing security protocols are not fit for pur- able in applications compiled into unikernels – type-safe, pose: as one can see from many recent compromises of single-address-space VMs with TCBs that run directly USENIX Association 24th USENIX Security Symposium 223 on a hypervisor [32]. This integration into a uniker- ASN.1 X.509 Trust nel stack lets us demonstrate a wide range of working Anchors systems, including HTTPS, IMAP, Git, and Websocket Serialise TLS clients and servers, while sidestepping a further diffi- Nocrypto culty with radical solutions in this area: the large body Parse CSPRNG of legacy code (in applications, operating systems, and libraries) that existing TLS stacks are intertwined with. Policy We assess the security of nqsb-TLS also in several Config Flow Entropy ways: for each of the root causes above, we discuss why our approach rules out certain classes of associated flaws, Figure 1: nqsb-TLS is broken down into strongly sep- with reference to an analysis of flaws found in previ- arated modules. The main part, in bold boxes, has ous TLS implementations; and we test our authentication pure value-passing interfaces and internals. The PRNG logic with a large corpus of certificate chains generated maintains internal state, while Nocrypto includes C code by using the Frankencert fuzzer [8], which found flaws but has a pure effect-free interface. Arrows indicate in several previous implementations. We have also made depends-on relationships. the system publically available for penetration testing, as a Bitcoin Pinata˜ , an example unikernel using nqsb-TLS. This has a TCB size roughly 4% of that of a similar sys- implementation behaviour conforms to the specification. tem using OpenSSL on Linux. TLS is not unique in this, of course, and many other We describe our overall approach in the remainder of specifications are expressed in the same traditional prose the introduction. We then briefly describe the TLS pro- style, but its disadvantages are especially serious for se- tocol ( 2), analyse flaws previously found in TLS im- § curity protocols. plementations ( 3), and the result of applying our ap- § For nqsb-TLS, we specify TLS as a collection of pure proach, dubbed nqsb-TLS ( 4). We demonstrate the du- § functions over abstract datatypes. By avoiding I/O and ality of nqsb-TLS next by using its specification to vali- shared mutable state, these functions can be considered date recorded sessions ( 5) and executing its implemen- § in isolation and each is deterministic, with errors re- tation to provide concrete services ( 6). We evaluate the § turned as explicit values. The top-level function takes an interoperability, performance, and security ( 7) of nqsb- § abstract protocol state and an incoming message, and cal- TLS, describe related work ( 8), and conclude ( 9). § § culates the next state and any response messages. To do nqsb-TLS is freely available under a BSD license so, it invokes subsidiary functions to parse the message, https://nqsb.io ( ), and the data used in this paper is drive the state machine, perform cryptographic opera- openly accessible [27]. tions, and construct the response. This top-level function can be executed as a trace-checker, on traces both from 1.1 Approach our implementation and from others, such as OpenSSL, to decide whether they are allowed by our specification A precise and testable specification for TLS In prin- or not. In building our specification, to resolve the RFC ciple, a protocol specification should unambiguously de- ambiguities, we read other implementations and tested fine the set of all implementation behaviour that it allows, interoperability with them; we thereby capture the prac- and hence also what it does not allow: it should be pre- tical de facto standard. cise. This should not be confused with the question of whether a specification is loose or tight: a precise specifi- Reuse between specification and implementation cation might well allow a wide range of implementation The same functions form the main part of our imple- behaviour. It is also highly desirable for specifications mentation, coupled with code for I/O and to provide en- to be executable as test oracles: given an implementa- tropy. Note that this is not an “executable specification” tion behaviour (perhaps a trace captured from a particu- in the conventional sense: our specification is necessar- lar execution), the specification should let one compute ily somewhat loose, as the server must have the freedom whether it is in the allowed set or not. to choose a protocol version and cipher suite, and the In practice, the TLS specification is neither, but rather trace checker must admit that, while our implementation a series of RFCs written in prose [13, 14, 15]. An ex- makes particular choices. plicit and precise description of the TLS state machine Each version of the implementation (Unix, unikernel) is lacking, as are some security-critical preconditions of has a top-level Flow module that repeatedly performs I/O its transitions, and there are ambiguities in various semi- and invokes the pure functional core; the trace-checker formal grammars. There is no way such prose documents has a top-level module of the same type that reads in a can be executed as a test oracle to directly test whether trace to be checked offline. 2 224 24th USENIX Security Symposium USENIX Association Separation and modular structure This focus on on the security protocol itself (as we recall in 3, some § pure functional descriptions also enables a decomposi- vulnerabilities have been found there). We are also not tion of the system (both implementation and specifica- attempting to advance the state of the art in side-channel tion) into strongly separated modules, with typed inter- defence, though we do follow current best practice.
Recommended publications
  • Not-Quite-So-Broken TLS Lessons in Re-Engineering a Security Protocol Specification and Implementation
    Not-quite-so-broken TLS Lessons in re-engineering a security protocol specification and implementation David Kaloper Meršinjak Hannes Mehnert Peter Sewell Anil Madhavapeddy University of Cambridge, Computer Labs Usenix Security, Washington DC, 12 August 2015 INT SSL23_GET_CLIENT_HELLO(SSL *S) { CHAR BUF_SPACE[11]; /* REQUEST THIS MANY BYTES IN INITIAL READ. * WE CAN DETECT SSL 3.0/TLS 1.0 CLIENT HELLOS * ('TYPE == 3') CORRECTLY ONLY WHEN THE FOLLOWING * IS IN A SINGLE RECORD, WHICH IS NOT GUARANTEED BY * THE PROTOCOL SPECIFICATION: * BYTE CONTENT * 0 TYPE \ * 1/2 VERSION > RECORD HEADER * 3/4 LENGTH / * 5 MSG_TYPE \ * 6-8 LENGTH > CLIENT HELLO MESSAGE Common CVE sources in 2014 Class # Memory safety 15 State-machine errors 10 Certificate validation 5 ASN.1 parsing 3 (OpenSSL, GnuTLS, SecureTransport, Secure Channel, NSS, JSSE) Root causes Error-prone languages Lack of separation Ambiguous and untestable specification nqsb approach Choice of language and idioms Separation and modular structure A precise and testable specification of TLS Reuse between specification and implementation Choice of language and idioms OCaml: a memory-safe language with expressive static type system Well contained side-effects Explicit flows of data Value-based Explicit error handling We leverage it for abstraction and automated resource management. Formal approaches Either reason about a simplified model of the protocol; or reason about small parts of OpenSSL. In contrast, we are engineering a deployable implementation. nqsb-tls A TLS stack, developed from scratch, with dual goals: Executable specification Usable TLS implementation Structure nqsb-TLS ML module layout Core Is purely functional: VAL HANDLE_TLS : STATE -> BUFFER -> [ `OK OF STATE * BUFFER OPTION * BUFFER OPTION | `FAIL OF FAILURE ] Core OCaml helps to enforce state-machine invariants.
    [Show full text]
  • Arxiv:1911.09312V2 [Cs.CR] 12 Dec 2019
    Revisiting and Evaluating Software Side-channel Vulnerabilities and Countermeasures in Cryptographic Applications Tianwei Zhang Jun Jiang Yinqian Zhang Nanyang Technological University Two Sigma Investments, LP The Ohio State University [email protected] [email protected] [email protected] Abstract—We systematize software side-channel attacks with three questions: (1) What are the common and distinct a focus on vulnerabilities and countermeasures in the cryp- features of various vulnerabilities? (2) What are common tographic implementations. Particularly, we survey past re- mitigation strategies? (3) What is the status quo of cryp- search literature to categorize vulnerable implementations, tographic applications regarding side-channel vulnerabili- and identify common strategies to eliminate them. We then ties? Past work only surveyed attack techniques and media evaluate popular libraries and applications, quantitatively [20–31], without offering unified summaries for software measuring and comparing the vulnerability severity, re- vulnerabilities and countermeasures that are more useful. sponse time and coverage. Based on these characterizations This paper provides a comprehensive characterization and evaluations, we offer some insights for side-channel of side-channel vulnerabilities and countermeasures, as researchers, cryptographic software developers and users. well as evaluations of cryptographic applications related We hope our study can inspire the side-channel research to side-channel attacks. We present this study in three di- community to discover new vulnerabilities, and more im- rections. (1) Systematization of literature: we characterize portantly, to fortify applications against them. the vulnerabilities from past work with regard to the im- plementations; for each vulnerability, we describe the root cause and the technique required to launch a successful 1.
    [Show full text]
  • A Technical Comparison of Ipsec and SSL
    A Technical Comparison of IPSec and SSL y Ab delNasir Alshamsi Takamichi Saito Tokyo University of Technology Abstract p osed but the most famous secure and widely de ployed are IPSec IP Security and SSL Secure So cket Layer IPSec IP Security and SSL SecureSocket Layer In this pap er we will provide a technical comparison have been the most robust and most potential tools of IPSec and SSL the similarities and the dierences available for securing communications over the Inter of the cryptographic prop erties The results of per net Both IPSec and SSL have advantages and short formance are based on comparing FreeSWAN as comings Yet no paper has been found comparing the IPSec and Stunnel as SSL two protocols in terms of characteristic and functional ity Our objective is to present an analysis of security and performancepr operties for IPSec and SSL IPSec IPSec is an IP layer proto col that enables the Intro duction sending and receiving of cryptographically protected packets of any kind TCPUDPICMPetc without any provides two kinds of crypto mo dication IPSec Securing data over the network is hard and compli graphic services Based on necessity IPSec can provide cated issue while the threat of data mo dication and condentiality and authenticity or it can provide data interruption is rising The goal of network security authenticity only is to provide condentiality integrity and authenticity Condentiality is keeping the data secret from the ESP Encapsulated SecurityPayload unintended listeners on the network Integrity is en suring
    [Show full text]
  • Secure Channels Secure Channels • Example Applications – PGP: Pretty Good Privacy CS 161/194-1 – TLS: Transport Layer Security Anthony D
    Main Points • Applying last week’s lectures in practice • Creating Secure Channels Secure Channels • Example Applications – PGP: Pretty Good Privacy CS 161/194-1 – TLS: Transport Layer Security Anthony D. Joseph – VPN: Virtual Private Network September 26, 2005 September 26, 2005 CS161 Fall 2005 2 Joseph/Tygar/Vazirani/Wagner What is a Secure Channel? Plaintext Plaintext Creating Secure Channels Encryption / Internet Encryption / • Authentication and Data Integrity Decryption Decryption Ciphertext and MAC – Use Public Key Infrastructure or third-party server to authenticate each end to the other • A stream with these security requirements: – Add Message Authentication Code for – Authentication integrity • Ensures sender and receiver are who they claim to be – Confidentiality • Confidentiality • Ensures that data is read only by authorized users – Data integrity – Exchange session key for encrypt/decrypt ops • Ensures that data is not changed from source to destination • Bulk data transfer – Non-repudiation (not discussed today) • Ensures that sender can’t deny message and rcvr can’t deny msg • Key Distribution and Segmentation September 26, 2005 CS161 Fall 2005 3 September 26, 2005 CS161 Fall 2005 4 Joseph/Tygar/Vazirani/Wagner Joseph/Tygar/Vazirani/Wagner Symmetric Key-based Symmetric Key-based Secure Channel Secure Channel Alice Bob • Sender (A) and receiver (B) share secret keys KABencrypt KABencrypt – One key for A è B confidentiality KABauth KABauth – One for A è B authentication/integrity Message MAC Compare? Message – Each message
    [Show full text]
  • Plaintext-Recovery Attacks Against Datagram TLS
    Plaintext-Recovery Attacks Against Datagram TLS Nadhem J. AlFardan and Kenneth G. Paterson∗ Information Security Group Royal Holloway, University of London, Egham, Surrey TW20 0EX, UK fNadhem.Alfardan.2009, [email protected] Abstract GnuTLS2. Both of these provide source toolkits that imple- ment TLS and DTLS as well as being general purpose cryp- The Datagram Transport Layer Security (DTLS) proto- tographic libraries that software developers can use. The col provides confidentiality and integrity of data exchanged first release of OpenSSL to implement DTLS was 0.9.8. between a client and a server. We describe an efficient and Since its release, DTLS has become a mainstream proto- full plaintext recovery attack against the OpenSSL imple- col in OpenSSL. There are also a number of commercial mentation of DTLS, and a partial plaintext recovery attack products that have taken advantage of DTLS. For example, against the GnuTLS implementation of DTLS. The attack DTLS is used to secure Virtual Private Networks (VPNs)3;4 against the OpenSSL implementation is a variant of Vaude- and wireless traffic5. Platforms such as Microsoft Windows, nay’s padding oracle attack and exploits small timing differ- Microsoft .NET and Linux can also make use of DTLS6. ences arising during the cryptographic processing of DTLS In addition, the number of RFC documents that are be- packets. It would have been prevented if the OpenSSL im- ing published on DTLS is increasing. Recent examples in- plementation had been in accordance with the DTLS RFC. clude RFC 5415 [1], RFC 5953 [8] and RFC 6012 [13]. A In contrast, the GnuTLS implementation does follow the new version of DTLS is currently under development in the DTLS RFC closely, but is still vulnerable to attack.
    [Show full text]
  • Prying Open Pandora's Box: KCI Attacks Against
    Prying open Pandora’s box: KCI attacks against TLS Clemens Hlauschek, Markus Gruber, Florian Fankhauser, Christian Schanes RISE – Research Industrial Systems Engineering GmbH {clemens.hlauschek, markus.gruber, florian.fankhauser, christian.schanes}@rise-world.com Abstract and implementations of the protocol: their utility is ex- tremely limited, their raison d’ˆetre is practically nil, and Protection of Internet communication is becoming more the existence of these insecure key agreement options common in many products, as the demand for privacy only adds to the arsenal of attack vectors against cryp- in an age of state-level adversaries and crime syndi- tographically secured communication on the Internet. cates is steadily increasing. The industry standard for doing this is TLS. The TLS protocol supports a multi- 1 Introduction tude of key agreement and authentication options which provide various different security guarantees. Recent at- The TLS protocol [1, 2, 3] is probably the most tacks showed that this plethora of cryptographic options widely used cryptographic protocol on the Internet. in TLS (including long forgotten government backdoors, It is designed to secure the communication between which have been cunningly inserted via export restric- client/server applications against eavesdropping, tamper- tion laws) is a Pandora’s box, waiting to be pried open by ing, and message forgery, and it also provides additional, heinous computer whizzes. Novel attacks lay hidden in optional security properties such as client authentica- plainsight. Parts of TLS areso oldthat theirfoul smell of tion. TLS is an historically grown giant: its predecessor, rot cannot be easily distinguished from the flowery smell SSL [4,5], was developed more than 20 years ago.
    [Show full text]
  • Plaintext-Recovery Attacks Against Datagram TLS
    Plaintext-Recovery Attacks Against Datagram TLS Nadhem J. AlFardan and Kenneth G. Paterson∗ Information Security Group Royal Holloway, University of London, Egham, Surrey TW20 0EX, UK nadhem.alfardan.2009, kenny.paterson @rhul.ac.uk { } Abstract GnuTLS2. Both of these provide source toolkits that imple- ment TLS and DTLS as well as being general purpose cryp- The Datagram Transport Layer Security (DTLS) proto- tographic libraries that software developers can use. The col provides confidentiality and integrity of data exchanged first release of OpenSSL to implement DTLS was 0.9.8. between a client and a server. We describe an efficient and Since its release, DTLS has become a mainstream proto- full plaintext recovery attack against the OpenSSL imple- col in OpenSSL. There are also a number of commercial mentation of DTLS, and a partial plaintext recovery attack products that have taken advantage of DTLS. For example, against the GnuTLS implementation of DTLS. The attack DTLS is used to secure Virtual Private Networks (VPNs)3,4 against the OpenSSL implementation is a variant of Vaude- and wireless traffic5. Platforms such as Microsoft Windows, nay’s padding oracle attack and exploits small timing differ- Microsoft .NET and Linux can also make use of DTLS6. ences arising during the cryptographic processing of DTLS In addition, the number of RFC documents that are be- packets. It would have been prevented if the OpenSSL im- ing published on DTLS is increasing. Recent examples in- plementation had been in accordance with the DTLS RFC. clude RFC 5415 [1], RFC 5953 [8] and RFC 6012 [13]. A In contrast, the GnuTLS implementation does follow the new version of DTLS is currently under development in the DTLS RFC closely, but is still vulnerable to attack.
    [Show full text]
  • Download CVS 1.11.1P1-3 From: Ftp://Ftp.Software.Ibm.Com/Aix/Freesoftware/Aixtoolbox/RPMS/Ppc/Cvs/ Cvs-1.11.1P1-3.Aix4.3.Ppc.Rpm
    2003 CERT Advisories CERT Division [DISTRIBUTION STATEMENT A] Approved for public release and unlimited distribution. http://www.sei.cmu.edu REV-03.18.2016.0 Copyright 2017 Carnegie Mellon University. All Rights Reserved. This material is based upon work funded and supported by the Department of Defense under Contract No. FA8702-15-D-0002 with Carnegie Mellon University for the operation of the Software Engineering Institute, a federally funded research and development center. The view, opinions, and/or findings contained in this material are those of the author(s) and should not be con- strued as an official Government position, policy, or decision, unless designated by other documentation. References herein to any specific commercial product, process, or service by trade name, trade mark, manu- facturer, or otherwise, does not necessarily constitute or imply its endorsement, recommendation, or favoring by Carnegie Mellon University or its Software Engineering Institute. This report was prepared for the SEI Administrative Agent AFLCMC/AZS 5 Eglin Street Hanscom AFB, MA 01731-2100 NO WARRANTY. THIS CARNEGIE MELLON UNIVERSITY AND SOFTWARE ENGINEERING INSTITUTE MATERIAL IS FURNISHED ON AN "AS-IS" BASIS. CARNEGIE MELLON UNIVERSITY MAKES NO WARRANTIES OF ANY KIND, EITHER EXPRESSED OR IMPLIED, AS TO ANY MATTER INCLUDING, BUT NOT LIMITED TO, WARRANTY OF FITNESS FOR PURPOSE OR MERCHANTABILITY, EXCLUSIVITY, OR RESULTS OBTAINED FROM USE OF THE MATERIAL. CARNEGIE MELLON UNIVERSITY DOES NOT MAKE ANY WARRANTY OF ANY KIND WITH RESPECT TO FREEDOM FROM PATENT, TRADEMARK, OR COPYRIGHT INFRINGEMENT. [DISTRIBUTION STATEMENT A] This material has been approved for public release and unlimited distribu- tion. Please see Copyright notice for non-US Government use and distribution.
    [Show full text]
  • Applications of Quantum Key Distribution to Security Protocols
    POLITECNICO DI TORINO Master degree course in Computer Engineering Master degree thesis Applications of Quantum Key Distribution to security protocols Supervisors prof. Antonio Lioy dott. Ignazio Pedone Candidate Orazio Lucio Terranova July 2021 A Martina Alla mia famiglia Agli amici vicini e lontani Contents 1 Introduction 7 2 Quantum computing and QKD 9 2.1 Quantum computing threat...............................9 2.2 Quantum information..................................9 2.3 Quantum computing use cases............................. 10 2.4 Quantum and post-quantum cryptography....................... 11 2.4.1 Post-quantum cryptography........................... 11 2.4.2 Quantum cryptography............................. 12 2.5 QKD theoretical and implementation security..................... 13 2.5.1 Attacks exploiting QKD implementation vulnerabilities........... 14 2.6 QKD use cases...................................... 15 3 IKE Protocol 17 3.1 Introduction........................................ 17 3.2 Protocol overview..................................... 17 3.2.1 IKE SA INIT................................... 18 3.2.2 IKE AUTH.................................... 22 3.2.3 CREATE CHILD SA.............................. 25 3.2.4 INFORMATIONAL............................... 25 3.3 Protocol variations.................................... 28 3.3.1 EAP within IKE................................. 28 3.3.2 NAT Traversal.................................. 28 3.3.3 Error handling.................................. 28 3.4 Usage scenarios.....................................
    [Show full text]
  • How to Get SSL Into Apache?
    How to get SSL into Apache? Tutorial at Open Source Convent 99/08/22 Holger Reif What is SSL? • SSL = Secure Socket Layer • Socket == concept of Unix network API • Means for securing The Web? • Means for securing _any_ connection oriented communication • Most often used to secure HTTP (transport protocol for the web) • Other Protocols use SSL as well (NNTP, POP3, IMAP, ...) Open Source Software Convention Tutorial How to get SSL into Apache? Holger Reif <[email protected]> 2/80 Properties • authenticates server • optionally authenticate client • protect confidentiality (privacy) • protect integrity (reliability) • end-2-end security for communication Open Source Software Convention Tutorial How to get SSL into Apache? Holger Reif <[email protected]> 3/80 Typical Applications that use SSL • e-commerce - ordering ⇒ protect form input sent to server ⇒ sensitive personal data? • payment ⇒ protect credit card information ⇒ SET is different • secure web-based intranet access ⇒ secure transmission of confidential content Open Source Software Convention Tutorial How to get SSL into Apache? Holger Reif <[email protected]> 4/80 What can SSL do for you? • protect data transmitted to and from your server • reduce some spoofing attacks • provide reliable authentication • show your security and privacy awareness Open Source Software Convention Tutorial How to get SSL into Apache? Holger Reif <[email protected]> 5/80 What can SSL not do for you? • protect your server from being hacked • protect data on your server from being stolen • provide non-repudiation
    [Show full text]
  • Administrator Guide
    PRODUCT DOCUMENTATION Pivotal™ Greenplum Database® Version 4.3 Administrator Guide Rev: A31 © 2017 Pivotal Software, Inc. Copyright Administrator Guide Notice Copyright Privacy Policy | Terms of Use Copyright © 2017 Pivotal Software, Inc. All rights reserved. Pivotal Software, Inc. believes the information in this publication is accurate as of its publication date. The information is subject to change without notice. THE INFORMATION IN THIS PUBLICATION IS PROVIDED "AS IS." PIVOTAL SOFTWARE, INC. ("Pivotal") MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND WITH RESPECT TO THE INFORMATION IN THIS PUBLICATION, AND SPECIFICALLY DISCLAIMS IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Use, copying, and distribution of any Pivotal software described in this publication requires an applicable software license. All trademarks used herein are the property of Pivotal or their respective owners. Revised August 2017 (4.3.16.1) 2 Contents Administrator Guide Contents Preface: About This Guide......................................................................... x About the Greenplum Database Documentation Set......................................................................... xi Document Conventions......................................................................................................................xii Text Conventions.................................................................................................................... xii Command Syntax Conventions..............................................................................................xiii
    [Show full text]
  • Applied Crypto Hardening
    DrAFT REvision: ea089c8 (2014-01-11 22:11:44 +0100) AarON Kaplan Applied Crypto HarDENING WOLFGANG BrEyha, David Durvaux, TOBIAS Dussa, L. AarON Kaplan, Florian Mendel, Christian Mock, Manuel Koschuch, Adi Kriegisch, Ulrich Pöschl, Ramin Sabet, BerG San, Ralf Schlatterbeck, Thomas Schreck, AarON Zauner, Pepi Zawodsky (University OF Vienna, CERT.be, KIT-CERT, CERT.at, A-SIT/IAIK, CORetec.at, FH Campus Wien, VRVis, MilCERT Austria, A-Trust, Runtux.com, Friedrich-AleXANDER University Erlangen-NurEMBERg, azet.org, maclemon.at) January 13, 2014 DrAFT REvision: ea089c8 (2014-01-11 22:11:44 +0100) AarON Kaplan DrAFT REvision: ea089c8 (2014-01-11 22:11:44 +0100) AarON Kaplan Do NOT TALK UNENCRYPTED Applied Crypto HarDENING • DrAFT REvision: ea089c8 (2014-01-11 22:11:44 +0100) AarON Kaplan PAGE 2 OF 81 DrAFT REvision: ea089c8 (2014-01-11 22:11:44 +0100) AarON Kaplan DrAFT REvision: ea089c8 (2014-01-11 22:11:44 +0100) AarON Kaplan AcknoWLEDGEMENTS WE WOULD LIKE TO EXPRESS OUR THANKS TO THE FOLLOWING REVIEWERS AND PEOPLE WHO HAVE GENEROUSLY OffERED THEIR TIME AND INTEREST (in ALPHABETICAL ORder): BrOwn, Scott Millauer, TOBIAS Brulebois, Cyril O’Brien, Hugh Dirksen-Thedens, Mathis Pacher, Christoph DulaunoY, AleXANDRE Palfrader, Peter Gühring Philipp Pape, TOBIAS (layout) Grigg, IAN Petukhova, Anna (Logo) Horenbeck, Maarten Pichler, Patrick Huebl, AxEL Roeckx, Kurt Kovacic, Daniel Seidl, Eva (PDF layout) Lenzhofer, Stefan Wagner, Sebastian (“SEBIX”) Lorünser, Thomas Zangerl, AleXANDER The REVIEWERS DID REVIEW PARTS OF THE DOCUMENT IN THEIR AREA OF Expertise; ALL REMAINING ERRORS IN THIS DOCUMENT ARE THE SOLE RESPONSIBILITY OF THE PRIMARY authors. Applied Crypto HarDENING • DrAFT REvision: ea089c8 (2014-01-11 22:11:44 +0100) AarON Kaplan PAGE 3 OF 81 DrAFT REvision: ea089c8 (2014-01-11 22:11:44 +0100) AarON Kaplan DrAFT REvision: ea089c8 (2014-01-11 22:11:44 +0100) AarON Kaplan AbstrACT “Unfortunately, THE COMPUTER SECURITY AND CRYPTOLOGY COMMUNITIES HAVE DRIFTED APART OVER THE LAST 25 years.
    [Show full text]