OpenVPN vs IKEv2 vs PPTP vs L2TP/IPSec vs SSTP – Guia Definitivo para criptografia VPN

uma rede privada Virtual (VPN) criptografa todos os dados enquanto viaja entre o seu computador e um servidor VPN. Neste guia completo de criptografia VPN, examinamos detalhadamente o que é criptografia e como ela é usada nas conexões VPN.

talvez o mais importante, explicaremos a matriz de termos de criptografia usados pelos serviços VPN. Esperamos que, depois de ler este guia, você tenha uma maior compreensão desse assunto complexo e que seja mais capaz de avaliar as reivindicações de segurança feitas pelos provedores de VPN.

preliminares

se você não tem certeza sobre o que é uma VPN e o que se pode fazer por você, confira nossas VPNs para o guia para iniciantes.

nosso objetivo é apresentar os principais recursos da criptografia VPN em termos tão simples quanto possível. Embora não haja como fugir, do fato de que a criptografia é um assunto complexo.

se mesmo o termo criptografia faz com que seus olhos comecem a envidraçar, mas você ainda quer saber o que procurar em um bom serviço VPN, você pode pular direto para resumos usando o índice.

O Que É Criptografia?

“Comece no início”, disse O Rei, muito gravemente”, e continue até chegar ao fim: então pare.”

Lewis Carroll, Alice no país das maravilhas

a analogia mais simples é que a criptografia é um bloqueio. Se você tiver a chave correta, o bloqueio é fácil de abrir. Se alguém não tiver a chave correta, mas quiser acessar o conteúdo de uma caixa forte (ou seja, seus dados) protegida por esse bloqueio, poderá tentar quebrar o bloqueio.

da mesma forma que o bloqueio que protege um cofre de banco é mais forte do que aquele que protege uma mala, alguma criptografia é mais forte do que outra criptografia.

se você quiser uma VPN com a criptografia mais forte, confira nossa lista de VPNs mais seguras para obter mais informações.

o básico

quando você era criança, você já jogou o jogo em que criou uma “mensagem secreta” substituindo uma letra da mensagem por outra? A substituição foi feita de acordo com uma fórmula escolhida por você.

você pode, por exemplo, ter substituído cada letra da mensagem original por uma três letras atrás dela no alfabeto. Se alguém soubesse o que era essa fórmula, ou fosse capaz de resolver isso, então eles seriam capazes de ler sua “mensagem secreta.”

no jargão da criptografia, o que você estava fazendo era “criptografar” a mensagem (dados) de acordo com um algoritmo matemático muito simples. Criptógrafos referem-se a esta fórmula como uma “cifra.”Para decifrá-lo, você precisa da chave. Este é um parâmetro variável que determina a saída final da cifra. Sem este parâmetro, é impossível descriptografar a cifra.

se alguém quiser ler uma mensagem criptografada, mas não tiver a chave, Tente “quebrar” a cifra. Quando a criptografia usa uma cifra simples de substituição de letras, É fácil decifrá-la. A criptografia pode ser mais segura, no entanto, tornando o algoritmo matemático (a cifra) mais complexo.

você poderia, por exemplo, substituir cada terceira letra da mensagem por um número correspondente à letra.

Comprimento Da Chave de criptografia

cifras de computador modernas são algoritmos muito complexos. Mesmo com a ajuda de supercomputadores, eles são muito difíceis de quebrar, se não impossíveis para todos os fins práticos. A maneira mais grosseira de medir a força de uma cifra é pela complexidade do algoritmo usado para criá-la.

quanto mais complexo o algoritmo, mais difícil a cifra é quebrar usando o que chamamos de ataque de Força bruta.

um ataque de Força bruta se uma forma muito primitiva de ataque for (também conhecida como uma busca exaustiva de chaves), isso basicamente envolve tentar cada combinação de números possíveis até que a chave correta seja encontrada.

os computadores executam todos os cálculos usando números binários: zeros e uns. A complexidade de uma cifra depende de seu tamanho de chave em bits-o número bruto de uns e zeros necessários para expressar seu algoritmo, onde cada zero ou um é representado por um único bit.

isso é conhecido como o comprimento da chave e também representa a viabilidade prática de realizar com sucesso um ataque de Força bruta em qualquer cifra.

o número de combinações possíveis (e, portanto, a dificuldade de forçá-las brutas) aumenta exponencialmente com o tamanho da chave. Usando a cifra AES (veja mais tarde):

tamanho da chave cominações

para colocar isso em perspectiva:

  • em 2011, o supercomputador mais rápido da palavra foi o Fujitsu K. isso era capaz de uma velocidade de pico Rmax de 10,51 petaflops. Com base nesse número, levaria Fujitsu K 1,02 x 10^18-cerca de um bilhão de bilhões (um quintilhão) – anos para quebrar uma chave AES de 128 bits (Advanced Encryption Standard) à força. Isso é mais antigo que a idade do universo (13,75 bilhões de anos).
  • o supercomputador mais poderoso do mundo agora (2017) é o Sunway TaihuLight na China. Esta Besta é capaz de uma velocidade máxima de 93,02 petaflops. Isso significa que o computador mais poderoso do mundo ainda levaria cerca de 885 quatrilhões de anos para forçar uma chave AES de 128 bits.
  • o número de operações necessárias para a força bruta uma cifra de 256 bits é 3,31 x 10^56. Isso é aproximadamente igual ao número de átomos no universo!

cifras de computador

embora o comprimento da chave de criptografia se refira à quantidade de números brutos envolvidos, as cifras são a matemática – as fórmulas ou algoritmos reais – usados para executar a criptografia. Como acabamos de ver, as cifras de computador modernas de Força bruta são extremamente impraticáveis.

