[Anterior]

 

[Próxima]

 Segurança na Internet

Os protocolos TCP/IP (Transmission Control Protocol /Internet Protocol) e a própria Internet não foram originalmente projetados tendo a segurança como prioridade, já que o número de usuários e os tipos de aplicações não requeriam maiores esforços para a garantia da mesma.

No entanto, com o rápido crescimento da Internet e o surgimento de várias aplicações, as questões relativas à segurança de redes e sistemas tornaram-se demandas inquestionáveis. Enquanto a Internet se restringia aos meios científicos e acadêmicos, os problemas de segurança não eram tão críticos porque havia um certo controle baseado nos códigos de uso ético da rede. Mas, com a abertura da Internet para o setor privado, principalmente comercial, os problemas de segurança se intensificaram e tornaram-se críticos.

A segurança está relacionada a dois grandes aspectos:

-         a certeza de que certa informação provém realmente de quem se diz ser o remetente e de que não foi modificada ao longo do percurso (integridade);

-         a certeza de que ao longo do percurso até a chegada ao destinatário, a informação não foi recebida por mais ninguém.

Esses dois grandes problemas são resolvidos respectivamente com a autenticação e a criptografia.

 


Prover segurança em que camada?

 

Uma arquitetura em camadas tem como característica fundamental a divisão das responsabilidades do envio da informação entre as diversas camadas, de forma que o usuário, no topo da pilha, possa recebê-la. O grande questionamento que se apresenta portanto é que camada deve se responsabilizar pela segurança.

 

A princípio, a solução mais fácil encontrada foi implementá-la individualmente para cada aplicação na medida em que surgiam as necessidades. Assim, surgiu o PGP para comunicação por e-mail, o SSL/TLS para navegação na Internet ou o SSH para a login remoto seguro. No entanto, apesar dessa implementação na camada aplicação ser mais simples já que não envolve o sistema operacional e o foco se restringir a uma aplicação específica, um serviço implementado nessa camada particulariza-o demais, fazendo com que haja a necessidade de um novo desenvolvimento para cada nova aplicação.

 

Nada mais natural então em se pensar que esse serviço seja oferecido por uma camada mais inferior na pilha de protocolos, de forma a unificar a solução e permitir que um único serviço resolva o problema de todas as camadas superiores. Porém, levando esse raciocínio ao extremo e descendo até a camada de rede, encontram-se dificuldades na sua implementação, já que seriam necessários links dedicados e essa não seria uma solução escalável, não servindo portanto para a Internet.

 

Assim, a solução ótima encontrada foi a de implementar o serviço de segurança na camada de inter-redes, proporcionando um controle por fluxo ou por conexão. Vários protocolos foram desenvolvidos nessa camada com esse objetivo, alguns rodam apenas sobre o IP (como o caso do GRE e do PPTP) e outros mais versáteis, são capazes de tratar não só pacotes IP mas também IPX e NetBEUI (como o caso do L2F ou L2TP).

 

Para atender a Internet, porém, o melhor seria que o próprio protocolo IP fosse capaz de oferecer esse serviço sem depender de outros protocolos, gerando uma unificação na resolução do problema. Foi proposta então a integração dessa funcionalidade à nova versão do IP (o IPv6), cujo desenvolvimento ficou a cargo do grupo de trabalho IP Security Protocol (IPSec) da IETF (Internet Engineering Task Force).

 

Com a demora da migração da Internet para a nova versão do IP (fato não ocorrido até o presente momento), um conjunto de adaptações foi feito para o IPSec poder rodar sobre o IPv4. Sua implementação é projetada através de headers especiais: headers extensions no IPv6 e um header de protocolo a mais no IPv4, normalmente colocados entre o header original do IP e seu payload

 

[Anterior]

 

[Próxima]