• Nenhum resultado encontrado

3. Segurança em Redes WiMA

3.5 Subcamada de Segurança

Como mencionado anteriormente, a autenticação é garantida durante o procedimento de entrada na rede e permanece em funcionamento protegendo os dados transmitidos através da criptografia destes. Isso é permitido devido à implementação da subcamada de segurança que se encontra na camada dois, citada anteriormente. Embora

muitas técnicas de segurança sejam implementadas em diversas camadas de rede, a autenticação feita pela camada MAC é a mais importante e fundamental quando se trata de redes WiMAX (WiMAX Forum, 2009) (Ahson & Ilyas, 2008).

A subcamada de segurança provê privacidade, autenticação e confidencialidade a clientes de redes de banda larga sem fio. Isso se faz através da criptografia das comunicações que transitam entre a SS e a BS e vice-versa.

Além disso, a subcamada de segurança proporciona operadores com forte proteção contra o roubo de serviço. A BS protege contra o acesso não autorizado ao serviço de transporte destes dados assegurando o fluxo de serviços associados pela rede. A subcamada de segurança emprega um protocolo autenticado de gerenciamento de chaves cliente/servidor em que a BS, controla a distribuição de chaves para a SS, assim como provê a criptografia do fluxo de serviços associados através da rede. Adicionalmente, os mecanismos de segurança básicos são fortalecidos pela autenticação de dispositivos assinantes baseado na adição do certificado digital para o protocolo de gerenciamento de chaves (Marks et. al., 2006) (Carvalho et. al., 2008).

A arquitetura dessa subcamada é dividida em dois protocolos: Um protocolo de encapsulamento responsável pela criptografia dos pacotes de dados através de redes fixas BWA (Broadband Wireless Access) e o protocolo PKM que permite uma distribuição segura de chaves de dados da BS para a SS (Marks et. al., 2006). A Figura 15 (IEEE Std 802.16e-2005, 2005) apresenta os componentes de segurança da pilha.

Serviços de criptografia são definidos como um conjunto de capacidades dentro da subcamada de segurança MAC. Informações específicas do cabeçalho MAC para criptografia são alocadas no formato do cabeçalho genérico MAC.

A criptografia é aplicada para a carga útil do MAC PDU (Media Access Control Packet Data Unit) quando se faz necessário.

O cabeçalho genérico MAC não é criptografado. Todas as mensagens de administração MAC serão enviadas para facilitar o registro, o ranging e a operação normal do MAC.

O protocolo PKM é responsável tanto pela autenticação mútua quanto a autenticação unilateral (onde a BS autentica a SS e não o contrário). Ele também suporta a periódica re-autenticação/re-autorização e atualização de chaves.

O protocolo de administração de chaves privadas usa o EAP (Extensible Authentication Protocol) (Aboba et. al., 2004) ou o certificado digital X.509 (ITU-T- X.509, 1998) junto com o algoritmo de chave o pública RSA (Kaliski et. al., 1998) ou uma sucessão que começa pela autenticação RSA e segue através da autenticação de EAP. O protocolo usa poderosos algoritmos de criptografia para executar com segurança a troca de chaves entre a SS e a BS.

O protocolo de autenticação PKM estabelece um segredo compartilhado (AK) entre a SS e a BS. O segredo compartilhado é usado para assegurar a troca PKM subseqüente de TEKs. Esse mecanismo de dois níveis para a distribuição de chaves permite a atualização das TEKs sem incorrer em grandes sobrecargas devido às operações computacionais intensivas (Marks, 2006).

Uma BS autentica um cliente SS durante a autorização inicial. Cada SS apresenta suas credenciais: um certificado digital X.509 único emitido pelo fabricante da SS (no caso da autenticação RSA) ou uma credencial específica de operador (no caso de uma autenticação baseada no EAP).

A BS associa a identidade autenticada de um cliente SS e autoriza o acesso a serviços de dados que o mesmo é autorizado acessar. Assim, com a troca de AK, a BS determina a identidade autenticada do cliente SS e os serviços que o mesmo terá autorização para acessar. Considerando que a BS autenticou a SS, o cliente fica

protegido contra ataques que empreguem clones da SS válida, com ataques como o masquerading1 (Marks, 2006).

Uma SS usa o protocolo PKM para obter a autorização e o chaveamento do tráfego da BS. O PKM suporta dois mecanismos distintos de protocolos de autenticação:

• O protocolo RSA (obrigatório no PKMv1 e opcional no PKMv2) • O EAP (opcional)