são fraquezas (às vezes deliberadas) nesses algoritmos de cifra que podem levar à quebra da criptografia. Isso ocorre porque a saída da cifra (mal projetada) ainda pode revelar alguma estrutura das informações originais antes da criptografia. Isso cria um conjunto reduzido de combinações possíveis para tentar, o que, de fato, reduz o comprimento efetivo da chave.

a cifra Blowfish, por exemplo, é vulnerável a um ataque que explora a matemática por trás do problema do aniversário na teoria da probabilidade. O estudo das fraquezas em algoritmos criptográficos é conhecido como criptoanálise.

comprimentos-chave mais longos compensam essas fraquezas, pois aumentam muito o número de resultados possíveis.Em vez de atacar a própria cifra, um adversário pode atacar a própria chave. Isso pode afetar um determinado site ou determinado produto de software. Mas a segurança do algoritmo de cifra ainda está intacta, e outros sistemas que utilizam o mesmo algoritmo, mas têm uma geração segura de chaves, não são afetados pelo intervalo.

Comprimento Da Chave de cifra

quão forte é uma cifra depende tanto da matemática da própria cifra, quanto de seu comprimento de chave expresso em bits. Por esse motivo, as cifras são geralmente descritas junto com o comprimento da chave usado.

portanto, o AES-256 (a cifra AES com um comprimento de chave de 256 bits) é geralmente considerado mais forte que o AES-128. Observe que eu digo geralmente porque estamos lidando com matemática muito complexa aqui (veja minhas notas sobre AES mais tarde).

 Nota Icon2 01 150x150

é importante notar que o comprimento da chave por si só não é um bom indicador da força de uma cifra. É a combinação de comprimento da chave e cifra que importa. As cifras usadas para criptografia assimétrica, por exemplo, usam tamanhos de chave muito mais longos do que os usados para criptografia simétrica para fornecer a proteção equivalente.

comparação de tamanho de Chave

esta tabela está um pouco desatualizada, pois não leva em consideração os ataques mais recentes que foram descobertos no RSA. Também é importante notar que as variantes da curva elíptica e Diffie-Hellman da RSA são muito mais fortes do que as tradicionais. Mas espero que você tenha a ideia.

Nota Icon2 01 150X150

Uma coisa a notar é que, quanto maior o comprimento da chave, o cálculo mais envolvido, portanto, mais poder de processamento necessário. Isso afeta a velocidade com que os dados podem ser criptografados e descriptografados. Provedores de VPN e assim por diante devem, portanto, decidir a melhor forma de equilibrar segurança vs. usabilidade prática ao escolher esquemas de criptografia. Existem alguns provedores de VPN que conseguiram encontrar bem esse bom equilíbrio. Para mais informações, confira nosso guia rápido de VPNs.

discutimos as principais Cifras usadas por vários protocolos VPN um pouco mais tarde, mas as cifras mais comuns que você provavelmente encontrará São Blowfish e AES. Além disso, o RSA é usado para criptografar e descriptografar as chaves de uma cifra, e SHA-1 ou SHA-2 é usado como a função hash para autenticar dados.

criptografia AssimétricaAsymmestric criptografia

Perfect Forward Secrecy

Perfect Forward Secrecy (PFS) é também conhecido como usando efêmera chaves de criptografia, ou apenas Forward Secrecy (FS) por aqueles que se sentem desconfortáveis com o uso da palavra “perfeito.”

a maioria das comunicações online seguras modernas depende de SSL / TLS. É usado por sites HTTPS e pelo protocolo OpenVPN. TLS (Transport Layer Security) é um protocolo de criptografia assimétrica. Usar uma cifra assimétrica significa que os dados são protegidos usando uma chave pública, que é disponibilizada a todos. Ele só pode ser descriptografado, no entanto, por um destinatário pretendido que detém a chave privada correta.

esta chave privada deve ser mantida em segredo. Se for roubado ou rachado por um adversário, então esse adversário pode facilmente interceptar e ler quaisquer comunicações protegidas por ele.

infelizmente, é comum que servidores ou mesmo empresas inteiras usem apenas uma chave de criptografia privada para proteger todas as comunicações. Por quê? Porque é fácil. No entanto, se essa chave for comprometida, um invasor poderá acessar todas as comunicações criptografadas com ela.

esta chave de criptografia privada, portanto, torna-se uma” chave mestra ” que pode ser usada para desbloquear todas as comunicações com um servidor ou empresa. A NSA é conhecida por ter explorado essa fraqueza, a fim de coletar vastas resmas de dados supostamente seguros.

a solução é o segredo perfeito para a frente. Este é um sistema pelo qual uma nova e única chave de criptografia privada é gerada para cada sessão. É uma ideia simples, mesmo que a matemática de troca Diffie-Hellman seja complexa. Isso significa que cada sessão TLS tem seu próprio conjunto de chaves. Daí o termo “chaves efêmeras” – elas são usadas uma vez e depois desaparecem.

não há, portanto, nenhuma “chave mestra” que possa ser explorada. Mesmo que uma sessão seja comprometida, é apenas essa sessão que é comprometida – nem todas as outras sessões que alguém tem com esse servidor ou empresa!

Embora incomum, é até possível atualizar as teclas PFS dentro de uma sessão (por exemplo, a cada hora). Isso limita ainda mais a quantidade de dados que podem ser interceptados por um adversário, mesmo que uma chave privada seja comprometida.

