51 lines
3.6 KiB
Markdown

# Evil Twin EAP-TLS
{{#include ../../banners/hacktricks-training.md}}
Em algum momento, precisei usar a solução proposta pelo post abaixo, mas os passos em [https://github.com/OpenSecurityResearch/hostapd-wpe](https://github.com/OpenSecurityResearch/hostapd-wpe) não estavam funcionando na versão moderna do kali (2019v3).\
De qualquer forma, é fácil fazê-los funcionar.\
Você só precisa baixar o hostapd-2.6 daqui: [https://w1.fi/releases/](https://w1.fi/releases/) e antes de compilar novamente o hostapd-wpe, instale: `apt-get install libssl1.0-dev`
### Analisando e Explorando EAP-TLS em Redes Sem Fio
#### Contexto: EAP-TLS em Redes Sem Fio
EAP-TLS é um protocolo de segurança que fornece autenticação mútua entre cliente e servidor usando certificados. A conexão é estabelecida apenas se tanto o cliente quanto o servidor autenticarem os certificados um do outro.
#### Desafio Encontrado
Durante uma avaliação, um erro interessante foi encontrado ao usar a ferramenta `hostapd-wpe`. A ferramenta rejeitou a conexão do cliente devido ao certificado do cliente ser assinado por uma Autoridade Certificadora (CA) desconhecida. Isso indicou que o cliente confiava no certificado do servidor falso, apontando para configurações de segurança frouxas no lado do cliente.
#### Objetivo: Configurando um Ataque Man-in-the-Middle (MiTM)
O objetivo era modificar a ferramenta para aceitar qualquer certificado de cliente. Isso permitiria o estabelecimento de uma conexão com a rede sem fio maliciosa e possibilitaria um ataque MiTM, potencialmente capturando credenciais em texto claro ou outros dados sensíveis.
#### Solução: Modificando `hostapd-wpe`
A análise do código-fonte do `hostapd-wpe` revelou que a validação do certificado do cliente era controlada por um parâmetro (`verify_peer`) na função OpenSSL `SSL_set_verify`. Ao mudar o valor desse parâmetro de 1 (validar) para 0 (não validar), a ferramenta foi configurada para aceitar qualquer certificado de cliente.
#### Execução do Ataque
1. **Verificação do Ambiente:** Use `airodump-ng` para monitorar redes sem fio e identificar alvos.
2. **Configurar AP Falso:** Execute o `hostapd-wpe` modificado para criar um Ponto de Acesso (AP) falso imitando a rede alvo.
3. **Personalização do Portal Cativo:** Personalize a página de login do portal cativo para parecer legítima e familiar ao usuário alvo.
4. **Ataque de Desautenticação:** Opcionalmente, realize um ataque de desautenticação para desconectar o cliente da rede legítima e conectá-lo ao AP falso.
5. **Capturando Credenciais:** Uma vez que o cliente se conecta ao AP falso e interage com o portal cativo, suas credenciais são capturadas.
#### Observações do Ataque
- Em máquinas Windows, o sistema pode se conectar automaticamente ao AP falso, apresentando o portal cativo quando a navegação na web é tentada.
- Em um iPhone, o usuário pode ser solicitado a aceitar um novo certificado e, em seguida, apresentado ao portal cativo.
#### Conclusão
Embora o EAP-TLS seja considerado seguro, sua eficácia depende fortemente da configuração correta e do comportamento cauteloso dos usuários finais. Dispositivos mal configurados ou usuários desavisados aceitando certificados falsos podem comprometer a segurança de uma rede protegida por EAP-TLS.
Para mais detalhes, consulte https://versprite.com/blog/application-security/eap-tls-wireless-infrastructure/
## Referências
- [https://versprite.com/blog/application-security/eap-tls-wireless-infrastructure/](https://versprite.com/blog/application-security/eap-tls-wireless-infrastructure/)
{{#include ../../banners/hacktricks-training.md}}