• Nenhum resultado encontrado

3. Segurança em Redes WiMA

3.2 Associações de Segurança e o Protocolo PKM

As redes WiMAX utilizam um mecanismo de gerenciamento de chaves privadas PKM (Privacy Key Management) e os certificados digitais, mais especificamente o certificado X.509 para garantir a autenticidade dos usuários que queiram utilizar os

serviços da rede, além da criptografia para proteger suas mensagens de comunicação e os dados da rede (Pelaez et. al., 2008).

A utilização de técnicas cada vez mais robustas e contendo mecanismos de segurança mais complexos para garantir a segurança e se precaver dos diversos tipos de ataques pode gerar sobrecarga e atrasos cada vez maiores no processo envolvido, prejudicando desta forma a QoS e a QoE das aplicações, do fluxo de serviços e da rede, sobretudo, quando a SS móvel precisar realizar um procedimento de handover.

As associações de segurança (Security Association – SA) são informações protegidas pela conexão compartilhada entre duas redes com o objetivo de transmitir informações de forma segura. Estas informações podem ser compartilhadas também entre as BSs e um ou mais clientes (Chandra, 2008).

Existem três tipos de associações de segurança: as SAs primárias, as SAs estáticas e as SAs dinâmicas.

• As associações de segurança primárias são estabelecidas pelas estações assinantes (pelos clientes) durante o seu processo de inicialização.

• As associações de segurança estáticas são fornecidas pelas BSs.

• As associações de segurança dinâmicas são estabelecidas e eliminadas conforme o início e o término do fluxo de serviços específicos.

Tanto as SAs estáticas quanto as dinâmicas podem ser compartilhadas por inúmeras SSs, sendo que cada SA é identificada de forma particular através de um SAID (Security Association Identifier). As SAs possuem duas chaves de criptografia de tráfego (TEKs): a chave atual de operação e a nova chave já solicitada para quando a primeira perder seu tempo de vida.

A base da segurança no WiMAX móvel definida pelo padrão IEEE 802.16e encontra-se sobre o protocolo PKM. O protocolo gerencia a segurança MAC usando um controle de criptografia de tráfego, troca de chaves de autenticação e enviando mensagens seguras em Multicast/Broadcast para a rede.

O protocolo de gerenciamento de chaves privadas provê uma sincronização segura dos dados relativos a chaves de segurança entre as BSs e as SSs, permitindo assim, uma forma segura de comunicação entre a rede e o cliente.

O protocolo serve também como uma maneira das estações clientes obterem autorização para a utilização de serviços junto à estação base e se utiliza de certificados

digitais X.509, do algoritmo de criptografia de chave pública RSA (Rivest Shamir Adleman) e outros algoritmos para que seja assegurada a troca de chaves entre as estações base e as estações cliente.

Existem dois tipos de certificados digitais X.509. Um deles possui a função de identificar fabricantes específicos de dispositivos IEEE 802.16, podendo desta forma, ser assinado pelo próprio fabricante ou por terceiros que possuam tal responsabilidade. O outro tipo identifica uma estação assinante específica contendo sua chave pública e seu endereço MAC. Tal certificado é normalmente emitido pelo fabricante do cliente.

A primeira mensagem (opcional), PKM-REQ, envia uma informação de autenticação, que contém o certificado do fabricante, assumindo que todos os dispositivos fabricados por ele são confiáveis. Se a estação base receptora desta primeira mensagem estiver pré-configurada pela política de segurança para permitir apenas dispositivos previamente conhecidos, esta mensagem será automaticamente ignorada.

Independente a isso, a segunda mensagem, PKM-REQ novamente, envia uma requisição de autenticação e possui o certificado X.509 da estação assinante, uma descrição dos algoritmos de criptografia os quais ele suporta e o identificador básico da conexão que se tornará o SAID primário do cliente. Esta segunda mensagem é enviada imediatamente após o envio da primeira (caso seja enviada).

Caso a SS seja autorizada, a BS responde com uma terceira mensagem, PKM- RSP, com uma resposta de autenticação. Esta mensagem possui a AK (Authentication Key) criptografada com chave pública da estação cliente (contida no certificado X.509) e seu respectivo lifetime. Este protocolo assume que somente as estações em questão possuirão a AK. Após esse período inicial, a SS busca periodicamente uma re- autorização com a estação base.