quando escrevi este artigo sobre o assunto há alguns anos, o uso de sigilo avançado perfeito para sites HTTPS e conexões OpenVPN era lamentavelmente raro. Felizmente, essa situação mudou um pouco. Embora de forma alguma universal, o uso de chaves efêmeras aumentou muito tarde.

protocolos de criptografia VPN

um protocolo VPN é o conjunto de instruções (mecanismo) usado para negociar uma conexão criptografada segura entre dois computadores. Vários desses protocolos VPN são comumente suportados por serviços VPN comerciais. Os mais notáveis deles são PPTP, L2TP/IPSec, OpenVPN, SSTP e IKEv2.

eu olho para cada um deles abaixo, mas o OpenVPN agora é o protocolo VPN padrão do setor usado por serviços VPN comerciais – por um bom motivo. É muito seguro e pode ser usado em quase todos os dispositivos compatíveis com VPN. Portanto, gastarei tinta digital adicional discutindo o OpenVPN em detalhes.

PPTP

VANTAGENS

  • Cliente construída em apenas cerca de todas as plataformas
  • Muito fácil de configurar

CONTRAS

  • Muito inseguro
  • Definitivamente comprometida pela ANS
  • Facilmente bloqueado

o Que é PPTP?

é apenas um protocolo VPN e depende de vários métodos de autenticação para fornecer segurança. Entre os provedores de VPN comerciais, isso é quase invariavelmente MS-CHAP v2. O protocolo de criptografia (semelhante a uma cifra padrão) usado pelo PPTP é a criptografia ponto a ponto da Microsoft (MPPE).

Point-to-Point Tunneling Protocol (PPTP) foi desenvolvido por um consórcio fundado pela Microsoft para criar VPN em redes dial-up. Como tal, o PPTP tem sido o protocolo padrão para redes VPN corporativas.

PPTP está disponível como padrão em praticamente todas as plataformas e dispositivos compatíveis com VPN. É fácil de configurar, sem a necessidade de instalar software adicional. Isso garante que o PPTP continue sendo uma escolha popular tanto para VPNs comerciais quanto para serviços VPN comerciais.

ele também tem a vantagem de exigir uma baixa sobrecarga computacional para implementar… então é rápido!

Infelizmente, o PPTP não é seguro. De todo. Embora agora geralmente seja encontrado apenas usando chaves de criptografia de 128 bits, nos anos desde que foi empacotado com o Windows 95 OSR2 em 1999, várias vulnerabilidades de segurança vieram à tona.

o mais sério deles é a possibilidade de autenticação MS-CHAP v2 não encapsulada. Usando esse exploit, o PPTP foi quebrado em dois dias. A Microsoft corrigiu a falha, mas emitiu uma recomendação para usar L2TP/IPsec ou SSTP.

não deve ser surpresa que a NSA quase certamente descriptografe as comunicações criptografadas PPTP como padrão. Ainda mais preocupante é que a NSA coletou grandes quantidades de dados mais antigos que foram criptografados quando o PPTP foi considerado seguro. Ele quase certamente pode descriptografar esses dados legados também.

PPTP requer a porta TCP 1723 e o protocolo GRE. É fácil firewall GRE, o que facilita o bloqueio de conexões PPTP.

L2TP/IPsec

VANTAGENS

  • Geralmente considerado seguro
  • Fácil de configurar
  • Disponível em todas as plataformas modernas
  • mais Rápido do que o OpenVPN (talvez)

CONTRAS

  • Pode ser comprometida pela NSA (não comprovada)
  • Provavelmente deliberadamente enfraquecido pela NSA (não comprovada)
  • Pode lutar com restritivas de firewalls
  • muitas Vezes implementadas mal

o Que é o L2TP e IPsec?

Layer 2 Tunneling Protocol (L2TP) é integrado a quase todos os sistemas operacionais modernos e dispositivos compatíveis com VPN. Portanto, é tão fácil e rápido de configurar quanto o PPTP.

por si só, o L2TP não fornece criptografia ou confidencialidade ao tráfego que passa por ele, portanto, geralmente é implementado com o pacote de autenticação IPsec (L2TP/IPsec). Mesmo que um provedor se refira apenas a L2TP ou IPsec( como alguns fazem), quase certamente significa L2TP/IPSec.

L2TP / IPsec pode usar as cifras 3DES ou AES. O 3DES é vulnerável a ataques de colisão Meet-in-the-middle e Sweet32, portanto, na prática, é improvável que você o encontre hoje em dia.

problemas podem surgir porque o protocolo L2TP / IPSec usa apenas um número limitado de portas. Isso pode causar complicações quando usado atrás de firewalls NAT. Essa dependência de portas fixas também torna o protocolo bastante fácil de bloquear.

L2TP / IPsec encapsula dados duas vezes, o que retarda as coisas. Isso é compensado pelo fato de que a criptografia/descriptografia ocorre no kernel e L2TP/IPsec permite multi-threading. OpenVPN não. O resultado é que o L2TP/IPsec é teoricamente mais rápido que o OpenVPN.

L2TP/IPsec usando a cifra AES não tem grandes vulnerabilidades conhecidas, e se implementado corretamente ainda pode ser Seguro. No entanto, as revelações de Edward Snowden sugeriram fortemente que o padrão fosse comprometido pela NSA.John Gilmore é um especialista em segurança e membro fundador da Electronic Frontier Foundation. Ele explica, é provável que o IPSec tenha sido deliberadamente enfraquecido durante sua fase de projeto.

um problema indiscutivelmente muito maior é que muitos serviços VPN implementam L2TP/IPsec mal. Especificamente, eles usam chaves pré-compartilhadas (PSKs) que podem ser baixadas livremente de seus sites.

