IPsec é um protocolo de segurança utilizado em redes privadas virtuais (VPNs) para fornecer autenticação, confidencialidade e integridade de dados entre dispositivos de rede. IKE (Internet Key Exchange) é o protocolo utilizado para gerenciar as chaves de criptografia e autenticação para as conexões IPsec. IKEv2 é a versão mais recente do protocolo IKE, que oferece melhorias em relação ao seu antecessor, como negociação mais rápida e suporte a mobilidade.

Existem vários algoritmos de criptografia que podem ser utilizados em uma conexão IPsec, incluindo DES, 3DES, AES e Blowfish. Cada um desses algoritmos tem suas próprias características, como tamanho da chave, velocidade de criptografia/descriptografia e resistência a ataques. AES é geralmente considerado o algoritmo mais forte e recomendado para uso em conexões IPsec.

Uma descrição das principais criptografias e suas características:

DES (Data Encryption Standard): um algoritmo de criptografia de chave simétrica amplamente utilizado nos primeiros dias do IPSEC, mas que agora é considerado inseguro devido à sua chave curta de 56 bits.

3DES (Triple Data Encryption Standard): um algoritmo de criptografia de chave simétrica que usa três chaves de 56 bits para aumentar a segurança.

AES (Advanced Encryption Standard): um algoritmo de criptografia de chave simétrica amplamente utilizado que suporta tamanhos de chave de 128, 192 e 256 bits.

RSA (Rivest-Shamir-Adleman): um algoritmo de criptografia de chave pública usado para autenticação e troca de chaves em IKE.

Diffie-Hellman: um algoritmo de troca de chaves usado em IKE para estabelecer chaves compartilhadas entre dispositivos.

Blowfish: é uma cifra simétrica de blocos utilizada em criptografia como uma alternativa ao DES, que possuía cerca de 19 anos de uso e era suscetível a ataques por força bruta devido ao tamanho de sua chave.

Os pontos fortes do IPsec incluem sua capacidade de fornecer segurança em camadas de rede e a habilidade de autenticar e criptografar todo o tráfego de rede. No entanto, existem pontos fracos que podem ser explorados, como a possibilidade de ataques de negação de serviço (DoS) em firewalls que implementam o protocolo IPsec.

Além disso, o gerenciamento de chaves pode ser um desafio, especialmente em grandes redes.

Os pontos fracos de exploração em IPSEC e IKE geralmente envolvem falhas no processo de autenticação, criptografia e integridade dos dados transmitidos. Alguns exemplos de CVEs incluem:

CVE-2018-5389: Uma vulnerabilidade no protocolo IKEv1 que permite a um atacante forçar um dispositivo a usar chaves criptográficas fracas.

CVE-2018-6311: Uma vulnerabilidade em dispositivos Fortinet que permite a um atacante usar o modo agressivo IKEv1 para obter acesso não autorizado à rede.

CVE-2020-10150: Uma vulnerabilidade em dispositivos Cisco que permite a um atacante enviar pacotes malformados para desencadear uma condição de negação de serviço em dispositivos VPN.

CVE-2018-5389: que se refere a uma vulnerabilidade de negação de serviço na implementação do protocolo IPsec em algumas versões doLinux.

CVE-2021-28041: que se refere a uma vulnerabilidade de injeção de código em dispositivos Fortinet que utilizam o protocolo IKE.

CVE-2019-11510: Esta vulnerabilidade afetou o software Pulse Secure VPN e permitiu que invasores acessassem informações de usuários, como senhas e nomes de usuário, sem autenticação.

CVE-2018-13379: Esta vulnerabilidade afetou o software Fortinet VPN e permitiu que invasores acessassem informações confidenciais, como senhas e chaves de criptografia, sem autenticação.

Para quebrar uma chave PSK (Pre-Shared Key) em IKE modo agressivo e main mode, é necessário capturar um handshake IKE e realizar um ataque de força bruta na chave. Ferramentas como o John the Ripper podem ser utilizadas para realizar esse tipo de ataque

