Enquanto está se tornando óbvio que a maioria das tecnologias de criptografia VPN é certificada e foi desenvolvida pelo
National Institute of Standards and Technology,
novas revelações de Edward Snowden mostram que a NSA vem trabalhando
para subverter e quebrar essas tecnologias há anos, o que é chocante.
Isso definitivamente levanta a questão: “Essas tecnologias VPN são
realmente seguras”? Para encontrar uma resposta, decidimos que
finalmente é hora de escrever este artigo.
Começaremos discutindo
as principais diferenças entre os protocolos VPN e como eles afetam os
usuários. A seguir, mergulharemos nos principais conceitos envolvidos na
criptografia e analisaremos como o ataque da NSA aos padrões de
criptografia afeta os milhões de usuários de VPN em todo o mundo.
PPTP
Desenvolvido
por um consórcio fundado pela Microsoft Corporation, o encapsulamento
ponto-a-ponto cria uma Rede Privada Virtual em redes discadas e tem sido
o protocolo padrão para VPNs desde a sua criação. O primeiro protocolo
VPN a ser suportado pelo Windows, o PPTP fornece segurança através de
uma variedade de métodos de autenticação, como o MS_CHAP v2, que é o
mais comum do lote.
Todos os dispositivos e plataformas
compatíveis com VPN tem o PPTP disponível como padrão, e uma vez que sua
configuração é relativamente fácil, ele continua sendo a principal
escolha tanto para provedores de VPN como para empresas. Além disso, sua
implementação requer baixa sobrecarga de computação, tornando-se um dos
protocolos VPN mais rápidos disponíveis hoje.
No entanto, embora
agora ele normalmente use uma criptografia de 128 bits, existem algumas
vulnerabilidades de segurança, sendo a mais grave a possibilidade de
uma autenticação MS-CHAP v2 não encapsulada. Devido a isso, o PPTP pode
ser quebrado em 2 dias. E embora a falha tenha sido corrigida pela
Microsoft, a gigante da tecnologia recomenda que os usuários VPN usem
SSTP ou L2TP.
Com o PPTP sendo tão inseguro, não é nenhuma
surpresa que descriptografar comunicações de criptografia PPTP é quase
certamente padrão na NSA. No entanto, o que ainda é mais preocupante é
que a NSA tem decifrado (ou está no caminho de fazer isso) grandes
quantidades de dados mais antigos, que foram criptografados quando o
PPTP era considerado um protocolo seguro por especialistas em segurança.
Prós
- Rápido.
- Cliente integrado em quase todas as plataformas.
- Fácil de configurar.
Contras
- É comprometido pela NSA.
- Não completamente seguro.
L2TP e L2TP/IPsec
O
protocolo de túnel de camada 2, ao contrário de outros protocolos VPN,
não fornece nenhuma privacidade ou criptografia ao tráfego que passa por
ele. Devido a isso, ele é normalmente implementado com um conjunto de
protocolos conhecidos como IPsec para criptografar dados antes da
transmissão, fornecendo aos usuários privacidade e segurança. Todos os
dispositivos e sistemas operacionais modernos compatíveis com VPN
possuem incorporado L2TP/IPsec. A configuração é tão rápida e fácil
quanto a do PPTP, mas pode haver problemas, uma vez que o protocolo faz
uso da porta UDP 500, que é um alvo fácil de ser bloqueado por firewalls
NAT. Portanto, o encaminhamento de porta pode ser necessário se ele
estiver sendo usado com um firewall.
Não há grandes
vulnerabilidades associadas com a criptografia IPsec, e ele ainda pode
ser seguro se implementado corretamente. No entanto, as revelações de
Edward Snowden sugerem fortemente que ele tem sido comprometido pela
NSA. John Gilmore, que é o membro fundador e especialista em segurança
da Electric Frontier Foundation, alega que é provável que o protocolo
seja deliberadamente enfraquecido pela NSA. Além disso, uma vez que o
protocolo LT29/IPsec encapsula os dados duas vezes, ele não é tão
eficiente em oposição a soluções baseadas em SSL e, portanto, é um pouco
mais lento do que outros protocolos VPN.
Prós
- Normalmente considerado seguro.
- Disponível em todos os dispositivos e sistemas operacionais modernos.
- Fácil de configurar.
Contras
- Mais lento do que o OpenVPN.
- Pode estar comprometido pela NSA.
- Pode ser problemático se usado com firewalls restritivos.
- É provável que a NSA deliberadamente tenha enfraquecido o protocolo.
OpenVPN
Uma
tecnologia de código aberto relativamente nova, o OpenVPN utiliza os
protocolos SSLv3/TLSv1 e a biblioteca OpenSSL, juntamente com uma
combinação de outras tecnologias, para fornecer aos usuários uma solução
VPN confiável e forte. O protocolo é altamente configurável e funciona
melhor em uma porta UDP, mas pode ser configurado para ser executado em
qualquer outra porta também, tornando extremamente difícil para a Google
e outros serviços similares bloqueá-lo.
Outra grande vantagem
deste protocolo é que a sua biblioteca OpenSSL suporta vários algoritmos
criptográficos, tais como 3DES, AES, Camellia, Blowfish, CAST-128 e
muitos outros, embora o Blowfish ou o AES sejam utilizados quase
exclusivamente por provedores de VPN. O OpenVPN vem com uma criptografia
Blowfish de 128 bits. Ele é normalmente considerado seguro, mas tem
algumas fraquezas conhecidas também.
Quando se trata de
criptografia, a AES é a mais nova tecnologia disponível e é considerada o
“padrão ouro”. Isso porque ela simplesmente não tem fraquezas
conhecidas, ela também foi adotada pelo governo e agências dos EUA para
proteger dados “seguros”. Ele pode lidar com arquivos maiores
comparativamente melhor do que o Blowfish, graças ao seu tamanho de
bloco de 128 bits em comparação com o tamanho de bloco de 64 bits do
Blowfish. No entanto, ambas são codificações certificadas NIST e, embora
elas possam ser reconhecidas agora como um problema, há, de fato,
alguns problemas com elas, que vamos dar uma olhada abaixo.
Primeiro,
a velocidade de execução do protocolo OpenVPN depende do nível de
criptografia usado, mas normalmente ele é mais rápido que o IPsec.
Embora o OpenVPN seja agora a conexão VPN padrão para a maioria dos
serviços VPN, ele ainda não é suportado por nenhuma plataforma. No
entanto, ele é compatível com a maioria dos softwares de terceiros, que
inclui tanto o Android quanto o iOS.
Quando se trata da
configuração, ele é um pouco mais complicado em comparação com os
protocolos L2TP/IPsec e PPTP, particularmente quando o software genérico
OpenVPN está sendo usado. Não só você tem que baixar e instalar o
cliente, mas os arquivos de configuração adicionais também precisam ser
configurados. Vários fornecedores de VPN enfrentam este problema de
configuração devido à oferta de clientes VPN personalizados.
No
entanto, tendo em conta todos os fatores e considerando as informações
fornecidas pelo Edward Snowden, parece que o OpenVPN não foi
enfraquecido nem comprometido pela NSA. Ele também é considerado imune a
ataques da NSA por causa do uso de trocas de chaves efêmeras. Sem
dúvida, ninguém está ciente das capacidades completas da NSA, no
entanto, tanto a matemática como as evidências indicam fortemente que o
OpenVPN, quando combinado com uma codificação forte, é o único protocolo
VPN que pode ser considerado seguro.
Prós
- Tem a capacidade de contornar a maioria dos firewalls.
- Altamente configurável.
- Uma vez que é de código aberto, pode ser facilmente vetado para backdoors.
- É compatível com uma variedade de algoritmos de criptografia.
- Altamente seguro.
Contras
- Pode ser um pouco complicado de configurar.
- Requer software de terceiros.
- O suporte para computador de mesa é grande, mas para dispositivos móveis precisa de melhorias.
SSTP
Introduzido
pela Microsoft Corporation no Windows Vista Service Package 1, o
encapsulamento de socket seguro está disponível agora para SEIL, Linux e
RouterOS, mas ainda é principalmente uma plataforma apenas para
Windows. Uma vez que ele usa SSL v3, fornece vantagens semelhantes ao
OpenVPN, tais como a capacidade de evitar problemas da firewall NAT. O
SSTP é um protocolo VPN estável e mais fácil de usar, particularmente
por que ele é integrado ao Windows.
No entanto, ele é um padrão
proprietário que pertence à Microsoft. Enquanto a gigante de tecnologia
tem uma história de cooperação com a NSA, há também especulações sobre
backdoors incorporados no sistema operacional Windows, portanto, não
inspira tanta confiança como outros padrões.
Prós
- Tem a capacidade de contornar a maioria dos firewalls.
- O nível de segurança depende da codificação, mas ele geralmente é seguro.
- Inteiramente integrado no sistema operacional Windows.
- Suporte da Microsoft.
Contras
- Uma vez que é um padrão proprietário da Microsoft Corporation, ele não pode ser vetado para backdoors.
- Funciona apenas em plataformas somente Windows.
IKEv2
Um
protocolo de encapsulamento baseado em IPsec, o Internet Key Exchange
Versão 2 foi desenvolvido pela Cisco e pela Microsoft, e é incorporado
na 7ª e mais recentes versões da plataforma Windows. Ele vem com
implementações de código aberto compatível e desenvolvido para Linux e
várias outras plataformas, e também suporta dispositivos Blackberry.
Conhecido
como VPN Connect pela Microsoft Corporation, ele é bom em restabelecer
conexões VPN automaticamente quando uma conexão com a Internet é perdida
temporariamente. Os usuários móveis são os que mais se beneficiam com o
IKEv2, uma vez que o protocolo Mobility and Multi-homing oferecido por
padrão torna extremamente flexível a mudança de redes. Além disso, ele
também é ótimo para usuários Blackberry, uma vez que o IKEv2 está entre
os poucos protocolos VPN que suportam dispositivos Blackberry. Embora o
IKEv2 esteja disponível em comparativamente menos plataformas em
comparação com o IPsec, ele é considerado igualmente bom em termos de
estabilidade, segurança e desempenho.
Prós
- Extremamente seguro – suporta uma variedade de codificações como 3DES, AES, AES 256.
- Vem com suporte para dispositivos Blackberry.
- Ele é estável, especialmente quando se reconecta depois de perder uma conexão ou ao mudar de rede.
- Ele é fácil de configurar, pelo menos a partir do lado do usuário.
- Relativamente mais rápido do que L2TP, PPTP e SSTP.
Contras
- Suportado em plataformas limitadas.
- A porta UDP 500 utilizada é fácil de bloquear em comparação com soluções baseadas em SSL, como SSTP ou OpenVPN.
- Não é uma implementação de código aberto.
- No lado do servidor, implementar o IKEv2 é complicado, o que pode causar alguns problemas potenciais.
Conclusões
Para entender a criptografia, você tem que entender uma série de conceitos-chave. Nós discutiremos todos abaixo.
Comprimento da Chave de Criptografia
A
forma mais crua de determinar o tempo que levará para quebrar uma
codificação é conhecida como comprimento de chave, que são números em
bruto que consistem em uns e zeros que são usados na codificação. Da
mesma forma, a busca de chave exaustiva (ou ataque de força bruta) é a
forma mais crua de ataque a uma codificação, onde você tenta todas as
combinações prováveis até encontrar a correta. Em termos de comprimento
de chave, o nível de criptografia usado por provedores de VPN está entre
128 bits e 256 bits. Níveis mais altos são usados para autenticação de
dados e handshake. Isso significa que a criptografia de 256 bits é
melhor do que a criptografia de 128 bits?
Bem, para encontrar a resposta certa, vamos colocar alguns números na perspectiva:
- Para quebrar de forma confiável uma chave de 128 bits, ela exige operações de 3,4×10(38).
- Para
quebrar de forma confiável uma codificação de chave de 256 bits, ele
requer 2(128) vezes mais potência computacional em comparação com uma
chave de 128 bits.
- Um ataque de força bruta a uma codificação
de 256 bits requer operações de 3,31×10(65), que é quase equivalente ao
número total de átomos no Universo.
- O Fujitsu K, o
supercomputador mais rápido do mundo em 2011, teve velocidades de Rmax
de até 10,51 petaflops. Considerando este quadro, levaria
aproximadamente 1 bilhão de anos para que a chave AES de 128 bits fosse
quebrada à força.
- O NUDT Tianhe-2, o supercomputador mais
rápido do mundo em 2013, teve velocidades de Rmax de até 33,86
petaflops. O que é quase 3 vezes mais rápido do que o Fujitsu K e
levaria aproximadamente um terço de um bilhão de anos para a chave AES
de 128 bits ser quebrada à força.
Até as novas revelações
de Edward Snowden, acreditava-se amplamente que a criptografia de 128
bits era inquebrável através da força, e permaneceria assim por outros
cem anos ou mais. No entanto, considerando os vastos recursos que a NSA
tem à mão, a situação fez com que vários especialistas e administradores
de sistemas em todo o mundo atualizassem os comprimentos de chave de
codificação. Vale ressaltar que o governo dos EUA usa criptografia de
256 bits para proteção de dados confidenciais (a de 128 bits é usada
para as necessidades de criptografia de rotina). No entanto, até mesmo o
método utilizado, o AES, pode causar alguns problemas.
Codificações
As
codificações são algoritmos matemáticos que são usados durante
criptografias, uma vez que algoritmos fracos são vulneráveis a hackers,
permitindo que eles facilmente quebrem a criptografia. De longe, a
Blowfish e a AES são as codificações mais comuns que os usuários
provavelmente encontrarão nas VPNs. Além disso, a RSA é usada para a
criptografia e descriptografia das chaves da codificação, enquanto a
SHA-1 e a SHA-2 são usadas para autenticar os dados como uma função
hash.
No entanto, agora a AES é, sem dúvida, considerada a
codificação mais segura para VPNs, tanto que a sua adoção pelo governo
dos EUA aumentou substancialmente a sua confiabilidade e popularidade
percebida. No entanto, há razões para acreditar que essa confiança pode
ser mal colocada.
NIST
A SHA-1, SHA-2, RSA e AES foram certificadas ou desenvolvidas pelo
Instituto Nacional de Padrões e Tecnologia dos Estados Unidos (NIST),
que é um órgão que trabalha em estreita colaboração com a NSA para o
desenvolvimento de suas codificações. Agora que conhecemos os esforços
sistemáticos feitos pela NSA para construir ou enfraquecer backdoors nos
padrões de criptografia, certamente faz sentido levantar questões sobre
a integridade dos algoritmos NIST.
Embora o NIST sempre tenha
negado qualquer irregularidade (ou seja, enfraquecer deliberadamente o
padrão criptográfico) e tentado aumentar a confiança pública ao convidar
as pessoas a participar de seus próximos padrões de criptografia, a NSA
foi acusada pelo New York Times de contornar o padrão de criptografia
aprovado pelo NIST ao interromper o processo de desenvolvimento público
ou inserir backdoors indetectáveis para enfraquecer os algoritmos.
No
dia 17 de setembro de 2013, a desconfiança foi aumentada ainda mais
quando os clientes foram informados de forma privada pela RSA Security
para pararem de usar um algoritmo de criptografia específico, uma vez
que tinha uma falha que foi intencionalmente projetada pela NSA.
Além
disso, acredita-se que um padrão de criptografia projetado pelo NIST, o
Dual EC DRBG, tenha sido inseguro por anos. De tal forma que isso foi
até mesmo notado pela Universidade de Tecnologia nos Países Baixos em
2006. No entanto, apesar dessas preocupações, onde o NIST lidera, a
indústria segue sem relutância, principalmente por causa do fato de que o
cumprimento dos padrões NIST é uma exigência para a obtenção de
contratos do governo dos EUA.
Considerando que os padrões NIST
estão onipresentes em todo o mundo, em todas as áreas de negócios e da
indústria que dependem de privacidade, como a indústria VPN, tudo isso
pode parecer bastante assustador. Uma vez que muitos confiam nestes
padrões, os especialistas no campo da criptografia têm estado relutantes
para atacar o problema. A única empresa que o fez, a
Silent Circle,
decidiu fechar seu serviço Silent Mail em vez de vê-lo ser comprometido
pela NSA, e anunciou seu afastamento das normas do NIST em novembro de
2013.
Graças à cobertura deste problema, um provedor de VPN
pequeno mas inovador, o LiquidVPN começou o teste e experimentação de
codificações não NIST. No entanto, até onde sabemos ele é o único
provedor de VPN que se move nesta direção. Portanto, até esse momento
chegar, você terá que aproveitar ao máximo a criptografia AES de 256
bits, que atualmente é o melhor padrão de criptografia disponível.
Ataques da NSA na criptografia de chave RSA
Uma
das novas revelações de Edward Snowden indica que um programa chamado
“Cheesy Name” estava sendo desenvolvido para descriminar as chaves de
criptografia, chamadas de “certificados”, que podem estar em risco de
serem quebradas por supercomputadores no GCHQ. Isso sugere fortemente
que esses certificados, comumente protegidos por criptografia de 1024
bits, são mais fracos do que achávamos, e podem ser facilmente
descriptografados muito mais rapidamente do que o esperado pelo GHCQ e
NSA. Uma vez descriptografadas, todas as trocas passadas e futuras serão
comprometidas através do uso de uma chave privada permanente para
descriptografar todos os dados.
Como resultado, várias formas de
criptografia que dependem de chaves e certificados efêmeros devem ser
consideradas quebradas, incluindo a TLS e a SSL. Isso terá um enorme
efeito em todo o tráfego HTTPS. No entanto, há algumas boas notícias. O
OpenVPN, que usa alterações de chave temporárias, não deve ser afetado
por este problema. Por quê? Porque há uma chave nova gerada para cada
troca e, como consequência, não oferece aos certificados a oportunidade
de estabelecer confiança.
Mesmo se alguém conseguir a chave
privada do certificado, descriptografar a comunicação simplesmente não
seria possível. Com um ataque man in the middle (MitM), pode ser
possível segmentar uma conexão OpenVPN, mas é necessário ser
especificamente direcionado e a chave privada precisa ser comprometida.
Desde que se tornou pública a notícia de que o GHCQ e a NSA são capazes
de quebrar a criptografia de 1028 bits, muitos provedores de VPN
aumentaram sua criptografia para 2048 bits, ou até mesmo 4096 bits.
Perfect Forward Secrecy (Sigilo Encaminhado Perfeito)
Mais
uma boa notícia é que a solução para este problema, mesmo para conexões
TLS e SSL, não é tão difícil se os sites começarem a implementar
sistemas de secrecy forward, onde uma única e nova chave de criptografia
privada é criada para cada sessão. Infelizmente, até agora, a única
grande empresa da Internet a implementar um sistema de perfect forward
secrecy foi a Google.
Enquanto concluímos este artigo,
gostaríamos que você seguisse as sábias palavras de Edward Snowden, de
que os trabalhos de criptografia e os sistemas de criptografia devem ser
implementados para aumentar a segurança. Então, o que você deve tirar
deste artigo? É simples! O OpenVPN é o protocolo mais seguro disponível e
os provedores de VPN devem continuar trabalhando para fortalecer sua
implementação. Seria simplesmente ótimo se os fornecedores também
começassem a se afastar dos padrões do NIST, mas isso é uma coisa que
nós definitivamente teremos que esperar.
- O PPTP é
extremamente inseguro. Ele foi comprometido pela NSA, até mesmo a
Microsoft o abandonou, razão pela qual deve ser totalmente evitado.
Embora você possa achar a sua compatibilidade entre plataformas e
facilidade de configuração atraentes, lembre-se de que os usuários podem
obter muitas das mesmas vantagens e um nível consideravelmente melhor
de segurança usando L2TP/IPsec.
- Quando se trata de uso não
crítico, o L2TP/IPsec é a solução VPN certa para você, mesmo que tenha
sido enfraquecido e comprometido gravemente pela NSA. No entanto, se
você estiver procurando por uma configuração VPN rápida que não precise
de software adicional, ele continua sendo útil, especialmente para
dispositivos móveis onde o suporte para OpenVPN permanece inconsistente.
- Apesar
da necessidade de baixar e instalar software de terceiros em todas as
plataformas, o OpenVPN é indiscutivelmente a melhor solução VPN para
todas as suas necessidades. Ele é rápido, seguro, confiável e, apesar de
a configuração poder ser um pouco demorada, vale a pena a segurança
premium e a privacidade que você receberá enquanto navega na Web.
- O
IKEv2 também é um protocolo rápido e seguro se usado junto com
implementações de código aberto, particularmente a cortesia para
usuários móveis de sua capacidade de reconectar automaticamente após sua
conexão com a Internet ter sido interrompida. Além disso, uma vez que é
um dos poucos protocolos VPN que suporta dispositivos Blackberry, é
claramente a única melhor opção que você tem.
- O SSTP fornece
aos usuários praticamente as mesmas vantagens de uma conexão OpenVPN, no
entanto, somente em plataformas Windows. Portanto, você vai achar que
ele estar integrado nos sistemas operacionais Windows é muito melhor do
que outros protocolos VPN. No entanto, ele tem suporte limitado de
provedores de VPN devido a essa limitação e uma vez que a Microsoft tem
um bom e longo histórico de cooperação com a NSA, o SSTP é um protocolo
no qual não confiamos.
Em
conclusão, você deve sempre usar OpenVPN onde possível, embora para
dispositivos móveis o IKEv2 seja uma boa opção. Para uma solução rápida,
o L2TP provará ser suficiente, mas considerando a maior disponibilidade
de aplicativos móveis OpenVPN, ainda preferimos usar o OpenVPN em
comparação a todos os outros protocolos.