esses PSKs são usados apenas para autenticar a conexão, portanto, mesmo que comprometidos, os dados permanecem criptografados com segurança usando AES. Um invasor pode, no entanto, usar a chave pré-compartilhada para se passar por um servidor VPN. Ele pode então espionar o tráfego criptografado ou até mesmo injetar dados maliciosos na conexão.

 Nota Icon2 01 150x150

resumo

apesar de algumas questões amplamente teóricas, o L2TP/IPsec é geralmente considerado seguro se as chaves pré-compartilhadas publicadas abertamente não forem usadas. Sua compatibilidade embutida com muitos dispositivos pode torná-lo uma escolha muito boa.

SSTP

VANTAGENS

  • Muito segura
  • Completamente integrado no Windows
  • suporte da Microsoft
  • Pode ignorar a maioria dos firewalls

CONTRAS

  • padrão Proprietária de propriedade da Microsoft

o Que é SSTP?

SSTP é um tipo de criptografia que usa SSL 3.0 e oferece vantagens semelhantes ao OpenVPN. Isso inclui a capacidade de usar a porta TCP 443 para evitar a censura. A forte integração com o Windows pode torná-lo mais fácil de usar e mais estável do que o OpenVPN nessa plataforma.

ao contrário do OpenVPN, no entanto, o SSTP é um padrão proprietário de propriedade da Microsoft. Isso significa que o código não está aberto ao escrutínio público. A história da Microsoft de cooperar com a NSA e especulações sobre possíveis backdoors integrados ao Sistema Operacional Windows não inspiram confiança no padrão.

Secure Socket Tunneling Protocol (SSTP) foi introduzido pela Microsoft no Windows Vista SP1. Embora agora esteja disponível para VPNs Linux e até mesmo para Mac OS X, ainda é principalmente uma plataforma apenas para Windows.

outro problema é que o SSL v3.0 é vulnerável ao que é conhecido como ataque POODLE e agora, portanto, não é recomendado. Se esse problema também afeta o SSTP não está claro, mas, novamente, dificilmente inspira confiança.

Note Icon2 01 150x150

resumo

no papel, o SSTP oferece muitas das vantagens do OpenVPN. Ser um padrão proprietário da Microsoft, no entanto, prejudica sua credibilidade.

IKEv2

VANTAGENS

  • Fast
  • Estável – especialmente quando se muda de rede ou reconectar após uma perda de conexão com a internet
  • Seguro (se o AES é usado)
  • Fácil de configurar (pelo menos no usuário final!)
  • Protocolo é suportado em dispositivos Blackberry

CONTRAS

  • Não é suportada em muitas plataformas
  • Implementação de IKEv2 no server-end é complicado, que é algo que poderia potencialmente resultar em problemas de desenvolvimento
  • Apenas confiar em implementações de código aberto

o Que é IKEv2?

Internet Key Exchange versão 2 (IKEv2) foi desenvolvido em conjunto pela Microsoft e Cisco. É suportado nativamente por dispositivos Windows 7+, Blackberry e iOS. É por isso que muitos serviços de VPN iOS usam IKEv2 em vez de OpenVPN.

versões compatíveis desenvolvidas independentemente do IKEv2 foram desenvolvidas para Linux e outros sistemas operacionais. Muitas dessas iterações são de código aberto. Como sempre, sugiro ter cuidado com qualquer coisa desenvolvida pela Microsoft. As versões de código aberto do IKEv2, no entanto, não devem ter problemas.

IKEv2 faz parte do conjunto de protocolos IPsec. Ele garante que o tráfego seja seguro entregando o atributo SA (Associação de segurança) no IPsec e aprimora o IKEv1 de várias maneiras. IKEv2 é, portanto, às vezes referido como IKEv2/IPsec. IKEv1, por outro lado, é muitas vezes referido simplesmente como IPsec.

apelidado VPN Connect pela Microsoft, IKEv2 é particularmente bom em Restabelecer automaticamente uma conexão VPN quando os usuários perdem temporariamente suas conexões de internet. Por exemplo, ao entrar ou sair de um túnel de trem.

devido ao seu suporte para o protocolo Mobility and Multihoming (MOBIKE), o IKEv2 também é altamente resiliente à mudança de redes. Isso torna o IKEv2 uma ótima opção para usuários de telefones celulares que alternam regularmente entre WiFi doméstico e conexões móveis, ou que se movem regularmente entre hotspots.

IKEv2 não é tão comum quanto L2TP/IPSec, pois é suportado em muito menos plataformas (embora esta situação esteja mudando rapidamente). É, no entanto, considerado pelo menos tão bom quanto, se não superior a, L2TP/IPsec em termos de segurança, desempenho (velocidade), estabilidade e capacidade de estabelecer (e restabelecer) uma conexão.

OpenVPN

VANTAGENS

  • Muito seguro (se essa opção é usada)
  • Altamente configurável
  • Open-source
  • Pode contornar firewalls
  • Necessidades de software de terceiros

o Que é o OpenVPN?O OpenVPN é uma tecnologia de código aberto que usa a biblioteca OpenSSL e os protocolos TLS, juntamente com um amálgama de outras tecnologias, para fornecer uma solução VPN forte e confiável. Agora é o protocolo VPN padrão do setor usado por serviços VPN comerciais – por um bom motivo.

um dos principais pontos fortes do OpenVPN é que ele é altamente configurável. É nativamente suportado por nenhuma plataforma, mas está disponível na maioria das plataformas por meio de software de terceiros. Clientes e aplicativos OpenVPN personalizados geralmente estão disponíveis em provedores VPN individuais, mas o código-fonte aberto principal é desenvolvido pelo projeto OpenVPN.

