[Anterior]

 

[Próxima]

 Associações Seguras

A aplicação de um algoritmo de criptografia num pacote é chamada no IPSec de transformação. Durante a configuração de uma conexão entre dois nós podem ser definidas uma ou mais transformações.

 

Todo o tráfego de uma comunicação via IPSec é executado sob o domínio de uma associação segura (AS), que é uma entidade peer-to-peer e simplex, responsável por todas as informações de controle dessa sessão IPSec entre os dois nós.

 

Uma associação de segurança é identificada unicamente por três parâmetros: o SPI (Security Parameter Index), o endereço IP de destino e o identificador do protocolo (AH ou ESP).

 - o SPI é uma string de 32 bits associada com uma e somente uma AS e com significância apenas local (nó onde a AS foi criada). É definido durante a negociação que antecede o estabelecimento da mesma. Assim, todos os membros de uma AS devem conhecer o SPI correspondente e usá-lo durante a comunicação;

 - o endereço IP de destino pode ser unicast, broadcast ou ainda multicast. No entanto, para a definição dos mecanismos de gerenciamento de AS, o IPSec assume um endereço destino unicast, estendendo as definições para os casos de broadcast e multicast;

 - o identificador do protocolo é o número 51 para o AH e o número 50 para o ESP.

 

Ressalta-se que a negociação para o estabelecimento de uma AS envolve a definição da chave, os algoritmos de criptografia e autenticação e os parâmetros usados por estes algoritmos.

 

Para seu funcionamento o IPSec define duas estruturas de dados que são armazenadas em cada nó da rede que o execute: o SPD (Security Policy Database) e o SAD (Security Association Database).

 

O SPD é composto por um conjunto de regras que determinam como processar os pacotes que chegam numa interface. O SAD armazena os parâmetros das AS´s definidas para o nó. Ele é um banco de dados dinâmico, ou seja, suas entradas são excluídas após o término da SA correspondente.

 

Univocamente uma SA é identificada no SAD através dos 3 parâmetros que a definem: SPI (Security Parameters Index); endereço IP do destino e protocolo de segurança utilizado (AH ou ESP). Além desses parâmetros, o SAD armazena também outras informações das AS’s:

 

-         Contador do número de seqüência dos datagramas (32 bits);

-         Flag que sinaliza o estouro (overflow) do número de seqüência;

-         Janela de anti-replay;

-         Informações do AH;

-         Informações do ESP;

-         Tempo de vida da SA;

-         Modo de funcionamento (túnel ou transporte);

-         MTU (Maximun Transmit Unit) do caminho;

 

Funcionamento:

Todo pacote, ao chegar numa interface, é submetido às entradas da SPD a fim de ser feita uma relação entre a entrada e uma das AS’s do SAD. Se não houver nenhuma especificação para o pacote, esse pode ser descartado ou simplesmente não ser tratado pelo IPSec. Caso contrário, o pacote sofrerá a transformação solicitada pela AS relacionada com a entrada do SPD.

Uma entrada do SPD é formada por campos chamados de seletores. Os seletores são campos do protocolo IP ou de um dos seus protocolos superiores. Os seguintes campos podem compor uma entrada do SPD:

 

-         Endereço IP de destino;

-         Endereço IP da fonte;

-         ID do usuário;

-         Marcação de sensibilidade dos dados;

-         Protocolo de transporte;

-         Protocolo do IPSec;

-         Portas origem e destino;

-         Classe do IPv6;

-         Marcação de fluxo do IPv6;

-         ToS (Type of Service) do IPv4.

 

Uma AS define uma única transformação aplicada nos pacotes que trafegam naquela conexão. Num mesmo instante podem ser estabelecidas diversas AS’s entre dois nós, cada uma realizando uma transformação diferente nos pacotes.

 

Modos de trabalho:

As AS’s podem trabalhar em dois modos: Transporte e Túnel.

 

No modo transporte, uma Associação de Segurança é estabelecida entre dois hosts (host-to-host). Nesse modo, o escopo de proteção do pacote restringe-se ao payload do IP (segmento TCP ou UDP e pacote ICMP).

 

O modo túnel é uma Associação de Segurança aplicada a um túnel IP. Nesse caso, o escopo da proteção é todo o pacote IP, pois um novo cabeçalho IP é gerado e o cabeçalho original é incluído no payload do novo cabeçalho IP.  Em uma AS no modo túnel, o chamado cabeçalho IP externo especifica o destino no contexto do IPSec e o cabeçalho IP interno especifica o destino real do pacote IP.

Esse modo é usado para prover segurança para comunicações entre redes (subnet-to-subnet) ou entre uma estação e uma rede (host-to-subnet), tipicamente aplicações de VPN. Quando pelo menos um dos membros de uma AS for um gateway de segurança, ou seja, for um gateway que implementa IPSec, então a AS deverá ser estabelecida em modo túnel.

 

Na figura abaixo, observa-se a alteração nos pacotes causada pela implementação do IPSec em cada um dos modos:

 

 

 

Implementações:

De acordo com a RFC2401, o IPSec pode ser implementado de 3 formas diferentes:

 

-         Integrado ao software nativo do IP: exige programação do código fonte do IP.

-         BITS (Bump In The Stack): entre a camada IP e os drivers da rede, não existe necessidade de alterar o código do IP. Usualmente utilizado em hosts.

-         BITW (Bump In The Wire): em um hardware conectado na rede que realiza as funções do IPSec. Usualmente utilizado em gateways de segurança.

-         de informações na rede.

 

[Anterior]

 

[Próxima]