A Figura 10 mostra uma comunicação segura entre a SS e a BS interligada a um servidor RADIUS (Remote Authentication Dial in User Service) para prover o AAA a uma arquitetura WiMAX em conjunto ao PKM (PKMv1 ou PKMv2) com a criptografia do RSA (Rivest Shamir Adleman) ou EAP (Extensible Authentication Protocol).

Figura 10 - Exemplo da comunicação segura em uma rede IEEE 802.16/WiMAX

Como o cliente é autenticado, o processo previne ataques partindo de estações assinantes clonadas1. No entanto, como nenhuma certificação digital é fornecida pela BS e sua resposta é construída utilizando informações públicas, os clientes podem sofrer ataques partindo de estações base forjadas (clonadas).

3.3 Autenticação

Gerenciadores da rede necessitam de proteção contra o uso fraudulento e usuários necessitam de um forte esquema de segurança para impedir que terceiros possam usufruir de suas assinaturas e gerar custos por serviços que não utilizaram.

Além disso, mecanismos de segurança também têm que assegurar que os dados do usuário não sejam interceptados nem decodificados por qualquer um, além da rede e do usuário. Semelhante a outros sistemas sem fios, a segurança é alcançada através da autenticação do usuário durante o procedimento de entrada de rede e mantida periodicamente durante todo o período de sua conexão. Para proteger os dados

1

Um tipo de ataque comum em redes de computadores onde um usuário malicioso se faz passar por um cliente (forjando sua assinatura) da rede tentando utilizar de seus serviços.

transmitidos, a criptografia é usada através de uma chave individual por usuário (Sauter, 2006) (Dutta et. al., 2008).

Diferentemente de outros sistemas sem fio, o WiMAX utiliza chaves públicas durante a autenticação e a criptografia a fim de validar as credenciais das estações assinantes. O método trabalha da seguinte maneira: cada SS recebe de seu fabricante uma chave pública e uma chave privada. A chave pública da estação que pertence ao usuário assinante é conhecida pela rede, enquanto os demais dados fundamentais, tal como a chave privada nunca será transmitida através da interface aérea (Sikkens, 2008).

Dados criptografados com a chave pública só podem ser decriptografados pela chave privada correspondente. O processo funciona também de forma inversa e jamais permitirá que os dados sejam criptografados e decriptografados pela mesma chave utilizada no primeiro passo, ou seja, jamais será permitido criptografar e decriptografar com a mesma chave. Em outros sistemas diferentes, a estação assinante e a rede não possuem a mesma chave para a autenticação, mas usam um par de chaves pública/privada (Sauter, 2006).

Durante um processo de comunicação entre um usuário e uma rede ou mesmo entre dois usuários, os dados que necessitam ser mandados a outro destino através da interface aérea são criptografados através do par de chaves pública/privada.

Supondo que um usuário A queira enviar dados de forma segura a um usuário B. Para que o primeiro usuário criptografe os seus dados de forma a assegurar que apenas o usuário B terá conhecimento dele, este necessita conhecer um algoritmo de criptografia comum à rede com o qual o dado será criptografado. Desta forma, o usuário A utiliza a chave pública do usuário B (chave B), que é conhecida pela rede para criptografar os dados que serão transmitidos e que só poderá ser lido pelo usuário que possua a chave privada correspondente, neste caso, o usuário B.

Assim, mesmo que outros usuários ouçam a interface aérea e possam realizar algum ataque a ponto de interceptar os dados trafegados se passando pelo possível receptor como um possível usuário C, este não poderá visualizar a mensagem ou o dado que trafegou pelo canal de comunicação, pois não possuirá a chave privada pertencente ao receptor de origem ao qual a mensagem foi encaminhada inicialmente, o usuário B. A Figura 11 (Kurose & Ross, 2008) apresenta uma explicação melhorada para a descrição e para um melhor entendimento do conceito de chaves públicas/privadas.

Figura 11 - Dados transmitidos e interceptados na interface aérea pelo usuário C

Além do par de chaves pública/privada, um certificado X.509 é utilizado pelo processo de autenticação do WiMAX (Housley et. al., 1999). O certificado é emitido por uma autoridade certificadora (Certification Authority – CA) e utiliza uma propriedade bem conhecida pela estação assinante, o endereço MAC como a sua chave pública. A CA adiciona uma assinatura ao certificado, que é uma cópia criptografada do certificado X.509 que contém tanto o endereço MAC quanto a chave pública do usuário. A criptografia da assinatura é executada com a chave privada da CA.