muitos desenvolvedores e colaboradores do projeto OpenVPN também trabalham para a OpenVPN Technologies Inc., que supervisiona o projeto.

o OpenVPN funciona melhor em uma porta UDP, mas pode ser configurado para ser executado em qualquer porta (veja as notas mais tarde). Isso inclui a porta TCP 443, que é usada pelo tráfego HTTPS regular. A execução do OpenVPN na porta TCP 443 torna difícil distinguir as conexões VPN do tipo de conexões seguras usadas por bancos, serviços de E-mail e varejistas on-line. Isso torna o OpenVPN muito difícil de bloquear.

outra vantagem do OpenVPN é que a biblioteca OpenSSL usada para fornecer criptografia suporta várias Cifras. Na prática, no entanto, apenas Blowfish e AES são comumente usados por serviços VPN comerciais. Eu discuto isso abaixo.

à luz das informações obtidas de Edward Snowden, parece que, enquanto o sigilo perfeito for usado, o OpenVPN não foi comprometido ou enfraquecido pela NSA.

uma recente auditoria crowdsourced do OpenVPN está agora concluída, assim como outra financiada pelo acesso privado à Internet. Nenhuma vulnerabilidade séria que afeta a privacidade dos usuários foi descoberta. Algumas vulnerabilidades foram descobertas que tornaram os servidores OpenVPN potencialmente abertos a um ataque de negação de Serviço (DoS), mas estes foram corrigidos no OpenVPN 2.4.2.

OpenVPN é geralmente considerado como o protocolo VPN mais seguro disponível e é amplamente suportado em todo o setor de VPN. Portanto, discutirei a criptografia OpenVPN em detalhes abaixo.

criptografia OpenVPN

a criptografia OpenVPN compreende duas partes-criptografia de canal de dados e criptografia de canal de controle. A criptografia do canal de dados é usada para proteger seus dados. A criptografia do canal de controle protege a conexão entre seu computador e o servidor VPN.

qualquer defesa é tão forte quanto seu ponto mais fraco, por isso é lamentável que alguns provedores de VPN usem uma criptografia muito mais forte em um canal do que o outro (geralmente mais forte no canal de controle).

não é incomum, por exemplo, ver um serviço VPN anunciado como usando uma cifra AES-256 com criptografia de handshake RSA-4096 e autenticação de hash SHA-512. Isso soa muito impressionante até que você perceba que se refere apenas à criptografia do canal de controle e não ao canal de dados, que é criptografado com meros Blowfish-128 com autenticação hash SHA1. Isso é feito apenas por razões de marketing.

se criptografia diferente for usada nos canais de dados e controle, a verdadeira força da conexão OpenVPN é medida pelo conjunto de criptografia mais fraco usado.

para máxima segurança, tanto os dados quanto a criptografia do canal de controle devem ser o mais fortes possível. No entanto, quanto mais forte a criptografia usada, mais lenta será a conexão, e é por isso que alguns provedores exploram a criptografia do canal de dados.A criptografia do canal de controle também é chamada de criptografia TLS porque o TLS é a tecnologia usada para negociar com segurança a conexão entre seu computador e o servidor VPN. Esta é a mesma tecnologia usada pelo seu navegador para negociar com segurança uma conexão com um site criptografado por HTTPS.

  • a criptografia do canal de controle consiste em uma cifra, criptografia de handshake e autenticação hash.
  • a criptografia do canal de dados consiste em uma autenticação de cifra e hash.

os provedores de VPN costumam usar o mesmo nível de criptografia para canais de controle e dados. Em nossas análises e tabelas de “semáforos”, apenas as listamos separadamente se forem usados valores diferentes para cada canal.

se afirmarmos que um provedor usa uma cifra AES-256, isso significa que uma cifra AES-256 é usada para os canais de controle e dados.*

(*este deve ser o caso, pelo menos. Algumas revisões legadas não atendem às nossas diretrizes atuais, mas devem ser eliminadas a tempo).

Cifras

o OpenVPN pode usar várias cifras de chave simétrica para proteger dados em canais de controle e dados. Na prática, os únicos usados pelos provedores de VPN comerciais são Blowfish, AES e (muito raramente) Camellia.

Blowfish

Blowfish – 128 é a cifra padrão usada pelo OpenVPN. Os tamanhos-chave podem, em teoria, variar de 32 bits a 448 bits, mas Blowfish-128 é a única versão que você provavelmente encontrará na natureza.

Blowfish é frequentemente considerado seguro o suficiente para fins casuais, mas tem fraquezas conhecidas. Foi criado pelo renomado criptógrafo Bruce Schneier, que em 2007 disse: “neste momento, porém, estou surpreso que ainda esteja sendo usado.”

em nossa opinião, o uso do Blowfish-128 é aceitável como uma segunda linha de defesa no canal de dados OpenVPN. Não deve, no entanto, ser considerado seguro quando usado no canal de controle.

AES

AES tornou-se a cifra de chave simétrica “padrão ouro” da indústria de VPN. AES é certificada pelo NIST e é quase universalmente considerada muito segura. O AES-256 é usado pelo governo dos EUA para proteger dados “seguros”.

o fato de ter um tamanho de bloco de 128 bits em vez do tamanho de bloco de 64 bits do Blowfish também significa que ele pode lidar com arquivos maiores (mais de 4 GB) melhor do que o Blowfish. Além disso, o conjunto de instruções AES se beneficia da aceleração de hardware integrada na maioria das plataformas.

