Deep Learning-Based Automated Testing of Certificate

Total Page:16

File Type:pdf, Size:1020Kb

Deep Learning-Based Automated Testing of Certificate DRLGENCERT: Deep Learning-based Automated Testing of Certificate Verification in SSL/TLS Implementations Chao Chen∗, Wenrui DiaoyB, Yingpei Zengz, Shanqing Guo∗B, and Chengyu Hu∗ ∗Shandong University, Jinan, China Email: [email protected], fguoshanqing, [email protected] yJinan University, Guangzhou, China Email: [email protected] zChina Mobile (Hangzhou) Information Technology Co., Ltd., Hangzhou, China Email: [email protected] Abstract—The Secure Sockets Layer (SSL) and Transport ifying the validity of a certificate is a complex process that Layer Security (TLS) protocols are the foundation of network includes verifying each certificate in the certificate chain, security. The certificate verification in SSL/TLS implementations checking period of validity, public key, extension, and so forth. is vital and may become the “weak link” in the whole network ecosystem. In previous works, some research focused on the auto- There are many open source SSL/TLS implementations mated testing of certificate verification, and the main approaches available online, and developers can use these implementations rely on generating massive certificates through randomly combin- for certificate validation without implementing the code by ing parts of seed certificates for fuzzing. Although the generated themselves. However, since the certificate validation is com- certificates could meet the semantic constraints, the cost is quite heavy, and the performance is limited due to the randomness. plicated, described in many tedious documents, the authors of To fill this gap, in this paper, we propose DRLgencert, the SSL/TLS implementations may have their own understandings first framework on applying deep reinforcement learning to of how to code the logic. In other words, there is no guarantee the automated testing of certificate verification in SSL/TLS that these SSL/TLS implementations can verify each certificate implementations. DRLgencert accepts ordinary certificates as correctly, which may become the “weak link” in the whole input and outputs the newly generated certificates which could trigger discrepancies with high efficiency. Benefited by the deep network ecosystem. reinforcement learning, when generating certificates, our frame- Some researchers[9], [10] have noticed this issue and tried work could choose the best next action according to the result of to achieve the automated testing of certificate verification in a previous modification, instead of simple random combinations. SSL/TLS implementations. One of the mainstream approaches At the same time, we developed a set of new techniques to support the overall design, like new feature extraction method for X.509 is the differential testing. If multiple certificate verification certificates, fine-grained differential testing, and so forth. Also, codes give different verification results for the same certificate, we implemented a prototype of DRLgencert and carried out a it means some of the certificate verification codes may be series of real-world experiments. The results show DRLgencert flawed. In the differential testing, the effectiveness of test is quite efficient, and we obtained 84,661 discrepancy-triggering results is decided by the quality of input test cases (i.e., certificates from 181,900 certificate seeds, say around 46.5% effectiveness. Also, we evaluated six popular SSL/TLS imple- modified certificates) directly. Better test cases could discover mentations, including GnuTLS, MatrixSSL, MbedTLS, NSS, more design flaws with less time consumption. OpenSSL, and wolfSSL. DRLgencert successfully discovered 23 In previous attempts, it is common to generate massive arXiv:1808.05444v1 [cs.CR] 16 Aug 2018 serious certificate verification flaws, and most of them were previously unknown. certificates (as test cases) through randomly combining parts of seed certificates, like Frankencert [9] and Mucert [10]. I. INTRODUCTION Although the generated certificates could meet the semantic The Transport Layer Security (SSL) [?] and its predeces- constraints, the cost is quite heavy, and the performance is sor Transport Layer Security (TLS) [18] protocols are the limited due to the randomness. It may generate a large number foundation of network security. They are designed to provide of unhelpful certificates which cannot trigger any flaw. On the security and data integrity assurance for Internet commu- other side, the deep learning technology shows the powerful nications. During the SSL/TLS communication, the X.509 capability of information mining and has been widely applied certificate is used to authenticate the identity of communi- in biology, medicine, graphics, and cybersecurity, and so forth. cating party. The semantics and syntax of X.509 certificates We find the deep learning is suitable for the task of automated have many limitations, described semi-formally in dozens of testing of certificate verification. IETF’s RFCs (including RFC 2246[13], 2527[11], 2818[26], Our Approach. In this paper, we propose DRLgencert (using 4346[14], 5246[15], 5280[12], 6101[18], and 6125[27]). Ver- Deep Reinforcement Learning to generate certificates), the first framework on applying deep reinforcement learning to tbsCertificate tbsCertificate tbsCertificate the automated testing of certificate verification in SSL/TLS version version version serialNumber serialNumber serialNumber implementations. DRLgencert accepts ordinary certificates as signature signature signature 1 issuer issuer issuer input and outputs the newly generated certificates which could 2 3 Version Version Validity (Not Before/After) Validity (Not Before/After) Validity (Not Before/After) trigger discrepancies with high efficiency. Benefited by the Version subject subject subject Version Version deep reinforcement learning, when generating certificates, our subjectPublicKeyInfo subjectPublicKeyInfo subjectPublicKeyInfo issuerUniqueID issuerUniqueID issuerUniqueID framework could choose the best next action according to the subjectUniqueID subjectUniqueID subjectUniqueID result of a previous modification, instead of simple random extensions extensions extensions combinations. At the same time, we developed a set of new signatureAlgorithm signatureAlgorithm signatureAlgorithm signature signature signature techniques to support the overall design, like new feature ex- Leaf cert Intermediate CA cert Root CA certificate traction method for X.509 certificates, fine-grained differential testing module, and so forth. Fig. 1. General certificate chain structure. In our research, we implemented DRLgencert and carried out a series of real-world experiments based on six popu- lar SSL/TLS implementations, including GnuTLS [1], Ma- Environment trixSSL [3], mbedTLS [4], NSS [5], OpenSSL [6], and wolf- SSL [7]. The overall performance analysis shows DRLgencert Action is quite efficient, and we could obtain 84,661 discrepancy- Reward State triggering certificates from 181,900 certificate seeds after the first training episode of DRL network. It means more than Agent 46.5% generated certificates are effective, which is better than all existing works. Also, DRLgencert successfully discovered 23 serious certificate verification flaws on six implementations, Fig. 2. The process of reinforcement learning. and most of them were previously unknown. For example, we found GnuTLS, NSS, and OpenSSL accept version 1, 2, Roadmap. The rest of this paper is organized as follows. or 4 certificates, even these v1, v2, v4 certificates have v3 Section II gives the background of certificate validation and extensions that should only exist in version 3 certificate, which deep reinforcement learning. Section III provides the overview violates the RFC documents [12]. The reason is that the ver- design of DRLgencert. Section IV and Section V illustrate the sion testing and extension testing functions are implemented differential testing module and deep reinforcement learning as two independent components in code. We have reported all network module respectively. The evaluation results are sum- these flaws to the corresponding vendors, and the assessments marized in Section VI. Section VII reviews the related work, are in process. and finally Section VIII concludes this paper. Contributions. The main contributions of this paper are: II. BACKGROUND • New framework. We proposed DRLgencert, the first A. Certificate Validation framework on applying deep reinforcement learning to Certificate validation usually requires two inputs: trusted CA the automated testing of certificate verification in SS- certificates and a chain of certificates to be validated. The L/TLS implementations. DRLgencert accepts normal cer- general structure of a certificate chain is shown in Figure 1. tificates as input and outputs the newly generated certifi- Starting from the leaf certificate (end-entity certificate), each cates (as the test cases of differential testing) which could certificate is issued by a superior certificate until a self-signed trigger discrepancies with high efficiency. CA certificate. • New techniques. We developed a set of new techniques In the verification process, the leaf certificate in the certifi- to enable the overall design of DRLgencert, including cate chain is usually verified first to confirm that the content new feature extraction method for X.509 certificates, of the certificate is valid, including the validity period and fine-grained differential testing, and improved certificate extension content. Then the SSL/TLS client checks whether modification actions. the certificate is issued by a higher-level certificate in the • Implementation and findings.
Recommended publications
  • Treasury X.509 Certificate Policy [TREASURYCP].” It Only Addresses Where an OLT PKI’S Requirements Differ from the Requirements for Basic Assurance in [TREASURYCP]
    UNCLASSIFIED UNITED STATES DEPARTMENT OF THE TREASURY DEPARTMENT OF THE TREASURY PUBLIC KEY INFRASTRUCTURE (PKI) X.509 CERTIFICATE POLICY VERSION 3.4 April 27, 2021 PKI Policy Management Authority (PMA) DATE DANIEL W. WOOD 1 UNCLASSIFIED DOCUMENT VERSION CONTROL Version Date Author(s) Description Reason For Change Bring the Treasury PKI Policy into Department of the compliance with FPKIPA change Treasury PKI Policy in 2.0 January 2008 James Schminky proposal requiring all cross certified RFC PKI Policies to be in RFC 3647 3647 format. format. As a result of mapping the Treasury Errata changes to sections PKI Policy to Federal Policy, a 2.2.1, 2.1 March 17, 2009 James Schminky number of minor changes and 4.8, 4.912, 5.5, and omissions where identified and 7.1.3. corrected. As a result of the PMA annual Errata changes to sections review a number of minor 5.6, and 6.3.2. Change corrections, Federal Bridge proposal changes to 2.4, 2.2 March 11, 2010 James Schminky Certification Authority (FBCA) 4.2.2, 5.1, 5.1.1 5.1.2.1, Policy Change Proposal Number: 5.4.4, 5.4.5, 6.1.6, 6.5.1, 2009-02 and 2010-01, and Treasury and 6.7. Change Proposal Change proposal changes As a result of FBCA Policy Change 2.3 April 15, 2010 James Schminky to 8.1 and 8.4. Proposal Number: 2010-02. Changes Proposal As a result of FBCA Policy Change Changes to 1.3.1.8, Proposal Numbers; 2010-3 thru 8 2.4 March 22, 2011 James Schminky 3.1.1&.2, 3.1.5, 3.2.3.1, and CPCA policy Change Proposal 4.7, 6.1.5, 8.1, and 9.4.3.
    [Show full text]
  • Effective Cryptography What’S Wrong with All These Crypto Apis?
    Effective Cryptography What’s Wrong With All These Crypto APIs? Thorsten Groetker, CTO Utimaco, Inc. Utimaco IS Business Unit· Aachen, Germany · ©2015 Page 1 Outline § What I mean by Effective Cryptography § Crypto APIs § Security § Ease of Use § Runtime Performance § Predictions § CryptoScript in a Nutshell § Outlook Utimaco IS Business Unit· Aachen, Germany · ©2015 Page 2 Effective Cryptography Definition in a Nutshell Cryptography is effective if it is Li lingues es membres del sam familie. Lor separat existentie es 1. Secure unJCE/JCA myth. Por scientie, musica , sport etc, litot li sam vocabular. Li lingues differe solmen in li grammaticaOpenSSL, li pronunciation e li pluEVP commun vocabules. Omnicos directe al desirabilite de un nov lingua franca: On refusa continuar payar custosi traductores. At solmen va esser necessi 2. Efficient far uniform grammaticaPKCS#11, pronunciation e plu sommun paroles. Ma quande lingues coalesce, li grammatica del resultant lingue es plu CAPIsimplic e regulari quam ti del coalescent lingues. Li nov lingua CNG a. Time to Result franca va esser plu simplic e regulari quam li existent Bouncy linguesCastle. I b. Performance What’s wrong with all these crypto APIs? (Focused on Hardware Security Modules) Utimaco IS Business Unit· Aachen, Germany · ©2015 Page 3 Problem #1: Security PKCS#11 § Numerous key extraction attacks known § Jolyon Clulow “On the Security of PKCS#11” § Tookan project (e.g., “Attacking and Fixing PKCS#11 Security Tokens”) § CVE entries (not necessarily sporting “PKCS#11” in the text)
    [Show full text]
  • Using Frankencerts for Automated Adversarial Testing of Certificate
    Using Frankencerts for Automated Adversarial Testing of Certificate Validation in SSL/TLS Implementations Chad Brubaker ∗ y Suman Janay Baishakhi Rayz Sarfraz Khurshidy Vitaly Shmatikovy ∗Google yThe University of Texas at Austin zUniversity of California, Davis Abstract—Modern network security rests on the Secure Sock- many open-source implementations of SSL/TLS are available ets Layer (SSL) and Transport Layer Security (TLS) protocols. for developers who need to incorporate SSL/TLS into their Distributed systems, mobile and desktop applications, embedded software: OpenSSL, NSS, GnuTLS, CyaSSL, PolarSSL, Ma- devices, and all of secure Web rely on SSL/TLS for protection trixSSL, cryptlib, and several others. Several Web browsers against network attacks. This protection critically depends on include their own, proprietary implementations. whether SSL/TLS clients correctly validate X.509 certificates presented by servers during the SSL/TLS handshake protocol. In this paper, we focus on server authentication, which We design, implement, and apply the first methodology for is the only protection against man-in-the-middle and other large-scale testing of certificate validation logic in SSL/TLS server impersonation attacks, and thus essential for HTTPS implementations. Our first ingredient is “frankencerts,” synthetic and virtually any other application of SSL/TLS. Server authen- certificates that are randomly mutated from parts of real cer- tication in SSL/TLS depends entirely on a single step in the tificates and thus include unusual combinations of extensions handshake protocol. As part of its “Server Hello” message, and constraints. Our second ingredient is differential testing: if the server presents an X.509 certificate with its public key.
    [Show full text]
  • Libressl Presentatie2
    Birth of LibreSSL and its current status Frank Timmers Consutant, Snow B.V. Background What is LibreSSL • A fork of OpenSSL 1.0.1g • Being worked on extensively by a number of OpenBSD developers What is OpenSSL • OpenSSL is an open source SSL/TLS crypto library • Currently the de facto standard for many servers and clients • Used for securing http, smtp, imap and many others Alternatives • Netscape Security Services (NSS) • BoringSSL • GnuTLS What is Heartbleed • Heartbleed was a bug leaking of private data (keys) from both client and server • At this moment known as “the worst bug ever” • Heartbeat code for DTLS over UDP • So why was this also included in the TCP code? • Not the reason to create a fork Why did this happen • Nobody looked • Or at least didn’t admit they looked Why did nobody look • The code is horrible • Those who did look, quickly looked away and hoped upstream could deal with it Why was the code so horrible • Buggy re-implementations of standard libc functions like random() and malloc() • Forces all platforms to use these buggy implementations • Nested #ifdef, #ifndefs (up to 17 layers deep) through out the code • Written in “OpenSSL C”, basically their own dialect • Everything on by default Why was it so horrible? crypto_malloc • Never frees memory (Tools like Valgrind, Coverity can’t spot bugs) • Used LIFO recycling (Use after free?) • Included debug malloc by default, logging private data • Included the ability to replace malloc/free at runtime #ifdef trees • #ifdef, #elif, #else trees up to 17 layers deep • Throughout the complete source • Some of which could never be reached • Hard to see what is or not compiled in 1.
    [Show full text]
  • Hannes Tschofenig
    Securing IoT applications with Mbed TLS Hannes Tschofenig Part#2: Public Key-based authentication March 2018 © 2018 Arm Limited Munich Agenda • For Part #2 of the webinar we are moving from Pre-Shared Secrets (PSKs) to certificated-based authentication. • TLS-PSK ciphersuites have • great performance, • low overhead, • small code size. • Drawback is the shared key concept. • Public key cryptography was invented to deal with this drawback (but itself has drawbacks). 2 © 2018 Arm Limited Public Key Infrastructure and certificate configuration © 2018 Arm Limited Public Key Infrastructure Various PKI deployments in existence Structure of our PKI The client has to store: self-signed • Client certificate plus corresponding private key. CA cert • CA certificate, which serves as the trust anchor. The server has to store: Signed by CA Signed by CA • Server certificate plus corresponding private key. Client cert Server cert (Some information for authenticating the client) 4 © 2018 Arm Limited Generating certificates (using OpenSSL tools) • When generating certificates you will be prompted to enter info. You are about to be asked to enter information that will be • The CA cert will end up in the trust incorporated into your certificate request. What you are about to enter is what is called a Distinguished anchor store of the client. Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, • The Common Name used in the server If you enter '.', the field will be left blank. ----- cert needs to be resolvable via DNS Country Name (2 letter code) [AU]:.
    [Show full text]
  • Sizzle: a Standards-Based End-To-End Security Architecture for the Embedded Internet
    Sizzle: A Standards-based end-to-end Security Architecture for the Embedded Internet Vipul Gupta, Matthew Millard,∗ Stephen Fung*, Yu Zhu*, Nils Gura, Hans Eberle, Sheueling Chang Shantz Sun Microsystems Laboratories 16 Network Circle, UMPK16 160 Menlo Park, CA 94025 [email protected], [email protected], [email protected] [email protected], {nils.gura, hans.eberle, sheueling.chang}@sun.com Abstract numbers of even simpler, more constrained devices (sen- sors, home appliances, personal medical devices) get con- This paper introduces Sizzle, the first fully-implemented nected to the Internet. The term “embedded Internet” is end-to-end security architecture for highly constrained em- often used to refer to the phase in the Internet’s evolution bedded devices. According to popular perception, public- when it is invisibly and tightly woven into our daily lives. key cryptography is beyond the capabilities of such devices. Embedded devices with sensing and communication capa- We show that elliptic curve cryptography (ECC) not only bilities will enable the application of computing technolo- makes public-key cryptography feasible on these devices, it gies in settings where they are unusual today: habitat mon- allows one to create a complete secure web server stack itoring [26], medical emergency response [31], battlefield including SSL, HTTP and user application that runs effi- management and home automation. ciently within very tight resource constraints. Our small Many of these applications have security requirements. footprint HTTPS stack needs less than 4KB of RAM and For example, health information must only be made avail- interoperates with an ECC-enabled version of the Mozilla able to authorized personnel (authentication) and be pro- web browser.
    [Show full text]
  • Notices Openssl/Open SSL Project
    Notices The following notices pertain to this software license. OpenSSL/Open SSL Project This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit (http://www.openssl.org/). This product includes cryptographic software written by Eric Young ([email protected]). This product includes software written by Tim Hudson ([email protected]). License Issues The OpenSSL toolkit stays under a dual license, i.e. both the conditions of the OpenSSL License and the original SSLeay license apply to the toolkit. See below for the actual license texts. Actually both licenses are BSD-style Open Source licenses. In case of any license issues related to OpenSSL please contact [email protected]. OpenSSL License: Copyright © 1998-2007 The OpenSSL Project. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions, and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. All advertising materials mentioning features or use of this software must display the following acknowledgment: “This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit (http://www.openssl.org/)”. 4. The names “OpenSSL Toolkit” and “OpenSSL Project” must not be used to endorse or promote products derived from this software without prior written permission. For written permission, please contact [email protected].
    [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]
  • Secure Industrial Device Connectivity with Low-Overhead TLS
    Secure Industrial Device Connectivity with Low-Overhead TLS Tuesday, October 3, 2017 1:10PM-2:10PM Chris Conlon - Engineering Manager, wolfSSL - B.S. from Montana State University (Bozeman, MT) - Software engineer at wolfSSL (7 years) Contact Info: - Email: [email protected] - Twitter: @c_conlon A. – B. – C. – D. – E. F. ● ● ● ○ ● ○ ● ○ ● Original Image Encrypted using ECB mode Modes other than ECB ● ○ ● ○ ● ● ● ● ○ ● ● ● ● ○ ● ○ ○ ○ ○ ● ○ ● ● ● ● ○ ● ● ○ By Original schema: A.J. Han Vinck, University of Duisburg-EssenSVG version: Flugaal - A.J. Han Vinck, Introduction to public key cryptography, p. 16, Public Domain, https://commons.wikimedia.org/w/index.php?curid=17063048 ● ○ ● ○ ■ ■ ■ ● ○ ■ ● ● ● ● ● ○ ● ● ● ● ● ● ● ○ ○ ○ ○ ● “Progressive” is a subjective term ● These slides talk about crypto algorithms that are: ○ New, modern ○ Becoming widely accepted ○ Have been integrated into SSL/TLS with cipher suites ● ChaCha20 ● Poly1305 ● Curve25519 ● Ed25519 Created by Daniel Bernstein a research professor at the University of Illinois, Chicago Chacha20-Poly1305 AEAD used in Google over HTTPS Ed25519 and ChaCha20-Poly1305 AEAD used in Apple’s HomeKit (iOS Security) ● Fast stream cipher ● Based from Salsa20 stream cipher using a different quarter-round process giving it more diffusion ● Can be used for AEAD encryption with Poly1305 ● Was published by Bernstein in 2008 Used by ● Google Chrome ● TinySSH ● Apple HomeKit ● wolfSSL ● To provide authenticity of messages (MAC) ● Extremely fast in comparison to others ● Introduced by a presentation given from Bernstein in 2002 ● Naming scheme from using polynomial-evaluation MAC (Message Authentication Code) over a prime field Z/(2^130 - 5) Used by ● Tor ● Google Chrome ● Apple iOS ● wolfSSL Generic Montgomery curve. Reference 5 Used by ● Tera Term ● GnuPG ● wolfSSL Generic Twisted Edwards Curve.
    [Show full text]
  • Implementing PKI Services on Z/OS
    Front cover Implementing PKI Services on z/OS Installation of PKI and all of its prerequistes on z/OS An example of the PKI Exit PKI’s use of ICSF to store Master Key Chris Rayns Theo Antoff Jack Jones Patrick Kappeler Vicente Ranieri Roland Trauner ibm.com/redbooks International Technical Support Organization Implementing PKI Services on z/OS February 2004 SG24-6968-00 Note: Before using this information and the product it supports, read the information in “Notices” on page vii. First Edition (February 2004) This edition applies to z/OS Version 1, Release 3. © Copyright International Business Machines Corporation 2004. All rights reserved. Note to U.S. Government Users Restricted Rights -- Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. Contents Notices . vii Trademarks . viii Preface . ix The team that wrote this redbook. ix Become a published author . x Comments welcome. xi Chapter 1. Security Server PKI Services. 1 1.1 Overview of digital certificate. 2 1.2 The PKIX standards . 4 1.2.1 CA hierarchy . 6 1.2.2 The X.509 certificate and Certificate Revocation List . 9 1.2.3 The x.509 v3 certificate extension fields . 14 1.2.4 Certificate and CRL appearance. 17 1.3 The z/OS PKI Services . 21 1.3.1 Security Server PKI Services in z/OS . 21 1.3.2 Prerequisite products . 22 1.3.3 Requests supported by z/OS PKI Services. 23 1.3.4 Browser and server certificates. 24 1.3.5 The z/OS PKI Services architecture . 26 1.4 Security Server PKI Services enhancement in z/OS V1R4.
    [Show full text]
  • Amazon Trust Services Certificate Policy
    Certificate Policy Version 1.0.9 1 1 INTRODUCTION ................................................................................................................................................... 13 1.1 Overview ...................................................................................................................................................... 13 1.1.1 Compliance ............................................................................................................................................ 13 1.1.2 Types of Certificates .............................................................................................................................. 13 1.1.2.1 CA-Certificates .............................................................................................................................. 13 1.1.2.1.1 Missing Heading ........................................................................................................................ 14 1.1.2.1.2 Missing Heading ........................................................................................................................ 14 1.1.2.1.3 Terminus CA-Certificates .......................................................................................................... 14 1.1.2.1.4 Policy CA-Certificates ................................................................................................................ 14 1.1.2.1.5 Technically Constrained CA-Certificates ..................................................................................
    [Show full text]
  • Securing Mysql with a Focus on SSL
    Securing MySQL! With a Focus on SSL http://www.yassl.com (206) 369-4800 About Me Chris Conlon So#ware Developer at yaSSL Bozeman, MT © Copyright 2011 FishEyeGuyPhotography © Copyright 2011 yaSSL SSL Statistics Ivan Ristic: Internet SSL Survey 2010 http://www.ssllabs.com SSL Survey 2010 Valid SSL – 0.42% •" Sample of 119 Million Domain Names 0.60%, Certificate Name Matches 0.42%, Counting only valid ones Alexa Top 1M •" Alexa Top 1M Sites Use SSL – 12% 120,000 Use SSL (12%) © Copyright 2011 yaSSL Presentation Outline Part I: MySQL Security 1." Common Attacks & Vulnerabilities 2." Good Security Practices for MySQL Part II: SSL/TLS 1." Overview of SSL and TLS 2." Configuring and Building MySQL with SSL 3." MySQL SSL Command Options 4." SSL Certificate Creation 5." Performance Comparison Part III: Additional Security Concerns 1." Data Storage and Encryption Part IV: Wrap-Up 1." Licensing 2." yaSSL 3." Conclusion © Copyright 2011 yaSSL MySQL Updates Part I Account Passwords Test Databases mysqld MySQL Security Privileges © Copyright 2011 yaSSL Common Attacks and Vulnerabilities Do we really need to secure our MySQL database? YES! MySQL is Susceptible to Many Attacks: - Basic Attacks (empty password, etc.) - SQL Injection Attacks - Known MySQL Bugs and Vulnerabilities - Trojanning MySQL © Copyright 2011 yaSSL Good Security Practices for MySQL A. Keeping MySQL Version Up to Date An easy way to stay better protected: - New MySQL Patches, Bug Fixes, etc. - You should take advantage of updates © Copyright 2011 yaSSL Good Security Practices for MySQL 'MySQL' Vulnerabili1es By Year cvedetails.com (nvd.nist.gov) 16 2000 14 2001 2002 11 2003 10 2004 9 2005 8 2006 7 2007 6 6 6 2008 5 2009 3 2010 2011 © Copyright 2011 yaSSL Good Security Practices for MySQL •" yaSSL Vulnerabilities affecting MySQL in the past: CVE-2005-3731 Certificate Chain Processing CVE-2008-0227 Denial of Service (crash) CVE-2008-0226 Allowed Execution of Arbitrary Code CVE-2009-4484 Allowed Execution of Arbitrary Code, Denial of Service Possible © Copyright 2011 yaSSL Good Security Practices for MySQL B.
    [Show full text]