Para a execução de testes e dos cenários de simulação na implementação da subcamada de segurança e da arquitetura de pré-autenticação, este trabalho focou-se no protocolo RSA que se utiliza do certificado digital X.509 para validar suas SSs clientes.

O protocolo de autenticação PKM RSA usa o certificado digital X.509, o algoritmo de criptografia de chave pública RSA que liga a criptografia de chave pública RSA aos endereços MAC das SSs.

3.5.1 Protocolo PKMv1 (versão 1)

Existem dois protocolos do gerenciamento de chave de privacidade permitidas pelo padrão IEEE 802.16e: PKMv1 e o PKMv2. A segunda versão tem algumas características melhoradas, como uma nova hierarquia de chaves (Marks, 2006).

Inicialmente o trabalho preocupou-se com o entendimento do protocolo de gerenciamento de chaves de privadas versão um (PKMv1). Embora já existisse o protocolo PKMv2 (versão 2), o mesmo ainda encontrava-se em um período de testes no início da pesquisa e era relativamente recente.

Com isso, o trabalho preocupou-se primeiramente com a implementação do protocolo PKMv1, que embora seja menos poderoso, era uma opção permitida pelo padrão IEEE 802.16e (Marks, 2006) (IEEE Std 802.16e-2005, 2005), que possibilitava a sua escolha e atendia as necessidades da proposta em fornecer a implementação da subcamada de segurança de forma a prover proteção ao cliente do WiMAX.

A autorização da SS é controlada por uma máquina de estados de autorização e é um processo onde a BS garante a autenticidade de uma SS. A BS autentica uma SS

1

Tipo de ataque onde uma SS falsa tenta se passar pela original na tentativa de validar sua autenticação junto à rede.

através de uma chave de autenticação (AK), da qual é derivada uma chave de criptografia de chaves (KEK), utilizadas para a transferência segura das chaves de criptografia de tráfego (TEK), sendo estas últimas as chaves que criptografam os dados dos fluxos de serviços.

Uma SS usa o protocolo PKM para obter a autorização e o chaveamento de tráfego da BS, além de permitir a atualização das chaves e a re-autorização periodicamente. O protocolo de gerenciamento de chaves, conforme definido e escolhido para a execução deste trabalho usa os certificados digitais X.509, o algoritmo de criptografia de chave pública RSA e poderoso algoritmo AES com 256 bits para criptografar todo o tráfego da rede posterior ao processo de autenticação.

O protocolo PKM segue um modelo cliente/servidor, onde a SS, um “cliente” PKM, requisita as chaves necessárias, e a BS, o “servidor” PKM responde a essas requisições garantindo que o corresponde cliente receba individualmente as chaves correspondentes a ele autorizadas. O protocolo faz uso do gerenciamento de mensagens MAC com as mensagens definidas anteriormente PKM-REQ e PKM-RSP para implantar o processo de autenticação da subcamada de segurança definida pelo padrão.

Quando duas partes estabelecem uma ligação, eles são protegidos através de um conjunto de protocolos que garantem a confidencialidade e o acesso único das partes autorizadas. A mensagem única entre as duas entidades; nomeadamente a estação assinante (SS) e a estação base (BS) é feito na camada MAC através da subcamada de segurança (Li, 2006):

Uma BS autentica o cliente SS durante a troca de autorização inicial. Cada SS possui um único certificado digital X.509 que é garantido pelo fabricante da estação assinante correspondente. O certificado digital possui a chave pública e o endereço MAC da SS.

Quando requisita a AK, a SS apresenta a BS correspondente o seu certificado digital. A BS por sua vez, verificada a validade do mesmo, usa a chave pública validada para criptografar a AK e então responder a requisição da SS com a chave de autenticação. O uso do certificado X.509 previne o emprego de ataques do tipo cloned1.

1

Um tipo de ataque de redes de computadores onde um usuário ou uma estação se fazem passar por outra.

3.5.1.1 Autorização da SS, AK e a TEK

A autorização da SS é controlada pela máquina de estados de autorização e é um processo da (Kaliski, 1998):

a) BS autenticando a identidade de um cliente SS;

b) BS liberando a SS autenticada uma AK, a qual é derivada gerando uma KEK;

c) BS provendo a SS autenticada com identidades (por exemplo, a SAID) e propriedades de SAs primárias e estáticas.

Depois de ser autorizada com sucesso, a SS periodicamente verifica a re- autorização junto a BS também através do gerenciamento da máquina de estados de autorização, para que assim possa manter seu status de autorização válido com a BS e ser capaz de atualizar as TEKs constantemente.