Para identificar a presença de serviços VPN e obter informações sobre eles, é possível usar o Nmap, uma ferramenta de mapeamento de redes. Por exemplo, o comando “nmap -sS -p 443 –script ssl-vuln-cve2019-11510 IP_ADDRESS”pode ser usado para identificar se o serviço VPN do Pulse Secure está sendo executado em um determinado endereço IP e se ele é vulnerável à CVE-2019-11510.

Outra ferramenta útil para avaliar a segurança de serviços VPN é o Metasploit, uma plataforma de teste de penetração.

Por exemplo, o módulo “auxiliary/scanner/ip/ipsec_dos pode ser usado para realizar um ataque de negação de serviço contra um gateway VPN IPsec.

Para avaliar e identificar endpoints de uma rede, o Kali Linux oferece várias ferramentas úteis, como o nmap e o tcpdump. O nmap é uma ferramenta de varredura de portas que permite identificar quais portas estão abertas em um dispositivo. O tcpdump é uma ferramenta de captura de pacotes que permite examinar o tráfego de rede em tempo real.

Para testar a segurança de uma rede VPN, você pode usar o ike-scan, uma ferramenta que verifica se um endpoint suporta o protocolo IKE e quais versões e modos ele suporta. Além disso, o ike-scan pode ser usado para testar a força de uma chave pré-compartilhada (PSK) em IKE modo agressivo e main mode.

Para quebrar uma PSK em IKE modo agressivo e main mode, você pode usar ferramentas de força bruta, como o ike-scan em conjunto com o ike-scan-brute. No entanto, é importante lembrar que isso é ilegal e antiético, e deve ser feito apenas em sistemas para os quais você tem autorização.

Em conclusão, IPSEC e IKE são protocolos importantes para a segurança em serviços de VPN, mas também apresentam alguns pontos fracos que precisam ser avaliados e corrigidos. É importante que os administradores de rede usem ferramentas de teste e avaliação de segurança.

E para finalizar:

Para se conectar a uma VPN IPsec a partir do Kali Linux, é possível utilizar o cliente VPN padrão do sistema, que suporta o protocolo IPsec. Basta configurar o perfil da VPN com o endereço IP do servidor, o nome de usuário e a senha. Outra opção é utilizar um cliente VPN de terceiros, como o StrongSwan ou OpenVPN.

Para se conectar a uma VPN usando o Kali Linux, você precisará de alguns comandos. O primeiro passo é instalar o pacotevpnc usando o seguinte comando no terminal:

Depois disso, você precisará criar um arquivo de configuração para a sua VPN. Você pode fazer isso usando um editor de texto simples, como o “nano”o que muitos podem achar Nutella 😊 ou o “vim”. Por exemplo:

Isso abrirá o editor “nano”, e permitirá que você crie e edite o arquivo vpnc.conf. No arquivo, você deve incluir as informações da sua VPN, como o endereço IP do servidor, nome de usuário e senha.

Depois de salvar o arquivo de configuração, você pode se conectar à sua VPN usando o seguinte comando:

Isso iniciará a conexão com a sua VPN e você poderá acessar a rede privada.

Em resumo, IPSEC e IKE são protocolos de segurança importantes para serviços de VPN, permitindo que os usuários se conectem com segurança a uma rede privada pela internet. Embora tenham seus pontos fracos, eles são amplamente utilizados e têm evoluído com o tempo para se tornarem mais seguros e eficientes. É importante que os administradores de rede saibam como avaliar e identificar endpoints de suas redes, além de entender como explorar e corrigir falhas de segurança em seus sistemas. O uso de ferramentas que estão no Kali Linux, como o tcpdump, nmap e ike-scan pode ajudar nessa tarefa, permitindo a realização de testes de penetração, fingerprinting e outras técnicas de avaliação de segurança.

É importante ressaltar que essas ferramentas devem ser usadas apenas para fins de teste de penetração em redes e sistemas autorizados e sob supervisão adequada. Utilizar essas ferramentas sem autorização pode resultar em consequências legais.

Em resumo, manter os serviços VPN atualizados e avaliar regularmente a segurança desses sistemas pode ajudar a proteger as informações confidenciais e manter a integridade das redes corporativas.

Valeu pessoal, até o próximo post !!! ✌

Luiz Fernando Abreu

“A tecnologia é melhor quando une as pessoas.”

Matt Mullenweg, fundador do WordPress