AES está geralmente disponível em tamanhos de chave de 128 bits e 256 bits (AES de 192 bits também existe). O AES-128 permanece seguro até onde alguém sabe. Dado o que agora sabemos sobre a extensão do ataque da NSA aos padrões de criptografia, no entanto, a maioria dos especialistas concorda que o AES-256 fornece uma margem de segurança mais alta.

apenas para garantir que ninguém nunca ache esse assunto muito fácil, porém, há algum debate sobre esse assunto. O AES-128 tem um cronograma chave mais forte do que o AES-256, o que leva alguns especialistas muito eminentes a argumentar que o AES-128 é realmente mais forte do que o AES-256.

o consenso geral, no entanto, é que o AES-256 é mais forte.

Camellia

Camellia é uma cifra segura moderna e é pelo menos tão segura e rápida quanto AES. Está disponível nos tamanhos chaves de 128, de 192 e de 256 bocados. Graças à certificação NIST e seu uso pelo governo dos EUA, no entanto, o AES é quase sempre usado em vez de camélia.

mas, como discuto abaixo, há razões para não confiar em cifras certificadas pelo NIST. O fato de camélia ser uma cifra não NIST é o principal motivo para escolhê-la em vez de AES. No entanto, essa opção raramente está disponível.

também vale a pena notar que a Camélia não é tão bem testada quanto a AES.

criptografia de Handshake

para negociar com segurança uma conexão entre seu dispositivo e um servidor VPN, o OpenVPN usa um handshake TLS. Isso permite que o cliente OpenVPN e o servidor VPN estabeleçam as chaves secretas com as quais se comunicam.

para proteger esse aperto de mão, o TLS geralmente usa o sistema de criptografia de chave pública RSA. Este é um algoritmo de criptografia e assinatura digital usado para identificar certificados TLS / SSL. Pode, no entanto, também usar uma troca de chaves Diffie-Hellman ou ECDH.

RSA

RSA é um sistema de criptografia assimétrica – uma chave pública é usada para criptografar os dados, mas uma chave privada diferente é usada para descriptografá-la. Tem sido a base para a segurança na internet nos últimos 20 anos ou mais.

agora está bem estabelecido que o RSA com um comprimento de chave de 1024 bits (RSA-1024) ou menos não é seguro e quase certamente foi quebrado pela NSA. Consequentemente, houve um movimento concertado entre as empresas de internet para migrar para longe da RSA-1024.

infelizmente, ainda encontramos alguns serviços VPN que continuam a usar o RSA-1024 para proteger apertos de mão. Isto não é bom.

RSA-2048 e superior ainda é considerado seguro. Por si só, a RSA não fornece sigilo antecipado perfeito (PFS). Isso pode, no entanto, ser implementado incluindo uma troca de chaves Diffie-Hellman (DH) ou Elliptic curve Diffie-Hellman (ECDH) em seu conjunto de cifras.

neste caso, a força da chave DH ou ECDH não importa, pois está sendo usada apenas para fornecer sigilo perfeito para a frente. A conexão é segura usando RSA.

porque pode causar confusão, também observarei que o criptosistema RSA não tem nada a ver com a empresa de tecnologia dos EUA desonrada RSA Security LLC. Esta empresa enfraqueceu deliberadamente seus principais produtos de criptografia BSAFE depois de ser subornada US $10 milhões pela NSA.

Diffie-Hellman e ECDH

uma criptografia de handshake alternativa (rival) que às vezes é usada pelo OpenVPN é a troca de chaves criptográficas Diffie-Hellman (DH). Isso geralmente tem um comprimento de chave de 2048 bits ou 4096 bits. Observe que qualquer coisa menor que DH-2048 deve ser evitada devido à suscetibilidade ao ataque logjam.

a principal vantagem de um aperto de mão Diffie-Hellman sobre a RSA é que ela fornece nativamente um segredo perfeito para a frente. Como já observado, no entanto, simplesmente adicionar uma troca de chaves DH a um handshake RSA atinge um fim semelhante.

Diffie-Hellman causou grande controvérsia sobre a reutilização de um conjunto limitado de números primos. Isso o torna vulnerável a ser quebrado por um adversário poderoso, como a NSA. Diffie-Hellman por conta própria, portanto, não faz criptografia segura de aperto de mão. É bom, no entanto, quando usado como parte de um conjunto de cifras RSA.

curva elíptica Diffie-Hellman (ECDH) é uma nova forma de criptografia que não é vulnerável a este ataque. Isso ocorre porque ele usa as propriedades de um tipo específico de curva algébrica em vez de grandes números primos para criptografar conexões.

o ECDH pode ser usado como parte de um handshake RSA para fornecer sigilo avançado perfeito ou pode criptografar com segurança um handshake por conta própria (com uma assinatura ECDSA). Isso também fornece PFS.

o comprimento da chave ECDH começa em 384 bits. Isso é considerado seguro, mas quando usado por conta própria para garantir um aperto de mão TLS, quanto mais tempo melhor (em termos de segurança, de qualquer maneira).

autenticação Hash SHA

isso também é conhecido como autenticação de dados ou código de autenticação de mensagem hash (HMAC).

Secure Hash Algorithm (Sha) é uma função hash criptográfica usada (entre outras coisas) para autenticar dados e conexões SSL/TLS. Isso inclui conexões OpenVPN.

ele cria uma impressão digital exclusiva de um certificado TLS válido, que pode ser validado por qualquer cliente OpenVPN. Mesmo a menor mudança é detectável. Se o certificado for adulterado, isso será imediatamente detectado e a conexão recusada.Isso é importante na prevenção de um ataque Man-in-the-middle (MitM), onde um adversário tenta desviar sua conexão OpenVPN para um de seus próprios servidores em vez de seu provedor VPN. Pode fazer isso, por exemplo, hackeando seu roteador.

