Manter uma comunicação segura através de uma rede insegura como a Internet é uma das principais preocupações de qualquer usuário da Internet, e também de diferentes empresas. As principais razões para usar um VPN é que nos permite estabelecer comunicações seguras, com autenticação e criptografia de dados para proteger todas as informações trocadas. O IPsec é um dos protocolos de segurança mais importantes, que fornece uma camada de segurança para todas as comunicações IP entre dois ou mais participantes. Hoje neste artigo vamos ver em detalhes o que é o IPsec, como funciona e também como podemos configurá-lo e onde.
VPN é a sigla para “Virtual Private Network“, Ou também conhecida como rede privada virtual, é uma tecnologia de rede que nos permite estender as comunicações LAN pela rede da Internet, e tudo isso de forma totalmente segura graças ao uso da criptografia. Uma VPN permitirá que um computador envie e receba dados em redes compartilhadas ou públicas, mas logicamente estando na rede privada com todas as suas funcionalidades, permissões, segurança, políticas de gerenciamento, etc.
Alguns usos muito típicos de VPNs são os seguintes:
- Possibilidade de conectar dois ou mais escritórios de uma empresa entre si, utilizando conectividade com a Internet.
- Permita que os membros da equipe de suporte técnico se conectem de suas casas à empresa.
- Que um usuário pode acessar seu computador doméstico de um site remoto, como um hotel.
Todas essas utilizações serão sempre através de uma infraestrutura que todos conhecemos bem: a Internet.
Dentro das VPNs, temos principalmente duas arquiteturas de VPN, as VPNs de acesso remoto (Roadwarrior VPN ou Mobile Clients) e as VPNs Site-to-Site (Site-to-site VPN). Dependendo de nossas necessidades, devemos configurar uma arquitetura ou outra.
- VPN de acesso remoto (Roadwarrior ou cliente móvel) : Esta arquitetura VPN é projetada para que um ou mais usuários se conectem a um servidor VPN, podendo acessar todos os recursos compartilhados de sua casa ou empresa, além disso, permite que seja feito um redirecionamento de tráfego, desta forma, nós irá para a Internet através do servidor VPN (e com o IP público do servidor VPN). Este tipo de VPN é o mais típico que podemos configurar em servidores NAS, roteadores e outros dispositivos cujo objetivo é nos fornecer uma navegação segura pela Internet. Essas VPNs de nível corporativo também serviriam para isolar zonas e serviços de rede interna que exigem autenticação adicional, além disso, também pode ser uma boa ideia sempre que usarmos conectividade WiFi, tanto em casa quanto na empresa, para adicionar outra camada de criptografia.
- VPN Site a Site (VPN Site a Site) : esta arquitetura VPN é projetada para interconectar diferentes sites, se, por exemplo, tivermos uma empresa com sites diferentes, podemos interconectá-los via VPN e acessar todos os recursos. O estabelecimento da conexão não é realizado no cliente final, como é o caso das VPNs de acesso remoto, mas é feito por roteadores ou firewalls, desta forma, toda a rede será vista como “uma”, embora o tráfego trafegue através de vários túneis VPN.
Na imagem a seguir, podemos ver uma arquitetura VPN com ambos os modelos, VPN site a site (esquerda) e VPN de acesso remoto (direita):
O que uma VPN deve garantir para ser segura?
Para garantir que uma conexão seja segura por meio de uma rede privada virtual (VPN), certas funções devem ser garantidas, caso contrário, poderíamos enfrentar uma VPN não confiável. Já previmos que o protocolo IPsec cumpre com todos eles, visto que é um protocolo VPN seguro, muito utilizado nas empresas.
Autenticação
A autenticação é um dos processos mais importantes em uma VPN, esse recurso permite que o usuário mostre que realmente é quem diz ser. A forma de comprovar é inserindo uma senha, utilizando um certificado digital ou uma combinação das duas formas de autenticação. Quando o host recebe um datagrama IPsec de uma origem, ele tem certeza de que o endereço IP de origem do datagrama é a origem real do datagrama, porque ele foi previamente autenticado com êxito.
Confidencialidade
A confidencialidade é outra das características fundamentais das VPNs, confidencialidade significa que as informações devem ser acessíveis apenas a entidades autorizadas, ou seja, todas as comunicações são criptografadas ponto a ponto, e somente quem já se autenticou anteriormente no sistema, ser capaz de descriptografar todas as informações trocadas. Se alguém conseguir entrar no meio da comunicação e capturá-lo, não será capaz de descriptografá-lo porque estará usando criptografia, seja criptografia de chave simétrica ou assimétrica.
Integridade
A autenticação e a confidencialidade são tão importantes quanto a integridade. Integridade significa que pode ser assegurado que a informação não foi modificada entre a origem da comunicação e o destino. Todas as comunicações em uma VPN incluem códigos de detecção de erros e que as informações não são modificadas. No caso de ser modificado, o pacote é descartado automaticamente, podendo até causar o travamento do túnel VPN por motivos de segurança. O protocolo IPsec permite que o host receptor verifique se os campos do cabeçalho do datagrama e a carga criptografada não foram modificados enquanto o datagrama estava a caminho do destino.
Vamos imaginar que temos autenticação e confidencialidade em uma VPN, mas não temos integridade. Se um utilizador a meio da comunicação alterar alguns valores, em vez de enviar uma transferência de dinheiro de 10 €, pode convertê-lo para 1,000 €. Graças ao recurso de integridade, assim que um bit for modificado, o pacote será descartado e ficará aguardando para ser enviado novamente.
Eu não repudio
Esta característica da criptografia significa que você não pode dizer que não enviou nenhuma informação, porque está assinada pelo seu certificado digital, ou pelo seu par nome de usuário / senha. Desta forma, podemos ter certeza de que aquele usuário enviou informações específicas. O não repúdio só pode ser “contornado” se alguém for capaz de roubar o par nome de usuário / senha ou os certificados digitais.
Controle de acesso (autorização)
Trata-se de garantir que os participantes autenticados tenham acesso apenas aos dados aos quais estão autorizados. A identidade dos usuários deve ser verificada e seu acesso restrito àqueles que estão autorizados. Em um ambiente de negócios, isso é muito importante, um usuário deve ter o mesmo nível de acesso e as mesmas permissões como se estivesse fisicamente, ou menos permissões, mas nunca mais permissões do que as que tinha fisicamente.
Registro de atividades
Trata-se de garantir uma operação adequada e resiliência. O protocolo VPN deve registrar todas as conexões estabelecidas, com o endereço IP de origem, quem se autenticou e até o que estão fazendo no sistema com base no endereço IP virtual fornecido.
Qualidade de serviço
Trata-se de garantir um bom desempenho, para que não haja degradação inaceitável na velocidade de transmissão. Devemos ter em mente que quando estabelecemos uma conexão VPN, sempre teremos menos velocidade real porque todo o tráfego é criptografado ponto a ponto, e dependendo da força do servidor VPN e dos clientes, podemos conseguir uma velocidade maior ou velocidade mais baixa. Antes de começar a implantar uma VPN, devemos olhar o hardware do equipamento e a largura de banda máxima que podemos ter.
Introdução ao IPsec
O protocolo IPsec é um dos protocolos de segurança mais importantes e é amplamente utilizado em empresas e também em usuários domésticos. Nos últimos tempos, fabricantes como ASUS, AVM e até mesmo D-Link, estão integrando VPN em seus roteadores domésticos com base no protocolo IPsec. Este protocolo fornece serviços de segurança para a camada IP e para todos os protocolos superiores, como TCP e UDP (camada de transporte da Internet). Graças ao IPsec, podemos comunicar entre diferentes pontos da Internet de forma segura, como duas ou mais empresas entre si, ou um usuário com a sua casa, o IPsec adapta-se perfeitamente às necessidades VPN de ambos os “mundos”.
Uma característica muito importante do IPsec é que ele funciona na camada 3 do OSI (camada de rede), outros protocolos VPN, como OpenVPN ou WireGuard trabalham na camada 4 (camada de transporte), uma vez que as duas últimas baseiam sua segurança em TLS e DTLS respectivamente. O IPsec em redes IPv4 está logo acima do cabeçalho IP, no entanto, em redes IPv6 ele é integrado (ESP) no próprio cabeçalho na seção “Extensões”.
O IPsec fornece todos os serviços necessários para que a comunicação seja segura, como explicamos anteriormente, esses serviços são autenticação, confidencialidade, integridade e não repúdio . Graças a estes serviços, a segurança das comunicações está garantida. Claro, também temos controle de acesso, qualidade de serviço e registro de atividades.
Outro recurso muito importante do IPsec é que ele permite ambas as arquiteturas VPN , VPN de acesso remoto e VPN site a site. Em relação à negociação de criptografia, o IPsec integra um sistema de negociação para que as equipes finais negociem a melhor criptografia possível que suportam, concordem com as chaves de troca e escolham os algoritmos de criptografia que têm em comum. Dependendo do cabeçalho IPsec usado (AH ou ESP), podemos apenas verificar a autenticidade do pacote, ou criptografar a carga útil de todo o pacote IP e também verificar sua autenticidade.
Quando dois hosts estabelecem uma sessão IPsec, os segmentos TCP e datagramas UDP são enviados entre eles criptografados e autenticados, além disso, a integridade também é verificada para evitar que alguém a modifique. Portanto, o IPsec garante a segurança das comunicações.
Algumas vantagens do IPsec são que ele é compatível com todos os padrões IETF e fornece um “padrão” VPN para que todos os dispositivos sejam compatíveis. O IPSec está recebendo um suporte muito importante de todos os equipamentos de comunicação, pois é o “padrão” para VPN, muito mais utilizado do que o OpenVPN ou WireGuard. Todas as versões de sistemas operacionais de PC, como Windows or Linux, MacOS para Apple computadores, e também Android e a iOS suporta o protocolo IPsec. Além disso, outra característica muito importante é que, por ser um padrão, há interoperabilidade entre os fabricantes, o que constitui uma garantia para os usuários. Outra característica notável do IPSec é sua natureza como um padrão aberto, e é perfeitamente complementado pela tecnologia PKI (Public Key Infrastructure).
O IPsec combina tecnologias de chave pública (RSA ou curvas elípticas), algoritmos de criptografia simétricos (principalmente AES, embora também suporte outros como Blowfish ou 3DES) e algoritmos de hash (SHA256, SHA512 etc.), bem como certificados digitais baseados em X509v3.
Cabeçalhos IPsec
O protocolo IPsec possui uma arquitetura com vários cabeçalhos, dependendo do que nos interessa “garantir”, podemos escolher um cabeçalho ou outro, não podemos escolher os dois cabeçalhos simultaneamente no mesmo túnel IPsec. Os cabeçalhos que temos neste protocolo são os seguintes:
- Cabeçalho de autenticação (AH)
- Carga de segurança encapsulada (ESP)
A seguir, vamos explicar em detalhes como os dois cabeçalhos funcionam.
Cabeçalho de autenticação (AH)
Este cabeçalho fornece autenticação e integridade aos pacotes IP transmitidos, para fornecer este recurso IPsec, ele faz uso de impressões digitais HMAC. O próprio protocolo será responsável por calcular uma função hash para o conteúdo do pacote IP, algumas das funções hash utilizadas por este protocolo são MD5 ou SHA-1 que não são seguras, mas também suporta SHA256 ou SHA512 que são seguras .
Este cabeçalho fornece ao receptor dos pacotes IP um método para autenticar a origem dos dados e verificar se tais dados não foram alterados na comunicação. Um detalhe muito importante é que este cabeçalho não fornece confidencialidade pois não criptografa os dados do pacote IP, portanto, as informações trocadas podem ser vistas por terceiros, a menos que utilizem protocolos como HTTPS ou FTPES com segurança TLS.
AH é um cabeçalho de autenticação inserido entre o cabeçalho IP padrão (nas redes IPv4 e IPv6) e os dados transportados. Esses dados transportados podem ser uma mensagem TCP, UDP ou ICMP e até mesmo um datagrama IP completo. Dentro do cabeçalho AH é onde os dados da camada superior são indicados, além disso, o AH garante a integridade e autenticidade do cabeçalho IP em si, exceto para alterações de variáveis como TOS, TTL, sinalizadores, deslocamento e soma de verificação.
O funcionamento do protocolo AH é o seguinte:
- O remetente calcula a função hash da mensagem a ser transmitida. Ele será copiado para o cabeçalho AH no campo “Dados de autenticação”.
- Os dados são transmitidos pela Internet.
- Quando o pacote chegar ao receptor, ele aplicará a função hash e a comparará com a que já tinha (ambos têm a mesma chave secreta compartilhada).
Se as impressões digitais forem iguais, significa que o datagrama não foi modificado, caso contrário, podemos alegar que a informação foi adulterada.
Carga de segurança encapsulada (ESP)
O Encapsulado Segurança Payload, ou também conhecido como ESP, oferece autenticação, integridade e confidencialidade dos dados transmitidos por IPsec. Ou seja, neste caso estaremos criptografando todo o campo de dados para que todas as comunicações sejam confidenciais, ao contrário do AH que não criptografa a mensagem transmitida. Para obter esses recursos de segurança, uma troca de chave pública é feita usando Diffie-Hellmann para garantir a comunicação entre os dois hosts.
A principal função do protocolo ESP integrado no IPsec, é proporcionar confidencialidade aos dados, para isso, o ESP define a encriptação e a forma como os dados serão localizados num novo datagrama IP. Para fornecer autenticação e integridade, o ESP usa mecanismos semelhantes ao AH. Como o ESP fornece mais funções do que AH, o formato do cabeçalho é mais complexo: esse formato consiste em um cabeçalho e uma cauda (que é colocada no final do pacote), portanto, o ESP “envolve” os dados transportados. Em relação aos dados, o ESP permite utilizar qualquer protocolo IP, por exemplo, TCP, UDP, ICMP e até um pacote IP completo.
A estrutura de um pacote ESP é a seguinte:
ESP pertence ao nível de rede dentro de TCP / IP. A área de dados é totalmente criptografado , datagrama em si também pode ser autenticado para fornecer maior segurança. A criptografia dos dados é feita usando algoritmos de chave simétrica , geralmente são usadas cifras de bloco (como AES), a criptografia de dados é feita usando múltiplos de o tamanho do bloco , por isso temos o “Preenchimento”, um campo de preenchimento.
Para criptografar os dados, o remetente primeiro criptografa a mensagem original usando uma chave e a insere em um novo datagrama IP (que é protegido pelo cabeçalho ESP). No caso hipotético de alguém interceptar a mensagem (Man In The Middle), eles apenas obterão dados sem sentido, uma vez que não possuem a chave secreta para descriptografar a mensagem. Quando a mensagem chegar ao destino, ela aplicará a chave secreta aos dados e descriptografará o pacote.
O algoritmo mais amplamente usado é AES em todas as suas versões (128 e 256 bits) e em seus diferentes modos de criptografia, como AES-CBC, AES-CFB e AES-OFB . Porém, é aconselhável fazer uso do AES-GCM que a AEAD nos fornecerá e é muito mais seguro que os outros. Portanto, é essencial usar um bom algoritmo de criptografia para proteger todos os dados , a distribuição das chaves de forma segura será muito importante. Uma questão delicada é que ambos os lados da comunicação concordam quanto aos algoritmos e autenticação, isso será feito pelo protocolo IKE.
IKE: o que é e para que serve
Este protocolo IKE (Internet Key Exchange) é usado para gerar e gerenciar as chaves necessárias para estabelecer o AH (cabeçalho de autenticação) e a Conexões ESP (Encapsulated Security Payload) . Os dois ou mais participantes da conexão IPsec devem concordar de alguma forma, os tipos de criptografia e os algoritmos de autenticação para poder estabelecer a conexão de forma segura. Essa configuração pode ser feita manualmente em ambas as extremidades do canal, ou por meio de um protocolo (o Protocolo IKE ) para cuidar da negociação automática dos participantes (SA = Security Association).
O protocolo IKE não é apenas responsável pelo gerenciamento e administração das chaves, mas também por estabelecer a conexão entre os participantes correspondentes. O IKE não está apenas no IPsec, mas pode ser usado em diferentes algoritmos de roteamento, como OSPF ou RIP.
Fases de negociação IKE
O estabelecimento do canal seguro será feito usando um algoritmo de troca de chaves, como Diffie-Hellman, para criptografar a comunicação IKE. Essa negociação é feita por meio de um único SA bidirecional. A autenticação pode ser por meio de PSK (chave compartilhada) ou com outros métodos, como certificados RSA. Usando o canal seguro que foi criado, a associação de segurança IPsec (ou outros serviços) será negociada.
Alguns recursos do IKE
Suporta IKE NAT transversal , mesmo que um ou ambos os participantes estejam atrás de um NAT, a conexão pode ser feita sem muitos problemas, embora tenhamos que abrir portas no servidor VPN se ele estiver atrás do NAT. Números de sequência e ACKs são usados para fornecer confiabilidade e também inclui um sistema de processamento de erros. O IKE é resistente a ataques de negação de serviço e não executa nenhuma ação até determinar se o endpoint solicitante realmente existe, protegendo assim contra ataques de endereços IP falsos.
Atualmente, o IKEv2 é amplamente implementado em todos os firewalls e roteadores profissionais, no entanto, ainda não está totalmente estendido no mundo Android ou iOS, apenas Samsung os usuários de smartphones oferecem suporte a IPsec com IKEv2. Os sistemas operacionais Windows, Linux e macOS oferecem suporte a esse protocolo.
IKEv2: o que mudou
IKEv2 é a segunda versão deste popular protocolo Internet Key Exchange, que incorpora melhorias para NAT traversal, o que torna mais fácil a comunicação e a passagem por firewalls em geral. Também suporta um novo padrão de mobilidade, que permite a reconexão da comunicação de forma muito rápida, além disso, também permite multihoming (multi-origem), ideal para usuários de smartphones, tablets ou laptops. O IKEv2 permite o uso do SCTP que é utilizado no VoIP, também possui uma troca de mensagens mais simples, possui menos mecanismos criptográficos permitindo apenas os mais seguros. Qual é o objetivo de usar uma VPN com cifras inseguras? IKEv2 só permite usar o mais seguro
Modos de operação: transporte ou túnel
O IPsec nos fornece dois modos de operação muito diferentes, tanto para o cabeçalho de autenticação (AH) quanto para a carga útil de segurança encapsulada (ESP). Esses modos de operação diferem na maneira como os pacotes são endereçados. A seguir, explicamos com mais profundidade as diferenças entre os dois.
Modo de transporte
O cabeçalho AH ou ESP é inserido entre a área de dados e o cabeçalho IP, de forma que os endereços IP originais sejam mantidos. O conteúdo encapsulado em um datagrama AH ou ESP vem diretamente da camada de transporte. Portanto, o cabeçalho IPsec será inserido após o cabeçalho IP e logo antes dos dados fornecidos pela camada de transporte. Dessa forma, apenas a carga útil é criptografada e autenticada. O esquema do datagrama seria o seguinte:
O modo de transporte garante a comunicação ponta a ponta, mas as pontas devem estar cientes da existência do protocolo IPsec para se entenderem.
Modo túnel
No modo de túnel, todo o pacote IP (cabeçalho + dados) é criptografado e autenticado se ESP for usado. Este pacote será encapsulado em um novo pacote IP, portanto, o endereço IP será alterado para o do último pacote IP. Portanto, um cabeçalho AH ou ESP é adicionado ao pacote original e, em seguida, é adicionado o cabeçalho IP que servirá para rotear o pacote através da rede.
O modo túnel é normalmente usado para comunicar redes com redes, mas também pode ser usado (e de fato é usado) para comunicar computadores com redes e computadores com computadores. Este modo operacional torna mais fácil para os nós ocultar sua identidade de outros nós que estão se comunicando. Ao usar o modo de túnel, poderemos ter uma sub-rede dedicada especificamente para clientes VPN. O modo túnel é usado principalmente por gateways IPSec, a fim de identificar a rede que eles protegem sob o mesmo endereço IP e, assim, centralizar o processamento do tráfego IPSec em um computador.
Na imagem a seguir você pode ver uma comparação entre os dois esquemas operacionais, sempre usando ESP:
Depois de ver os dois modos de operação, veremos quais métodos de autenticação temos no IPsec.
Métodos de autenticação
No protocolo IPsec, temos um total de quatro métodos de autenticação: chave compartilhada, assinaturas digitais RSA, certificados digitais X.509 e autenticação por meio de um grupo de usuários XAuth. Dependendo do cenário onde queremos implementar o IPsec, um método de autenticação ou outro será usado, cada um desses métodos tem vantagens e desvantagens que serão mencionadas. A seguir, explicamos esses quatro métodos em detalhes.
Chave compartilhada
A chave compartilhada é uma chave composta por uma sequência de caracteres (para toda a vida) que apenas as duas extremidades da comunicação saberão para estabelecer a conexão IPsec. Através da utilização de algoritmos de autenticação (HASH), será verificado se as chaves estão corretas sem que seja necessário revelá-las. Para que este método seja seguro, deve haver uma chave para cada par de participantes na comunicação. Este tipo de autenticação não é viável para muitos participantes, pois haverá um grande número de chaves.
Embora sejam usados hashes para a troca de chaves na conexão, antes dessa conexão as chaves devem estar nas duas pontas da comunicação, por isso, não podemos saber com certeza se aquela chave foi capturada no momento do envio. Só podemos garantir que é seguro se o entregarmos em mãos. Esta técnica é útil para redes pequenas, mas para redes médias e grandes é totalmente inviável.
Assinaturas digitais RSA
O IPsec funciona com o protocolo IKE para gerenciamento automático de chaves e segurança, usa assinaturas digitais RSA para a troca segura de chaves por meio do par de chaves públicas e privadas. Essas chaves têm o mesmo problema que a chave compartilhada, de alguma forma temos que enviar as chaves para “o outro lado”, mas podemos modificar as chaves com segurança usando o protocolo IKE.
Portanto, para proteger a rede, é aconselhável alterar essas chaves regularmente. Essas assinaturas RSA fornecem autenticação e confidencialidade à rede.
Certificados X.509
Uma das formas mais seguras de autenticação em IPsec é trabalhar com certificados digitais, criando uma infraestrutura de chave pública (PKI) com sua CA (Autoridade de Certificação) correspondente, o certificado digital do servidor e os certificados digitais dos clientes. Graças a estes certificados digitais, podemos estabelecer uma autenticação muito robusta, além disso, também podemos trabalhar com certificados digitais, esses certificados contêm a chave pública do proprietário e sua identificação. O proprietário também tem um par de chaves públicas e privadas para operar no momento da validação.
O uso desses certificados faz com que o protocolo PKI apareça em cena para autenticar os nós envolvidos na comunicação IPsec. O uso desta PKI auxilia na tarefa de criar novos certificados e remover outros. A validade do certificado digital é concedida pela PKI, esta PKI integra a CA que contém a chave pública e a identidade do proprietário. Os terminais envolvidos na conexão IPsec reconhecerão a CA como válida, uma vez que possuem uma cópia dessa CA (a chave pública da CA).
A validação do certificado é feita usando a lista de revogação de certificado (CRL) que é armazenada na PKI. Todos os participantes terão uma cópia desta CRL que é constantemente atualizada.
Autenticação de grupo de usuários XAuth
Este método adiciona um usuário e uma senha aos certificados digitais vistos anteriormente (X.509), de forma que, além de validar o certificado, também validará o usuário e a senha. Para validar esses usuários e senhas, podemos usar um servidor Radius, ou diretamente um pequeno banco de dados com a lista de usuários e senhas.
Estabelecendo a conexão
A negociação de um túnel IPsec é feita através do protocolo IKE que nos fornecerá uma conexão criptografada e autenticada entre os dois extremos da comunicação. No procedimento de conexão, as chaves e a segurança usadas para estabelecer a conexão IPsec serão acordadas. O procedimento de conexão é realizado em duas partes distintas. Explicamos essas duas partes a seguir.
1. Fornece autenticação e segurança para a conexão
Para proteger a conexão, um algoritmo de criptografia simétrico e uma assinatura HMAC serão usados. As chaves são trocadas usando um algoritmo de troca de chaves, como Diffie-Hellman. Este método não garante que os participantes sejam quem dizem ser, portanto, usaremos uma chave pré-compartilhada ou certificados digitais.
A primeira parte da comunicação termina quando os parâmetros de segurança são acordados e o canal de comunicação é protegido.
2. Forneça confidencialidade de dados.
O canal seguro IKE que estabelecemos é usado para negociar parâmetros de segurança IPsec específicos (cabeçalho AH ou ESP, algoritmos de autenticação, etc.). Esses parâmetros específicos podem incluir novas chaves Diffie-Hellman, para fornecer maior segurança, desde que tenhamos configurado o PFS (Perfect Direct Confidentiality), que é altamente recomendado para tornar a VPN ainda mais robusta.
Serviços de segurança oferecidos pelo IPsec
Confidencialidade
O serviço de confidencialidade é obtido por meio da função de criptografia incluída no protocolo ESP. Nesse caso, é aconselhável ativar a opção de autenticação, pois, se a integridade dos dados não for garantida, a criptografia é inútil. Isso se deve ao fato de que, embora os dados não pudessem ser interpretados por ninguém em trânsito, eles poderiam ser alterados enviando tráfego sem sentido para o destinatário da mensagem que seria aceito como tráfego válido.
Além de oferecer criptografia de tráfego, o protocolo ESP também possui ferramentas para ocultar o tipo de comunicação que está sendo realizada; para isso, permite inserir caracteres de preenchimento no conteúdo dos dados do pacote, de forma que o verdadeiro comprimento do pacote seja ocultado. Esta é uma proteção útil contra técnicas de análise de tráfego, que permite a um invasor deduzir informações úteis a partir do estudo das características do tráfego criptografado.
Integridade e autenticação da origem dos dados
O protocolo AH é o mais adequado se nenhuma criptografia for necessária. A opção de autenticação do protocolo ESP oferece funcionalidade semelhante, embora essa proteção, ao contrário do AH, não inclua o cabeçalho IP. Como mencionado anteriormente, esta opção é de grande importância para aquelas aplicações nas quais é importante garantir a invariabilidade do conteúdo dos pacotes IP.
Detecção de repetição
A autenticação protege contra spoofing de IP, no entanto, um invasor ainda pode capturar pacotes válidos e encaminhá-los ao destino. Para evitar esse ataque, tanto o ESP quanto o AH incorporam um procedimento para detectar pacotes repetidos. O referido procedimento é baseado em um número de sequência incluído no cabeçalho ESP ou AH, o remetente incrementa esse número para cada datagrama que envia e o receptor o verifica, de modo que os pacotes repetidos sejam ignorados.
Esta sequência não pode ser modificada pelo invasor, pois está protegida por meio da opção de integridade para qualquer um dos dois protocolos (AH e ESP) e qualquer modificação neste número causaria um erro na verificação de integridade do pacote.
Controle de acesso: autenticação e autorização
Como o uso de ESP e AH requer conhecimento de chaves, e essas chaves são distribuídas de forma segura por meio de uma sessão IKE na qual os dois nós se autenticam, há a garantia de que apenas os computadores desejados participem da comunicação.
Vale esclarecer que a autenticação válida não implica acesso total aos recursos, uma vez que o IPSec também fornece funções de autorização. Durante a negociação IKE, é especificado o fluxo de tráfego IP que circulará pela conexão IPSec. Esta especificação é semelhante a um filtro de pacotes, considerando o protocolo, os endereços IP das portas de origem e destino, o byte “TOS” e outros campos. Por exemplo, o IPSec pode ser usado para permitir o acesso de uma filial à rede local do centro.
Eu não repudio
O serviço de não repúdio é possível usando IKE com autenticação de certificado digital. Nesse caso, o procedimento de autenticação é baseado na assinatura digital de uma mensagem que contém a identidade do participante. Esta assinatura, graças ao vínculo entre a chave pública e a identidade que o certificado digital garante, é a prova inequívoca de que foi estabelecida uma ligação IPSec com um determinado computador, de forma que não pode negar. Na prática, entretanto, esse teste é mais complexo, pois exigiria o armazenamento das mensagens de negociação IKE.
L2TP / IPsec - o que é isso?
L2TP (Layer 2 Tunneling Protocol) é um protocolo usado para VPN que foi projetado por um grupo de trabalho da IETF, como herdeiro do PPTP, e foi criado para corrigir as deficiências desse protocolo e se estabelecer como um padrão. L2TP usa PPP para fornecer acesso dial-up, que pode ser tunelado pela Internet para um ponto especificado. O L2TP inclui os mecanismos de autenticação do PPP, PAP e CHAP, além disso, semelhante ao PPTP, suporta o uso desses protocolos de autenticação, como o RADIUS.
Embora o L2TP ofereça acesso com suporte a vários protocolos e acesso a redes locais remotas, ele não possui características criptográficas particularmente robustas. A operação de autenticação é realizada apenas entre os pontos finais do túnel, mas não para cada um dos pacotes que trafegam por ele. Isso pode causar spoofing em algum lugar dentro do túnel. Sem verificar a integridade de cada pacote, seria possível realizar um ataque de negação de serviço usando mensagens de controle falsas que encerram o túnel L2TP subjacente ou a conexão PPP.
O L2TP não criptografa de forma robusta o tráfego de dados do usuário, causando problemas quando é importante manter a confidencialidade dos dados. Apesar de as informações contidas nos pacotes poderem ser criptografadas, este protocolo não possui mecanismos para geração automática de chaves, ou atualização automática de chaves. Isso pode dar a alguém que escuta na rede e descobre uma única chave para ter acesso a todos os dados transmitidos.
Levando em consideração todos esses pontos fracos do L2TP, o IETF tomou a decisão de usar os protocolos do próprio protocolo IPsec, para proteger os dados que trafegam pelo túnel L2TP. Por este motivo, são sempre escritos “L2TP / IPsec”, porque os dois protocolos são usados simultaneamente, e este protocolo conjunto é amplamente utilizado. Pode-se dizer que o L2TP é o protocolo no nível da camada de “enlace”, e que não possui segurança, porém o IPSec fornece a segurança na camada de rede para que o uso deste protocolo seja seguro.
Por este motivo, sempre encontraremos a nomenclatura L2TP / IPSec junto, pois os dois protocolos são usados para ter uma conexão VPN segura.
Conclusões
O IPSec é um padrão de segurança extraordinariamente poderoso e flexível. Sua importância reside no fato de abordar uma lacuna tradicional do protocolo IP: a segurança. Graças ao IPSec, agora é possível usar redes IP para aplicativos críticos, como transações comerciais entre empresas. Ao mesmo tempo, é a solução ideal para aqueles cenários em que a segurança é exigida, independentemente da aplicação, por isso é uma peça essencial na segurança de redes IP. O protocolo IPSec já é um dos componentes básicos de segurança em redes IP hoje.