Controlando o Acesso à Rede com IPsec e 802.1x

8021X-OverviewUm dos sonhos dourados de toda equipe de segurança é o de poder controlar que computadores podem se plugar em sua rede. Esse controle mitigaria uma grande quantidade de riscos associados por exemplo a computadores de terceiros inadvertidamente introduzindo worms na organização, ou a pessoas intencionalmente usar a rede interna para realizar ataques.

Ok, mas como fazer isso? Além da forma mais óbvia (segurança física) e das formas que não funcionam (usar IP estático, controlar endereço MAC), existem duas tecnologias viáveis para este controle: usar autenticação nas portas de rede através do protocolo 802.1x, ou isolar os computadores da empresa usando IPsec. Ambas são padrões abertos e ambas tem amplo suporte nos mais diversos sistemas, mas cada uma usa uma abordagem diferente para controlar esse acesso e por isso apresentam vantagens e desvantagens uma em relação a outra. Uma boa coisa no entanto é que ambas podem funcionar juntas e de certa forma se complementam.

802.1x

A solução com 802.1x é conceitualmente mais simples de se entender: ela exige que cada dispositivo se autentique antes de poder se conectar à rede. O equipamento de rede (normalmente um switch) vai obter do dispositivo suas credenciais, e somente após validá-las a porta de rede é habilitada e passa a permitir a comunicação. Esta autenticação é normalmente feita usando senhas ou certificados digitais, e a validação realizada em um servidor RADIUS.

Apesar do conceito ser simples, a implementação raramente é. Já toquei em alguns pontos que complicam a implementação de 802.1x, notadamente em redes com fio, mas mesmo uma implementação perfeita não evitará as seguintes fragilidades:

■ A autenticação e o controle de acesso são feitos pelo equipamento de rede, que passa a ser o responsável por garantir a segurança contra dispositivos indesejáveis (não supreende portanto a preferência dos técnicos de rede e dos fabricantes de equipamentos por essa tecnologia). Mas isso implica em que qualquer falha ou vulnerabilidade nestes equipamentos podem ser usados para burlar a solução. A segurança do seu servidor agora depende também da segurança do seu switch!

■ Todas as portas de acesso a rede precisam ser autenticadas para garantir a proteção, ou colocando de outra forma qualquer porta de rede que não requeira autenticação é um potencial furo de segurança. A primeira implicação disso é todo o equipamento de rede talvez tenha que ser trocado. A segunda é que qualquer porta que tenha que ser definida sem autenticação, como por exemplo para uma impressora de rede que não suporte 802.1x, vai ter que ser isolada em uma VLAN a parte e protegida por um firewall. Ou seja, uma rede que era simples vai provavelmente ficar muito mais complexa com muitas VLANs e alguns firewalls internos (para a alegria de alguns técnicos de rede, e para a tristeza de todo o resto da empresa).

■ Por ser uma solução em camada 2, a proteção do 802.1x vai até o momento em que o dispositivo foi autenticado pela rede. 802.1x não oferece proteção contra ataques do tipo man in the middle, nem garante a confidencialidade ou a integridade das comunicações. Também não protege contra um computador estarcompartilhando a conexão de rede com outros. Em resumo, 802.1x só garante que a porta de rede foi habilitada para um dispositivo autenticado.

IPsec

A solução de isolamento de domínios trabalha de forma diferente. Ela utiliza IPsec para autenticar o tráfego de rede, de forma que os computadores da empresa somente aceitam receber conexões autenticadas. Um equipamento estranho pode até se plugar na rede, usando qualquer que seja a forma, mas não conseguirá se comunicar com os equipamentos da empresa.

Não se trata de criar VPNs ou "túneis" entre os computadores, e nem é criada nenhuma interface de rede adicional. O protocolo IPsec é utilizado em modo de transporte, preservando o cabeçalho IP original e simplesmente incluindo um cabeçalho adicional com a assinatura dos dados. Como isso é feita em camada 3, isso acontece de forma transparente para todas as aplicações e para o próprio usuário, e de forma independente da infraestrutura de rede (hubs, switches, wireless, etc).