se um adversário pode quebrar o hash do certificado TLS genuíno do seu provedor, ele pode reverter o hash para criar um certificado forjado. Seu software VPN aberto autenticaria a conexão como genuína.

o SHA é Seguro?

quando usado para proteger sites HTTPS, SHA-1 está quebrado. Isso é conhecido há algum tempo. Sites SHA-1 ainda podem ser encontrados, mas estão sendo eliminados. A maioria dos navegadores agora emitirá um aviso quando você tentar se conectar a um site protegido com SHA-1.

as funções hash SHA-2 e SHA-3 agora são recomendadas e são seguras. SHA-2 inclui SHA-256, SHA-384 e SHA-512. No entanto …

OpenVPN só usa SHA para HMAC. Não acho útil entrar em muitos detalhes aqui, mas a autenticação hash SHA faz parte do algoritmo HMAC. Atacar HMAC incorporado com SHA-1 é muito mais difícil do que apenas atacar a própria função hash SHA-1.

em outras palavras, o HMAC SHA-1 usado pelo OpenVPN é considerado seguro e há provas matemáticas disso. Claro, HMAC SHA-2 e HMAC SHA-3 são ainda mais seguros! De fato, a recente auditoria OpenVPN reconhece que o HMAC SHA-1 é seguro, mas recomenda a transição para o HMAC SHA-2 ou HMAC SHA-3.

notas

NIST

AES, RSA, SHA-1 e SHA-2 foram todos desenvolvidos e/ou certificados pelo Instituto Nacional de padrões e Tecnologia dos Estados Unidos (NIST). Este é um órgão que, por sua própria admissão, trabalha em estreita colaboração com a NSA no desenvolvimento de suas cifras.Dado o que agora sabemos dos esforços sistemáticos da NSA para enfraquecer ou construir backdoors em padrões internacionais de criptografia, há todos os motivos para questionar a integridade dos algoritmos NIST.

NIST, é claro, refuta fortemente tais alegações:

“NIST não enfraqueceria deliberadamente um padrão criptográfico.”

também convidou a participação do público em uma série de Futuros Padrões de criptografia propostos, em um movimento projetado para reforçar a confiança do público.O New York Times, no entanto, acusou a NSA de contornar os padrões de criptografia aprovados pelo NIST, introduzindo backdoors indetectáveis ou subvertendo o processo de desenvolvimento público para enfraquecer os algoritmos.Essa desconfiança foi reforçada quando a RSA Security (uma divisão da EMC) disse privadamente aos clientes que parassem de usar um algoritmo de criptografia que supostamente contém uma falha projetada pela NSA. Este algoritmo também foi endossado pelo NIST.Além disso, Dual_EC_DRBG (Dual elliptic Curve Deterministic Random Bit Generator) é um padrão de criptografia projetado pelo NIST. Sabe-se que é inseguro há anos.

em 2006, a Universidade de tecnologia de Eindhoven, na Holanda, observou que um ataque contra ele era fácil o suficiente para lançar em “um PC comum.”Os engenheiros da Microsoft também sinalizaram um backdoor suspeito no algoritmo.

apesar dessas preocupações, onde o NIST lidera, a indústria segue. Microsoft, Cisco, Symantec e RSA incluem o algoritmo nas bibliotecas criptográficas de seus produtos. Isso ocorre em grande parte porque o cumprimento dos padrões NIST é um pré-requisito para a obtenção de Contratos do governo dos EUA.Os padrões criptográficos certificados pelo NIST são praticamente onipresentes em todo o mundo, em todas as áreas da indústria e dos negócios que dependem da privacidade. Isso torna toda a situação um tanto assustadora.

talvez precisamente porque muito depende desses padrões, os especialistas em criptografia não estão dispostos a enfrentar o problema.

AES-CBC vs AES-GCM

até recentemente, a única cifra AES que você provavelmente encontraria no mundo da VPN era AES-CBC (encadeamento de bloco de cifra). Isso se refere ao modo de cifra de bloco, um assunto complexo que não vale a pena entrar aqui. Embora a CBC possa teoricamente ter algumas vulnerabilidades, o consenso geral é que a CBC é Segura. O CBC é, de fato, recomendado no manual OpenVPN.

OpenVPN agora também suporta AES-GCM (modo Galios/Counter).

  • o GCM fornece autenticação, eliminando a necessidade de uma função de hash HMAC SHA.
  • também é um pouco mais rápido que o CBC porque usa aceleração de hardware (passando para vários núcleos de processador).

AES-CBC continua sendo o modo mais comum em uso geral, mas agora estamos começando a encontrar AES-GCM “na natureza.”Dadas as vantagens do GCM, essa tendência provavelmente continuará. Do ponto de vista criptográfico, tho9ugh, tanto AES-CBC quanto AES-GCM são muito seguros.

OpenVPN UDP vs. OpenVPN TCP

OpenVPN pode ser executado sobre TCP (Transmission Control Protocol) ou UDP (User Datagram Protocol).

  • TCP = confiável. Sempre que um computador envia um pacote de rede usando TCP, ele aguarda a confirmação de que o pacote chegou antes de enviar o próximo pacote. Se nenhuma confirmação for recebida, ela reenviará o pacote. Isso é conhecido como correção de erros. Há “entrega garantida” de todos os dados, mas pode ser bastante lento.
  • UDP = rápido. Usando UDP, nenhuma correção de erro é realizada. Os pacotes são simplesmente enviados e recebidos sem agradecimentos ou tentativas. Isso torna o UDP muito mais rápido que o TCP, mas menos confiável.