O procedimento de autorização se inicia através de uma mensagem da SS em direção a respectiva BS com informações básicas da tentativa de autorização que está por vir.

Logo após o envio da primeira mensagem de informação, a SS envia uma mensagem de requisição de autorização, solicitando por uma AK assim como uma SAID identificando as associações de segurança estática da SS que está sendo autorizada. A requisição de autorização inclui:

a) O certificado X.509 assegurado pelo fabricante;

b) A descrição dos algoritmos de criptografia suportados na requisição da SS; c) O CID básico da SS. O CID básico é o primeiro CID estático que a BS

assina para uma SS durante o ranging inicial. O primeiro SAID ao CID básico.

Caso seja validada com sucesso, a SS recebe uma AK criptografada com sua chave pública assim como seu tempo de vida. A SS recebe também informações sobre as associações de segurança.

A SS deve atualizar periodicamente a sua AK emitindo uma requisição de autorização a BS. O processo de re-autorização é idêntico a autorização inicial com

exceção à mensagem de informação de autenticação que não deve mais ser enviada. Depois do processo de autorização inicial e da geração da KEK através da derivação da AK, um novo procedimento de troca de mensagens se inicia entre as estações envolvidas.

Depois do processo de autorização, se inicia uma máquina de estados de TEK separadamente para cada SAID identificada na mensagem de resposta de autorização. Como discutido no Capítulo 3, a SS requisita nesse momento uma TEK para finalizar a segurança implementada pela subcamada e começar a transmitir os dados criptografados logo após a troca de mensagens de registro e da criação do fluxo de serviços da rede.

Em resposta, a TEK é criptografada através de uma KEK derivada da AK correspondente e assim enviada de volta a estação cliente SS. Através dessa TEK recebida pela estação assinante, e após os passos de registro na rede onde a SS é realmente registrada junto à estação base e a mensagens de fluxo de serviços, os dados trafegados posteriormente serão finalmente criptografados através dessa chave de criptografia de tráfego postergando e validando a implementação da subcamada de segurança e o processo de autenticação e autorização proposto pela implementação do protocolo de gerenciamento de chaves privadas.

3.5.2 Máquina de Estados Finitos (FSM)

Para a devida implementação da máquina de estados de autorização com objetivo de fornecer a simulação sobre a subcamada de segurança necessitou-se implementar toda a máquina de estados finitos de autorização tal como a máquina de estados finitos TEK a fim de postergar a validade dos procedimentos visualizados pelo padrão e pelos processos envolvidos durante o procedimento de entrada na rede (Marks, 2006).

3.5.2.1 FSM de Autorização

A máquina de estados consiste em seis estados e oito eventos distintos (incluindo o recebimento de mensagens) que podem engatilhar transições de estados. A máquina de estados finitos de autorização é representada a seguir na Figura 16 (IEEE

Std 802.16e-2005, 2005) em um modelo gráfico do fluxo de estados e em uma matriz de transição de estados mostrada pelo Quadro 3 (IEEE Std 802.16e-2005, 2005).

Figura 16 - Diagrama de fluxo da máquina de estados de autorização

Quadro 3 - Matriz de transição de estados da FSM de Autorização

Os estados da máquina de estados de autorização são: Start, Authorize Wait, Authorized, Reauthorize Wait, Authorize Reject Wait e Silent; E os oito eventos distintos

que podem acionar transição de estados são: Communication Estabilished, Auth Reject, Perm Auth Reject, Auth Reply, Timeout, Auth Grace Timeout, Auth Invalid e Reauth.

3.5.2.1.1 Estados

a) Start → É o estado inicial da FSM. Os relógios estão desligados e nenhum processamento é agendado.

b) Authorize Wait (Auth Wait) → Depois da troca de capacidades, a SS envia tanto a informação de autenticação quanto a requisição de autorização, esperando pela resposta.

c) Authorized → A SS recebe a resposta de autorização com uma lista de SAIDs válidas além de uma AK. A transição neste estado engatilha de uma FSM da TEK para cada SAID de uma SS.

d) Reauthorize Wait (Reauth Wait) → Devido ao término de uma autorização atual ou uma autorização inválida por parte de uma SS, esta pode enviar um novo pedido de autorização junto a BS e esperar por uma resposta.

e) Authorize Reject Wait (Auth Reject Wait) → A SS recebe uma rejeição de autorização em sua última requisição. Junto ao estado, a SS liga um temporizador e a mesma permanece em espera e presente no estado até que o tempo expire.

