VPN implementation comparison in terms of safety

Thesis title: Porovnání implementace VPN z hlediska bezpečnosti
Author: Moláček, Jakub
Thesis type: Bakalářská práce
Supervisor: Palovský, Radomír
Opponents: Vadinský, Ondřej
Thesis language: Česky
Abstract:
VPN se dá dosáhnout použitím různých kryptografických protokolů. Ty se mohou lišit principy fungování nebo používanými kryptografickými algoritmy. Cílem práce bylo nastudovat kryptografické protokoly a porovnat je na základě nabízených bezpečnostních služeb (důvěrnost dat, integrita dat, autentizace apod.) a veřejně publikovaných bezpečnostních zranitelností a následně nabídnout doporučení pro implementaci VPN. Konkrétně se jednalo o protokoly PPTP, IPsec, L2TP, TLS 1.2 a SSHv2. PPTP by se nemělo používat kvůli absenci autentizace paketu, zranitelným autentizačním algoritmům (PAP, CHAP) a vazbě na prolomenou šifru RC4. Ostatní zmíněné protokoly lze doporučit, avšak pouze při vyhnutí se určitým konfiguracím. Konkrétně u IPsec se vyhnout protokolu AH, který neumí zaručit důvěrnost dat. Není vhodná ani jeho kombinace s ESP kvůli nižšímu výkonu a možnosti zranitelné posloupnosti MAC-then-encrypt. Tunelovací protokol L2TP nesmí být použit sám o sobě, ale pouze v kombinaci s bezpečnostním protokolem, ideálně IPsec. U protokolů TLS a SSH existují zranitelnosti vyplývající z jejich implicitních používaných posloupností, a to MAC-then-encrypt (TLS) a encrypt-and-MAC (SSH). Doporučil jsem používat posloupnost encrypt-then-MAC, kterou pro TLS jako rozšíření definuje RFC 7366 a u SSH je věcí podpory implementace (např. OpenSSH 7.3). Na rozdíl od IPsec a TLS, není v SSH doporučeno používat šifrovací CBC mód, ale upřednostnit CTR mód. IPsec, TLS a SSH se dají použít i s AEAD algoritmy, které provádějí šifrování a autentizaci paketu v jednom kroku a odpadají tak rizika zranitelností vzniklé z důvodu časového nesouladu mezi šifrováním a výpočtu hodnoty MAC. Pro výměnu klíčů je dobré použít efemerální algoritmy Diffie-Helmann (DHE, ECDHE) kvůli schopnosti zajistit Perfect Forward Secrecy. VPN postavené na IPsec, L2TP/IPsec a TLS jsem doporučil do větších prostředí kvůli podpoře uživatelských certifikátů, což platí i pro představené řešení OpenVPN. SSH VPN je pak vhodné do menších prostředí z důvodu problematické podpory certifikátů a rozšířenému používání veřejných klíčů, což zvyšuje nároky na jejich správu. Obecné doporučení pro implementace je podpora čipových karet k uložení certifikátu nebo autentizace oproti autentizačnímu serveru RADIUS.
Keywords: VPN; bezpečnost; kryptografický protokol; šifrovací algoritmus; zranitelnost; porovnání
Thesis title: VPN implementation comparison in terms of safety
Author: Moláček, Jakub
Thesis type: Bachelor thesis
Supervisor: Palovský, Radomír
Opponents: Vadinský, Ondřej
Thesis language: Česky
Abstract:
VPN is achieved using different cryptographic protocols. These may vary in functional principles or cryptographic algorithms. The aim of this bachelor thesis is to study cryptographic protocols and compare them based on offered security services and published security vulnerabilities and subsequently offer recommendations for VPN implementation. The protocols mentioned are PPTP, IPsec, L2TP, TLS 1.2 and SSHv2. PPTP should not be used due to absence of packet authentication, vulnerable authentication algorithms (PAP, CHAP) and broken RC4 cipher. The other mentioned protocols can be recommended but only when avoiding certain configurations. As for IPsec, it is needed to avoid using AH protocol only that cannot guarantee the data confidentiality. Also, its combination with ESP is not suitable due to lower performance and possibility of vulnerable MAC-then-encrypt approach. The L2TP protocol should be used only in combination with security protocol like IPsec. As for TLS and SSH, there are vulnerabilities resulting from their implicit sequencing, MAC-then-encrypt (TLS) and encrypt-and-MAC (SSH). I recommend using the encrypt-then-MAC sequence for TLS and SSH. SSH is not recommended to use with CBC encryption mode. It is recommended to use CTR mode. IPsec, TLS, and SSH can also be used with AEAD ciphers that can encrypt and authenticate the packet in one step. Diffie-Helmann ephemeral algorithms (DHE, ECDHE) are recommended for key exchange, due to their ability to provide Perfect Forward Secrecy (PFS). I recommended IPsec, L2TP/IPsec, and TLS VPN solutions to deploy in large environments due to support user certificates. SSH VPN is therefore suitable for smaller environments due to problematic certificates support and widespread use of public keys. The general recommendation is to support smart cards to store a certificate or user authentication against the RADIUS authentication server.
Keywords: cryptographic protocol; cryptographic algorithm; vulnerability; comparision; security; VPN

Information about study

Study programme: Aplikovaná informatika/Aplikovaná informatika
Type of study programme: Bakalářský studijní program
Assigned degree: Bc.
Institutions assigning academic degree: Vysoká škola ekonomická v Praze
Faculty: Faculty of Informatics and Statistics
Department: Department of Information and Knowledge Engineering

Information on submission and defense

Date of assignment: 20. 12. 2017
Date of submission: 29. 4. 2018
Date of defense: 21. 6. 2018
Identifier in the InSIS system: https://insis.vse.cz/zp/64471/podrobnosti

Files for download

    Last update: