Segurança, o
fornecimento de serviços confiáveis e autênticos, é sempre uma questão chave em
Redes de Computadores. Não é diferente em Redes Veiculares Ad Hoc.
VANETs visam
possibilitar segurança nas estradas, planejamento de rotas rodoviárias e
comércio eletrônico. Para estas aplicações em particular, segurança de redes é
ainda mais fundamental.
Neste capítulo
serão apresentados classificações de ataques e uma proposta de Golle et al feita
no 1st ACM international workshop on VANETs, 2004, para detecção de
correção de dados maliciosos em Redes Veiculares Ad Hoc via um modelo de
discriminação.
À aceitação de
dados maliciosos por uma VANET, convencida por outra VANET de que estes dados
eram autênticos, chamaremos simplesmente de ataque.
3.1:
Classificação de ataques
Natureza dos ataques
Há diversas
naturezas de dados maliciosos em VANET. Um atacante pode enviar informações
falsas sobre excertos da VANET ou sobre si próprio (localização errada, por
exemplo). Como um nó usa toda a informação disponível na VANET para verificar a
validade de uma nova informação, a densidade da rede e os sensores disponíveis
podem acabar tornando ataques imprevisíveis.
Alvos dos ataques
Há a
possibilidade de que existam atacantes capazes de se comunicarem a longas
distâncias. Tais atacantes têm flexibilidade na localização dos nós que tentam
convencer da veracidade de dados falsos. Pode-se dividir os alvos entre locais
(fisicamente próximos do atacante) e remotos.
Contra alvos
locais, o atacante tende a ter mais sucesso, posto que a probabilidade de dados
conflitantes vindos de nós vizinhos é menor. Assim, a proximidade necessária
para um ataque local é de difícil manutenção (afinal, trata-se de redes
veiculares, móveis), e a potencialidade de ataques locais é menos preocupante.
Além disso, alvos remotos são naturalmente mais numerosos.
Escopo dos ataques
O escopo ou área
de alcance de um ataque é medido em função da área de nós que têm dados VANET
de credibilidade duvidosa. Tais nós são chamados de vítimas. O escopo de
um ataque é limitado se as vítimas estão em uma pequena área de nós. Um
ataque alvejando uma área mais extensa de nós é um ataque extenso.
Abordagens sugerem detecção de áreas extensas a partir das limitadas,
utilizando propagação de informação.
Impacto dos Ataques
Quando um
atacante tenta convencer nós alvos de que dados incorretos são válidos, três
desdobramentos são possíveis:
·
O ataque pode ser não detectado pelos nós alvos
– portanto, um sucesso completo. Ocorre em geral quando os alvos estão isolados
ou completamente cercados por dados maliciosos. Neste caso, o nó acaba por
aceitar todas as informações maliciosas.
·
Pode ser detectado por um ou mais alvos, mas ainda deixar
incertezas sobre a veracidade dos dados; E, no mais otimista dos cenários,
·
Pode ser detectado e corrigido – ou seja, não
sobrando incerteza sobre a validade dos dados.
Quando nós alvos
têm acesso a nós honestos podem ser capazes de detectar que um ataque está
ocorrendo através de inconsistências nos dados coletados de diversas fontes,
mas ao mesmo tempo eles podem se recusar a corrigir o ataque devido a
informações insuficientes: Caso contrário, poderiam estar se arriscando a fazer
um diagnóstico incorreto, caso no qual os dados maliciosos permaneceriam
ilesos. Com acesso a um número suficientemente grande de nós sabidamente
honestos, os alvos são capazes de identificar corretamente os dados falsos e
corrigir – cessar o ataque.
3.2:
Modelo de discriminação
O modelo de
discriminação de nós de Golle et al baseia-se em quatro assertivas:
1.
Um nó pode coletar observações em seu meio (rede) local com as
comunicações que recebe.
2.
Um nó pode diferenciar seus vizinhos.
3.
A rede é suficientemente densa.
4.
Após contato suficientemente próximo, nós podem autenticar
suas comunicações uns com os outros.
Antes de
explorar o modelo de discriminação, deve-se introduzir o conceito de heurística
parcimoniosa, que consiste em uma representação dos possíveis ataques, de
forma tal que a mais provável explicação do ataque em processo possa ser usada
para resolver as inconsistências por ele provocadas.
Discriminação Local
Assume-se que um
nó sabe diferenciar seus vizinhos. Mais explicitamente, um nó A sabe
diferenciar fisicamente mensagens recebidas de nós distintos B ou C que lhe
estão suficientemente próximos.
Se a verificação
de procedência de mensagens falhar, A deve assumir que todas as mensagens
vieram de um único nó que reivindica ser ambos os vizinhos B e C (Sybil).
A discriminação local permite que um nó aplique heurística parcimoniosa dentro
da vizinhança local, onde o nó tem a habilidade de distinguir os vizinhos.
O exemplo que se
segue ilustra a discriminação local, que pode ser conseguida em uma VANET que
preencha às duas condições:
1.
Um nó pode relacionar uma mensagem à fonte física desta;
2.
Um nó pode medir a posição relativa a si próprio da fonte da
mensagem, dentro de um certo raio.
Estas condições
estão presentes, por exemplo, se nós estão equipados com câmeras que trocam
mensagem umas com as outras, fazendo uso de sinais no espectro de luz visível.
O nó pode estimar a posição relativa da fonte da mensagem (raio de luz)
analisando as imagens colhidas por sua própria câmera. Doravante, a mensagem é
diretamente relacionada (atribuída) à fonte física que a emitiu, uma vez que
aqui consideramos a mensagem como o próprio raio de luz.
Outras
características físicas podem ser utilizadas para discriminar o remetente de
uma mensagem, tal como o tempo de chegada da mensagem ou ângulo de chegada
desta (para sinais de rádio). Estas peculiaridades, embora mais fáceis de
coletar do que imagens de câmera, podem ser vulneráveis a sabotagens, já que
nós podem reduzir ou aumentar a força de um sinal de rádio passante, por
exemplo.
Discriminação estendida
A discriminação
pode ainda ser estendida em tempo e espaço, além da vizinhança imediata à qual
a discriminação local se aplica. A consecução desta expansão se dá permitindo
que nós troquem informações referentes às suas vizinhanças.
A comunicação em
longas distâncias pode ser, em prática, limitada por latência e questões de
banda. Golle et al assumem um modelo ideal de propagação e ignoram estas
questões.
Densidade de Rede
Assume-se ainda que o grafo de possíveis
comunicações entre nós está sempre conectado, e que existem múltiplos caminhos
de comunicação entre pares de nós, mesmo em caso de presença de nós maliciosos,
que podem se recusar a encaminhar mensagens para protocolos que mitigam o
efeito de comportamento suspeito de nós. Quão maior a conectividade do grafo,
melhor nós poderão executar heurística parcimoniosa além das fronteiras
imediatas de suas vizinhas de discriminação local. O exemplo seguinte ilustra
esta questão.
Suponha um nó A que tem os nós B1 e B2
em sua vizinhança de discriminação. Se ambos, B1 e B2
clamam que os nós C1 e C2, localizados fora da vizinhança
de A, são distintos, então A pode aumentar a confiança de que B1 e B2
são distintos (e não ambos maliciosos) para acreditar que os nós C1
e C2 são igualmente distintos.
Autenticando a comunicação
Assume-se que cada nó tem um par de chaves
pública/privada. Estas chaves permitem que nós autentiquem as mensagens uns dos
outros por curtos períodos de tempo (de alguns segundos a poucos minutos). Os
pares de chaves não devem ter vida longa: São gerados por um nó constantemente.
O envio de mensagens chaveadas estende a
discriminação local por tempo e espaço para nós honesto, já que mensagens
vindas de um nó podem ser autenticadas enquanto o nó mantiver a mesma chave
pública, independentemente de onde e quando as mensagens foram originadas. Para
um exemplo simples, seja um nó A que teve ao mesmo tempo os nós B e C em sua
área de discriminação local e foi capaz de determinar que B e C eram nós
distintos. Embora eles possam sair da vizinhança de A, continuam distinguíveis
para A enquanto enviarem suas mensagens com as mesmas chaves públicas. A
capacidade de discriminação se perde quando B e C atualizam suas chaves
públicas. Não é cerceada a possibilidade de que atacantes poderosos possam
colidir e trocar chaves privadas. Entretanto, e será demonstrado adiante, uma
vez que um nó foi identificado como malicioso, quaisquer dados distribuídos por
este nós (por exemplo, observações de localização) são considerados de validade
questionável. De fato, se um grande grupo de nós maliciosos partilha chaves
privadas com o objetivo de parecerem estar em um local onde apenas um deles
está, então se apenas um deles for considerado suspeito (malicioso), todos
serão, pois o ataque requer que todos observem uns aos outros. Assim, um abuso
de discriminação em larga escala pode ser, na verdade, contra-produtivo.
Modelagem matemática
Nesta subseção,
as considerações matemáticas do modelo de análise de dados maliciosos de Golle et
al. É proposta o seguinte modelo deVANET:
Seja P o
espaço euclidiano considerado e || P1 – P2 || a distância euclideana entre os
pontos P1 e P2. Definem-se:
Eventos:
O evento E é o par E=(D,f), onde D são os dados associados com o evento e f é a
função localização, uma função contínua f: T à P que indica a
localização de um evento de expectativa de vida no domínio real T do evento E. A expectativa de vida de um
evento pode ser um único ponto no tempo T = {t} ou um intervalo T = [t0, t1].
Os dados associados com um evento podem ser, por exemplo, a identidade ou
velocidade de um nó na localização dada por f(T).
O nó é uma
tripla (N, f, r), onde
·
N é natural e dá uma definição única do nó;
·
f é a função localização do nó, como já especificada
acima;
·
r é real não-negativo e é o raio de observação.
Asseções:
Eventos observados (asserções) são eventos capturados por nós dentro de seu
raio de observação, que podem ser partilhados com outros nós. A asserção ‹(D,f)›oi declara
que o nó observador Oi presenciou
o evento (D,f). A regra a seguir explica as condições sob as quais um nó pode
gravar uma asserção. Seja (Ni, fi, ri) um nó e
E = (D,f), um evento. Seja Ti a expectativa de vida de um nó e Ni e T a expectativa
de vida do evento E. Se T está contido em Ti e para todo t, t
pertence a T, temos || f(t) – fi (t) || ≤ ri, e, assim, o nó Ni pode gravar
a asserção ‹(D,f)›Ni.
Nós também podem partilhar asserções.
Enquanto em prática a partilha de asserções seja limitada por latência e banda,
reitera-se que é considerado um modelo de propagação ideal. Assim, uma asserção
gravada por um nó torna-se imediatamente disponível a todos os outros nós. Esta
afirmação se justifica no fato de que está sendo considerada apenas propagação
local de asserções em uma vizinhança geográfica relativamente pequena – uma
asserção é de menor valor para nós há muito removidos do evento. Denota-se o
banco de dados de todas as asserções partilhadas por todos os nós por K.
Modelo da VANET: Um modelo de VANET especifica que eventos ou
conjuntos destes são possíveis. O modelo pode ser orientado a regras ou baseado
em propriedades estatísticas dos eventos.
Formalmente, seja Ĕ o conjunto de todos
os eventos. O modelo da VANET é uma distribuição booleana M: Ĕ à {válido,
inválido}. Um conjunto de eventos {E1, E2, ..., En}
pertence a Ĕ é chamado de consistente com o modelo da VANET se M{E1,E2,...,En}
= válido; caso contrário, é chamado de inconsistente. Estende-se
naturalmente o domínio de M para asserções e conjuntos de asserções.
Podemos também considerar modelos que retornam uma probabilidade p = [0,1] de
validade, ao invés de uma decisão binária sobre validade ou invalidade.
O modelo malicioso (de ataque) é como se
segue: Assume-se que nós maliciosos podem gravar eventos imprecisos ou mesmo
inexistentes, ou seja, podem inserir asserções errôneas no banco de dados K.
Explicação de um conjunto de eventos: Seja H, contido no universo dos
naturais, um conjunto de hipóteses possíveis. Considera-se H
particionado em um conjunto H+ de hipóteses válidas
(corretas, por exemplo) e H- hipóteses inválidas (maliciosas,
por exemplo). Seja K = {‹E1›o1, ‹E2›o2, ..., ‹En›on}
um conjunto de asserções. Uma explicação de para K no nó N é uma
marcação de cada asserção em K com uma hipótese
ExpN(K)
= {‹E1›h1o1, ‹E2› h2o2, ..., ‹En›
hnon},
Onde hi pertencente a H é
tal que o subconjunto de asserções marcado com hipóteses de validade é
consistente com o modelo da VANET.
ExpH+N(K)
= {‹Ei›hioi
pertencente a ExpN(K) | hi pertence a H+}
Tem-se M(ExpH+N(K))
= válido. Nota-se que a explicação de ExpN(K)
é definida em relação a um nó N particular, uma vez que diferentes nós podem
assinalar diferentes hipóteses a várias asserções (considere por exemplo que um
nó sempre considera suas próprias asserções confiáveis).
Demanda de explicações: O modelo malicioso também especifica uma
demanda de explicações. É comumente uma demanda total baseada em alguma
marcação das explicações que variará dependendo dos métodos estatísticos
empregados.
Endereçamento de inconsistências: Dada uma coleção de dados K inválida
sob um modelo da VANET M, e uma coleção de explicações de K
demandada, então ou os dados são declarados inválidos (e um erro é detectado)
ou os erros em K são corrigidos usando as H+ asserções
marcadas da melhor explicação. Se houver múltiplas melhores explicações, suas H+
asserções marcadas podem sofrer uma interseção e então serem inseridas em um
subconjunto corrigido de K.
Exemplo: Observação da
localização de veículos vizinhos
Neste exemplo,
assume-se que os nós podem saber a precisa localização dos vizinhos com os
quais podem se comunicar, e que este conhecimento da localização está amarrado
à comunicação, tal que a localização de um nó possa ser relacionada à sua chave
pública. Assim, o banco de dados K consiste em:
Onde a asserção
Ai = ‹Ni , xi ›oi pode ser interpretada
como um nó Oi dizendo ter
observado um nó Ni na localização xi (Note que o
negrito em x indica que este é um vetor). Sob condições normais, o nó Oi
não será capaz de observar nós além de um raio fixo r, caso no qual xi
terá o valor “inobservado”.
Os nós podem
fazer asserções sobre si próprios, caso no qual Oi = Ni.
Neste caso, introduz-se a notação L, correspondente a estas asserções
reflexivas:
‹Ni , xi ›Ni è L(Ni) = xi
O modelo de
VANET M(K) deste exemplo retorna válido se as seguintes
condições geométricas forem simultaneamente válidas (caso contrário, modelo
retorna inválido):
1.
K contém uma asserção reflexiva de cada nó.
2.
Cada asserção não reflexiva ‹Ni , xi ›oi em K
concorda com a asserção reflexiva de Ni, ou seja, tem-se xi =
L(Ni) se || xi – L(Oi) || ≤ ri e xi
= inobservado caso contrário.
Se
há nós maliciosos, então K não necessariamente será consistente com M. Neste
exemplo, uma explicação no nó N, denotada por ExpN(K), consiste em
marcar cada asserção em K com uma de três designações – “verdadeira” (t
pertence a H+), “maliciosa” (m pertence a H-)
ou “spoof”/”mascarada” (s pertence a H-). Cada tupla
demarcada:
em
ExpN(K) deve satisfazer os seguintes critérios:
1. Se Oi = N è hi = t. Ou
seja, as observações do nó que constrói a explicação são consideradas
verdadeiras.
2. Quando um observador Oi foi marcado como spoof (hi = s), então nenhuma das outras tuplas acerca
de Oi, como ‹Nk , xk ›hkok devem ser marcadas como t a menos que xk seja inobservado.
Por
conveniência, também permitimos que uma explicação inclua novas tuplas marcadas
como “adicionadas” a pertencente a H+, com uma nova
tupla permitida a alcançar cada tupla reflexiva que foi marcada como m.
A tupla adicionada forncerá localização correta xi que é
consistente com quaisquer outras observações verdadeiras de Ni em K:
‹Ni , xi ›m
Ni è ‹Ni , x*i ›a
Ni
As
asserções verdadeiras e válidas inseridas em ExpN(K), unidas, devem
ser consistentes com o modelo da VANET:
M
(ExpH+N(K) ) = válido.
Para
completar o modelo de ataque deste exemplo, marcamos explicações ExpN de acordo com o número de observadores Oi distintos que recebem a marcação maliciosa m em uma ou mais de suas
tuplas. A explicação Exp*N com o
menor número de nós maliciosos é considerada a mais simples e mais plausível
explicação dos dados. Se há número suficiente de observações em K, então
os dados em Exp*N identificarão os nós maliciosos, bem como
fornecer as localizações corretas de todos os nós, sejam verdadeiros ou
maliciosos – Em alguns casos, pode haver várias explicações que são igualmente
prováveis, quando ainda pode ser possível extrair algumas localizações corretas
a partir da interseção entre explicações.
Deve-se notar que o
modelo de ataque para este exemplo não faz distinção baseada no número de
asserções maliciosas por observador; Uma vez que um das asserções de um dos
observadores foi marcada como maliciosa, então o nó em si pode ser marcado como
malicioso. Enquanto isto permite modelos mais elaborados do estrago causado por
um observador malicioso (ou modelos que causem alguns erros benignos), este
modelo simples tem o adicional de restringir as estratégias disponíveis ao
atacante.
Percebe-se ainda
que a classificação de explicações ignora marcações de mascaramento nas explicações.
Assim, as melhores explicações terão mais nós mascarados e menos nós
maliciosos. Todavia, observações diretas de nós verdadeiros (pelo segundo
critério de marcação descrito acima) limitarão o número de nós que podem ser
marcados como máscaras. Se houver apenas poucos nós maliciosos, então a melhor
explicação (ou explicações) pode ser computada exaustivamente: As explicações
são computadas postulando um pequeno número de nós maliciosos, marcando todas
as asserções dos nós postulados maliciosos como também maliciosas, tratando as
demais asserções como arcos de um grafo, começando uma busca ponto a ponto em
N, atravessando arcos do observador O i ao nó N i enquanto N i ainda não for marcado m, e marcando nós que
desta forma forem alcançados e sejam verdadeiros. Todos os nós inalcançáveis
são marcados como mascarados. Nem todas as marcações serão consistentes com o
modelo M, mas buscando pelos pouco numerosos nós maliciosos primeiro, o
algoritmo pode determinar quando encontrou uma ou mais explicações do mesmo
tamanho que passam pelo teste de consistência.
Figura 3. Ataque em VANET
(adaptado de [2])
Na figura acima, um
nó malicioso M cria máscaras para suportar a falsa localização M’ (ilusão). Os
arcos contínuos mostram as observações no banco de dados. Os arcos tracejados
são observações faltantes. Abaixo seguem grafos de duas de muitas possíveis
explicações para os conflitos de informações:
Figura 4. Explicações
(adaptado de [2])
O nó malicioso tenta fazer a
explicação ser tendenciosa adicionando nós mascarados, e assim neste modelo
particular de ataque, onde julga-se que múltiplos atacantes distintos reais são
menos prováveis do que máscaras, o primeiro grafo de explicações é mais
provável do que o segundo, pois tem menos nós efetivamente maliciosos. No
entanto, deve-se perceber que a habilidade de encontrar a mais correta explicação
depende da densidade do grafo.
|