f) Silent → Este estado acontece quando a SS não é autorizada a se utilizar do tráfego e usufruir da conexão da rede, caracterizando uma rejeição de autorização permanente (Perm Auth Reject).

3.5.2.1.2 Mensagens

 Authorization Request (Auth Request) → Requisita uma AK e uma lista de SAIDs autorizadas.

 Authorization Reply (Auth Reply) → Recebe uma AK e uma lista de SAIDs estáticas autorizadas. A AK é criptografada com a chave pública da SS.

 Authorization Reject (Auth Reject) → Rejeição da tentativa de autorização.  Authorization Invalid (Auth Invalid) → A BS envia uma mensagem de

 Authentication Information (Auth Info) → Essa mensagem contém o certificado X.509 do fabricante da SS, garantido por uma autoridade externa.

3.5.2.1.3 Eventos

 Communication Established → A máquina de estados de autorização gera este evento durante a entrada no estado start se o MAC completou a negociação das capacidades básicas.

 Timeout → Uma retransmissão ou um término do tempo de espera. Geralmente uma requisição é reenviada.

 Authorization Grace Timeout (Auth Grace Timeout) → Este temporizador inicia uma quantidade de tempo configurável antes que a autorização atual expire, sinalizando a SS a re-autorizar antes que sua autorização atual termine.

 Reautorize (Reauth) → Este evento é gerado em resposta a um SNMP (Simple Network Management Protocol) selecionando um gatilho a um ciclo de re- autorização.

 Authorization Invalid (Auth Invalid) → É um evento gerado internamente pela SS quando ocorre uma falha de autenticação ou externamente durante o recebimento de uma mensagem de autorização inválida, enviada da BS para a SS.

 Permanent Authorization Reject (Perm Auth Reject) → Código de erro de natureza permanente, sujeitos ao controle administrativo da própria BS. Pode ser causado por uma assinatura inválida no certificado da SS, por um fabricante desconhecido (não possui uma CA que certifique aquele certificado digital). Quando a SS recebe uma mensagem Perm Auth Reject, a máquina de estados de autorização se movimenta ao estado Silent.

 Authorization Reject (Auth Reject) → Ao contrário da rejeição permanente, a rejeição de autorização não indica rejeição completa. Pode significar apenas uma falha devido a um tempo de espera ou uma transição pelo estado Auth Reject Wait.

Os seguintes eventos são enviados pela máquina de estados de autorização para a máquina de estados TEK.

 [TEK] Stop: Enviado pela FSM de autorização para uma FSM TEK ativa para terminar o FSM e remover o material das chaves da correspondente SAID da SS.

 [TEK] Authorized: Enviado pela FDM de autorização para uma FSM TEK válida, porém, não ativada ainda.

 [TEK] Authorization Pending (Auth Pend): Enviado pela FSM de autorização para uma FSM TEK específica para o lugar de uma FSM TEK em um estado de espera até que a FSM de autorização possa completar sua operação de re- autorização.

 [TEK] Authorization Complete (Auth Comp): Enviado pela FSM de autorização pela FSM TEK na Operational Reauthorize Wait (Op Reauth Wait) ou ao estado Rekey Reauthorize Wait (Rekey Reauth Wait) para limpar o estado de espera iniciado pela FSM TEK no evento de pendência de autorização.

3.5.2.2 FSM TEK

A máquina de estados TEK consiste em seis estados e nove eventos distintos (incluindo o recebimento de mensagens) que podem engatilhar a transição de estados.

Assim como na máquina de estados de autorização, a máquina de estados TEK é representada tanto em um modelo gráfico do fluxo de estados demonstrado pela Figura 17 (IEEE Std 802.16e-2005, 2005) quanto em uma matriz de transição de estados representada pelo Quadro 4 (IEEE Std 802.16e-2005, 2005).

Os estados da máquina de estados TEK são: Start, Op Wait, Op Reauth Wait, Op, Rekey Wait e Rekey Reauth Wait; E os nove eventos distintos que podem acionar transição de estados são: Stop, Authorized, Auth Pend, Auth Comp, TEK Invalid, Timeout, TEK Refresh Timeout, Key Reply e Key Reject.

Figura 17 - Diagrama de fluxo da máquina de estados TEK

3.5.2.2.1 Estados

a) Start → É o estado inicial da FSM. Os relógios estão desligados e nenhum processamento é agendado.

b) Operational Wait (Op Wait) → A máquina de estados TEK envia a sua requisição inicial (Key Request) por um material de chaveamento de SAIDs e espera pela resposta da BS.