Note que a configuração normal é exigir autenticação somente que as conexões recebidas pelo sistema sejam autenticadas. Nas conexões iniciadas pelo sistema se solicita IPsec mas a comunicação é feita mesmo que ele não seja usado (o chamado "fallback to clear"). Isso permite por exemplo que a empresa possa ter impressoras que não suportem IPsec sem problemas em sua rede - afinal não é a impressora que inicia a conexão com os computadores, e sim o contrário.

Pela sua forma de funcionamento, o isolamento de domínios com IPsec tem algumas vantagens sobre o uso de 802.1x:

■ Ele não requer qualquer mudança nos equipamentos de rede da organização.

■ A segurança contra conexões não-autenticadas é feita pelo próprio sistema, e não depende da infraestrutura de rede nem da segurança de algum switch - o computador vai estar protegido onde quer que ele esteja.

■ Como existe a autenticação mútua e cada pacote de rede é assinado digitalmente, IPsec garante a integridade do tráfego e impede ataques do tipo man in the middle.

■ Opcionalmente o tráfego pode ser encriptado - excelente se a sua aplicação não implementa criptografia ou para servidores que tenham informação classificada como de alto impacto no negócio. Ou se você tem que atender a alguma exigência regulatória de encriptar determinada informação. De novo, transparente para a aplicação e para o usuário.

A implementação IPsec do Windows também inclui autorização além de autenticação, e permite que configurar por exemplo que sistemas podem ter acesso a um determinado grupo de servidor. Por exemplo, os servidores de código fonte somente são acessíveis para as máquinas dos desenvolvedores; ou computadores da área de consultoria da empresa não podem acessar sistemas da área de auditoria. Isso é feito usando somente políticas de grupo do Active Directory - muito mais simples de configurar e muito mais segura do que a abordagem "tradicional" de usar firewalls e VLANs.

Mas o que talvez seja a maior vantagem do isolamento de domínios com IPsec é que a sua organização provavelmente já adquiriu ela. O suporte a IPsec está em todos os Windows desde o Windows 2000, e a configuração é toda feita via políticas de grupo do Active Directory. A solução já está comprada e instalada, você só precisa configurar. Não dá para ser muito melhor do que isso.

IPsec tem também suas próprias limitações. Ele não impede ataques de "denial of service" onde uma máquina sature de tráfego a rede ou um determinado link - somente uma solução em camada 2 como 802.1x impediria isso. IPsec somente autentica computadores e não usuários (isso vai mudar no Windows Vista). Ele não protege o tráfego entre os sistemas e os controladores de domínio (isso também muda no Vista), e pode aumentar o tempo de failover para clusters.

Qual delas usar então?

Todas as duas tecnologias tem valor, e acredito que ambas vão ser de uso comum em todas as redes em poucos anos. Mas acredito que hoje  para a maior parte das empresas faça mais sentido implementar isolamento de domínios usando IPsec para controlar a entrada de sistemas na rede. Os custos são menores, a implementação é mais rápida (veja o caso da UVV em Vitória, que fez tudo em menos de uma semana) e a segurança é maior. A exceção seriam os segmentos de rede Wireless - nesse caso 802.1x já tem um nível de maturidade muito maior e o seu uso é praticamente obrigatório.

Parte dessa escolha vem também da minha opinião que cada sistema deve ser capaz de se defender, onde quer que ele esteja, onde quer ele esteja conectado. Depender de um firewall ou de um switch para garantir a segurança é introduzir mais um ponto de falha, e pior um que nem sempre está sob seu controle. 802.1x é uma forma excelente de se proteger a própria infraestrutura de rede, contra flood e outros ataques, mas IPsec me parece ser uma forma superior de proteger os próprios sistemas.

Aqui na Microsoft usamos isolamento de domínios com IPsec em toda a rede corporativa, que tem mais de 300 mil dispositivos conectados, e 802.1x para a rede Wireless. Siga os links para ver em muito detalhe como a implementação foi feita, os problemas encontrados e os benefícios obtidos com essas tecnologias. E neste link você pode ouvir uma palestra sobre isolamento de domínios feita por mim no TechEd do ano passado.

 

Fonte: http://blogs.technet.com/b/fcima/archive/2006/11/04/controlando-o-acesso-rede-com-ipsec-e-802-1x.aspx

.