A chave pública da CA é conhecida pela BS da rede que assim pode decriptografar a assinatura e comparar os valores com o endereço MAC e a chave pública enviados sem criptografia.

Um hacker em potencial poderia modificar apenas a parte clara do texto do certificado, mas não a assinatura, pois apenas a chave privada (e não a chave pública) da CA pode ser usada para gerar uma assinatura.

Se o certificado é modificado, por exemplo, e um invasor tentar associar um endereço MAC diferente com uma chave pública, a assinatura e a parte clara do certificado não iriam emparelhar, divergindo e fazendo com que a autenticação falhasse. Como a chave pública da CA é conhecida, um invasor também poderia verificar a validade do certificado. Porém, o mesmo só poderia validar um assinante. Ele não

poderia usar a informação para adquirir acesso à rede, uma vez que a chave privada do usuário não é parte do certificado. Até mesmo se o invasor tentasse mudar o MAC do seu dispositivo para se igualar ao endereço do certificado interceptado, a autenticação ainda seria inútil, pois a chave privada que pertence ao certificado ainda é desconhecida e comunicações futuras com a rede ainda falhariam (Sauter, 2006).

Por outro lado, é possível no WiMAX que o fabricante da estação assinante possua sua própria CA e assine seu próprio certificado. A chave pública do fabricante da CA é dada ao operador da rede, que estabelece a relação de confiança necessária pelo certificado (Bogdanoski et. al., 2008). A Figura 12 mostra o processo de confiabilidade entre uma estação assinante WiMAX, a CA e a rede WiMAX.

Figura 12 - Relação de confiança necessária para a autenticação da SS com a Rede Durante o procedimento inicial de entrada na rede, a estação assinante envia o seu certificado X.509 à estação base. A BS confere a assinatura e retorna uma chave de autenticação (AK – Authentication Key) para o cliente, para a SS.

Para prevenir que a AK seja comprometida, ela é criptografada com a chave pública da SS que se encontra dentro do certificado.

O entendimento da AK só é possível por parte da estação assinante devido à própria possuir embutida em si uma chave privada correspondente com a qual poderá

decriptografar e ter acesso a mesma. A AK é usada para gerar chaves de criptografia para toda a troca de dados subseqüentes.

3.4 Criptografia

Uma vez que a AK é recebida da rede como parte do processo de autenticação, a SS inicia o processo de criptografia. Em um primeiro passo, a rede e a estação assinante derivam uma chave de criptografia de chaves (Key Encryption Key – KEK) da AK.

No segundo passo, a estação assinante pede a ativação da criptografia. A rede gera então uma chave de criptografia de tráfego (Traffic Encryption Key – TEK) que é usada para criptografar a conexão para o usuário. A TEK não é devolvida ao usuário de forma clara, mas é codificada através do uso da KEK. Como a rede e o cliente estão atentos a KEK, a SS pode decriptografar a TEK e pode usar isto para criptografar os dados do usuário no futuro. O tráfego de dados do usuário só pode ser modificado uma vez que a criptografia esteja correta.

A chave de criptografia tem um lifetime limitado e é de responsabilidade da SS requisitar uma nova TEK antes que o tempo de vida da atual se esgote.

O padrão IEEE 802.16 especifica dois padrões de criptografia de dados: o DES (Data Encryption Standard) e o AES (Advanced Encryption Standard).

A TEK pode ser usada como um parâmetro de entrada para uma máquina de criptografia em um 56-bit DES ou em um AES, sendo ambos capazes de executar um forte processo de criptografia de dados rapidamente.

Após a autorização e a autenticação sucessiva da estação assinante junto à estação base, a SS mantém uma máquina de estados TEK para cada um de seus SAIDs.

Periodicamente, uma mensagem de requisição de chave é enviada à BS, solicitando a renovação da chave em uso.

A cada momento, existem duas chaves ativas, sendo uma a chave atual que está sendo utilizada com lifetime encurtado devido à utilização e próxima do seu encerramento e uma chave mais recente já previamente solicitada para suprir o término do tempo de vida da primeira. A BS responde a requisição da SS com as duas chaves TEK atuais e seu tempo de vida (Carvalho et. al., 2008)

A Figura 13 mostra a troca de mensagens necessária para a autenticação no primeiro passo e a negociação das chaves de criptografia como um segundo passo, todos executados através do protocolo de gerenciamento de chaves privadas PKM.