se for dada a escolha, sugiro usar o protocolo UDP mais rápido, a menos que você tenha problemas de conexão. Esta é a estratégia padrão adotada pela maioria dos provedores de VPN.

Derrote a censura com OpenVPN na porta TCP 443

uma das grandes vantagens do OpenVPN é que ele pode ser executado em qualquer porta, incluindo a porta TCP 443. Esta é a porta usada por HTTPS, o protocolo criptografado que protege todos os sites seguros.

sem HTTPS, nenhuma forma de comércio online, como compras ou bancos, seria possível. Portanto, é muito raro que essa porta seja bloqueada.

como bônus, o tráfego VPN na porta TCP 443 pode ser roteado dentro da criptografia TLS da mesma maneira que é usada por HTTPS. Isso torna muito mais difícil detectar usando técnicas avançadas de inspeção profunda de pacotes. A porta TCP 443 é, portanto, a porta preferida para evitar blocos VPN.

muitos provedores de VPN oferecem a capacidade de alterar o número da porta usado pelo OpenVPN usando seu software personalizado.

mesmo que o seu não, muitos provedores de VPN realmente suportam OpenVPN usando a porta TCP 443 no nível do servidor. Você pode mudar para ele com uma edição simples para sua configuração OpenVPN (.ovpn) arquivo. Portanto, vale a pena perguntar ao seu provedor de VPN sobre isso.

vale a pena notar que os engenheiros de rede não gostam dessa tática, pois o TCP sobre o TCP é muito ineficiente. Quando se trata de derrotar a censura, no entanto, muitas vezes funciona.

SSTP usa a porta TCP 443 por padrão.

resumos

protocolos VPN

  • PPTP é muito inseguro e deve ser evitado. Embora sua facilidade de configuração e compatibilidade entre plataformas sejam atraentes, o L2TP/IPsec tem as mesmas vantagens e é muito mais seguro.
  • L2TP / IPsec é uma boa solução VPN para uso não crítico. Isso é especialmente verdadeiro em dispositivos legados que não suportam OpenVPN. No entanto, foi severamente comprometido pela NSA.
  • SSTP oferece a maioria das vantagens do OpenVPN, mas é principalmente apenas um protocolo do Windows. Isso significa que ele está melhor integrado ao sistema operacional, mas é mal suportado pelos provedores de VPN graças a essa limitação. Além disso, sua natureza proprietária e o fato de ter sido criado pela Microsoft significam que eu, por um lado, não confio nela.
  • IKEv2 é um protocolo muito bom (seguro e rápido). Os usuários móveis, em particular, podem até preferir o OpenVPN devido à sua capacidade aprimorada de se reconectar quando uma conexão com a internet é interrompida. Para usuários do Blackberry, é praticamente a única opção disponível. Use versões de código aberto sempre que possível.O OpenVPN é o protocolo VPN recomendado na maioria das circunstâncias. É rápido, confiável, seguro e de código aberto. Não tem desvantagens reais, per se., mas para ser verdadeiramente seguro, é importante que seja bem implementado. Isso significa criptografia forte com sigilo avançado perfeito.

criptografia OpenVPN

quando se trata de criptografia, o diabo está nos detalhes. É comum ver os provedores de VPNs dizerem que usam criptografia AES OpenVPN “ultra-forte de 256 bits”, mas isso não nos diz muito. O AES-256 é de fato uma cifra forte, mas se outros aspectos do pacote de criptografia usado forem fracos, seus dados não serão seguros.

  • cifra-isso protege seus dados reais. AES-256 é agora o padrão da indústria e é recomendado.
  • Handshake – isso protege sua conexão com o servidor VPN. RSA-2048+ ou ECDH-384 + são seguros. É importante ressaltar que os apertos de mão RSA-1024 e Diffie-Hellman não são.
  • autenticação Hash-cria uma impressão digital exclusiva, que é usada para validar dados e certificados TLS (ou seja, para verificar se o servidor ao qual você está se conectando é realmente aquele ao qual você acha que está se conectando). HMAC SHA-1 é absolutamente bom, mas HMAC SHA-2 (SHA-256, SHA-384 e SHA-512) e HMAC SHA-3 são ainda mais seguros! Observe que a autenticação hash não é necessária se a cifra AES-GCM for usada.
  • Perfect Forward Secrecy (PFS) – isso garante que novas chaves de criptografia sejam criadas para cada sessão. O OpenVPN não deve ser considerado seguro, a menos que o PFS seja implementado. Isso pode ser feito incluindo uma troca de chaves Diffie-Hellman ou ECDH em um aperto de mão RSA ou um aperto de mão DH ou ECDH.A criptografia é tão segura quanto seu ponto mais fraco. Isso significa que as configurações de criptografia devem ser fortes nos canais de dados e controle.
  • usar comprimentos de bits mais altos para cifras e chaves é quase sempre mais seguro, mas isso tem um custo de velocidade.

OpenVPN negociará Cifras entre cliente e servidor à vontade. A menos que parâmetros muito específicos sejam definidos, OpenVPN pode Padrão para Configurações fracas. No mínimo, o OpenVPN será o padrão para Blowfish-128 cipher, RSA-1024 handshake sem PFS e autenticação hash HMAC SHA-1.

conclusão

espero que agora você tenha uma melhor compreensão do que contribui para uma conexão VPN segura. Quando se trata de configurar corretamente uma VPN, no entanto, a criptografia é apenas metade da história. A outra metade é garantir que nenhum tráfego entre ou deixe seu computador fora da conexão VPN.

para saber mais sobre isso, confira nosso guia completo sobre vazamentos de IP.

Deixe uma resposta

O seu endereço de email não será publicado.