c) Operational Reauthorize Wait (Op Reauth Wait) → É um estado de espera da máquina de estados TEK que ocorre enquanto a máquina de estados de autorização está no meio do ciclo de re-autorização.

d) Operational → A SS tem um material de chaveamento válido para a SAID associada.

e) Rekey Wait → O temporizador da atualização de TEK expirou e a SS requisitou uma atualização de chave para esta SAID. É importante ressaltar que a mais nova das duas chaves ainda não está expirada e ainda pode ser usada na criptografia e descriptografia dos dados.

f) Rekey Reauthorize Wait (Rekey Reauth Wait) → O estado de espera da máquina de estados TEK caso a mesma possua um material de chaveamento de tráfego válido, tenha uma requisição pendente para o último material de chaveamento e a máquina de estados de autorização inicie um ciclo de re-autorização.

3.5.2.2.2 Mensagens

 Key Request → Requisita uma TEK para a uma SAID correspondente.

 Key Reply → Reposta da BS trazendo consigo dois conjuntos ativos de material de chaveamento de tráfego para a SAID solicitada.

 Key Reject → Reposta da BS para a SS com o propósito de indicar que a respectiva SAID não é mais válida e que nenhuma chave será enviada.

 TEK Invalid → A BS envia esta mensagem a SS se for determinado que a SS criptografou algum dados com uma TEK inválida.

3.5.2.2.3 Eventos

 Stop → Enviado pela FSM de autorização para uma FSM TEK ativa e remove o material de chaveamento de chaves correspondente das chaves da SS.

 Authorized → Enviado pela FSM de autorização para uma FSM TEK inativa para notificar a mesma do sucesso no processo de autorização.

 Authorization Pending (Auth Pend) → Enviado pela FSM de autorização para a FSM TEK para colocar a mesma em estado de espera enquanto a FSM de autorização completa o processo de re-autorização.

 Authorization Complete (Auth Comp) → Enviado pela FSM de autorização para a FSM TEK nos estados Operational Reauthorize Wait ou Rekey Reuthorize Wait para limpar o estado de espera iniciado pelo evento prioritário Authorization Pending.

 TEK Invalid → Este evento é ativado tanto pela descriptografia lógica do pacote de dados de uma SS ou pelo recebimento de mensagens inválidas TEK da BS. O pacote de dados da descriptografia lógica da SS dispara um evento TEK Invalid caso reconheça a perda de sincronização da chave TEK entre si mesma e a criptografia da BS.

 Timeout → O temporizador de uma tentativa termina. Normalmente, a requisição particular é retransmitida.

 TEK Refresh Timeout → Espera o temporizador TEK estourar. Este evento temporizador sinaliza a máquina de estados TEK para garantir que uma nova requisição de chave esteja a caminho para atualizar o material de chaveamento. A atualização do temporizador é um conjunto de opções configuráveis durante o tempo (TEK Grace Time) antes do término da TEK recebida pela SS mais recentemente.

Os parâmetros de configuração Authorize Wait Timeout (Auth Wait Timeout), Authorization Grace Timeout (Auth Grace Timeout) e Authorize Reject Wait Timeout (Auth Reject Wait Timeout) pertencentes à máquina de estados de autorização, assim como os parâmetros de configuração Operational Wait Timeout, Rekey Wait Timeout e TEK Grace Time pertencentes à máquina de estados TEK utilizam valores default

definidos pelo próprio padrão IEEE 802.16e (Marks, 2006) e serão utilizados desta forma nos cenários executados a seguir em simulador.

3.6 Resumo do Capítulo

Esse capítulo abordou assuntos relacionados à segurança encontrada no padrão WiMAX em conjunto ao padrão IEEE 802.16e no qual o mesmo é baseado. Mostrou o funcionamento das funções MAC voltadas ao processo de entrada na rede por parte de uma SS que tenta receber o sinal de uma BS e todo o procedimento que tem de ser transcorrido, demonstrando os passos e as mensagens trocadas assim como as suas funções para que usuário usufrua da conexão/conectividade.

Descreveu a idéia das associações de segurança e definiu o PKM, responsável pelo processo de autenticação em uma rede WiMAX, descrevendo a existência da certificação X.509, dos algoritmos de criptografia e da subcamada de segurança.

O Capítulo 4 mostrará alguns trabalhos relacionados a esta dissertação com temas pertinentes ao handover, a segurança e a pré-autenticação, resumindo-os, criticando seus pontos fracos e enaltecendo seus pontos importantes.

Documentos relacionados