Figura 13 - Autenticação e troca de chaves de criptografia

O padrão IEEE 802.16 especifica dois padrões de criptografia de dados: o DES (Data Encryption Standard) e o AES (Advanced Encryption Standard).

A TEK pode ser usada como um parâmetro de entrada para uma máquina de criptografia em um 56-bit DES ou em um AES, sendo ambos capazes de executar um forte processo de criptografia de dados rapidamente.

Após a autorização e a autenticação sucessiva da estação assinante junto à estação base, a SS mantém uma máquina de estados TEK para cada um de seus SAIDs.

Periodicamente, uma mensagem de requisição de chave é enviada à BS, solicitando a renovação da chave em uso.

A cada momento, existem duas chaves ativas, sendo uma a chave atual que está sendo utilizada com lifetime encurtado devido à utilização e próxima do seu

encerramento e uma chave mais recente já previamente solicitada para suprir o término do tempo de vida da primeira. A BS responde a requisição da SS com as duas chaves TEK atuais e seu tempo de vida.

Além da renovação periódica das chaves de criptografia, a SS tem também que executar re-autenticações periódicas devido ao tempo de vida limitado da AK. Tanto a rede quanto a estação assinante usam uma máquina de estados com cronômetros para assegurar que tanto a autenticação quanto a criptografia sejam sempre válidas e as novas chaves sejam obtidas enquanto a atual ainda seja válida dentro de seus respectivos lifetime.

3.4.1 Criptografia em Redes WiMAX

Como citado anteriormente, o WiMAX/IEEE 802.16 possibilita o uso de dois algoritmos de criptografia: o DES e o AES.

Enquanto a criptografia do certificado digital é feita pelo RSA de acordo com as escolha ao qual o padrão possui suporte, a criptografia de dados pode ser executada por quatro algoritmos: DES em modo CBC (Cipher-Block Chainning), o AES em modo CCM (Counter with CBC-MAC), o AES em modo CTR (também conhecido como ICM – Integer Counter Mode) e o AES em modo CBC, sendo este último, o escolhido por este trabalho devido a sua abrangência no mundo acadêmico proporcionalmente com seu excelente e complexo algoritmo de criptografia.

O DES funciona em modo CBC, o que indica que, antes de um bloco de dados ser criptografado, o mesmo realiza uma operação de “ou exclusivo” com o resultado da criptografia do resultado anterior a ele.

Além do DES que já se fazia presente nas redes Wi-Fi, o padrão do WiMAX trouxe suporte a outro padrão, mais seguro e mais robusto, o AES em modo CCM (Counter with CBC-MAC). Este modo combina os modos Counter, que gera blocos de chaves através da criptografia de valores sucessivos de um contador e do CBC-MAC (Cipher Block Chainning Message Authentication Code), que utiliza o modo CBC para a criação de um código de autenticação de mensagens.

O AES pega uma chave de criptografia e um contador como entrada para produzir um fluxo de bits. O fluxo de bits é um XOR (ou exclusivo) sobre um texto

original que sobre a ação do algoritmo de criptografia produz um texto criptografado conforme mostrado na Figura 17 (Bogdanoski et.al., 2008) (Marks et. al., 2006).

O ponto forte do algoritmo de criptografia AES com 256 bits CBC-MAC encontra-se no fator dele gerar resultados de saída da criptografia diferentes para cada vez que determinado texto ou dado necessita ser criptografado, fazendo com que seja muito difícil mesmo para programadores experientes descobrirem um padrão para descobrirem seu funcionamento e assim “roubar” a informação. A Figura 14 exemplifica o funcionamento da criptografia executada pelo AES.

Figura 14 - Criptografia do AES

O algoritmo AES é uma recomendação do padrão IEEE 802.16 devido ao mesmo prover uma proteção mais robusta e forte a roubo de serviço e a transmissão de dados pela interface aérea de redes móveis sem fio (IEEE Std 802.16e-2005, 2005).

Com a criptografia dos dados, além de prover um procedimento de autenticação confiável no qual um cliente se autentica em uma rede, o mesmo passa a utilizar seus serviços e trafegar seus dados de forma mais segura e válida, impedindo ou mesmo dificultando que terceiros possam interceptar seus dados ou usufruir de serviços ilegalmente.

Documentos relacionados