Escolar Documentos
Profissional Documentos
Cultura Documentos
Resumo. Redes de Sensores Sem Fio (RSSF) constituem um novo paradigma de mo-
nitoração ambiental com muitas aplicações em potencial. Em muitos cenários, as
informações transmitidas nas RSSFs podem ser de interesse de adversários. Além de
evitar que intrusos causem danos à rede, um sistema de detecção de intrusos (IDS)
pode adquirir informações sobre técnicas de ataque, auxiliando no desenvolvimento
de mecanismos de prevenção. Neste trabalho, é proposto um ambiente de simulação
para um IDS distribuído que atende às demandas e restrições das RSSFs. Resultados
mostram que o simulador é eficaz no seu propósito, além de se apresentar como uma
arquitetura de software flexível, extensível e reusável.
1. Introdução
Sistemas complexos e processos do mundo real podem ser estudados via modelagem e simu-
lação, uma técnica para análise e observação de comportamentos sob diferentes condições. Um
modelo de simulação é uma representação simplificada de um sistema e é composto por uma
coleção de componentes interativos.
Assim como em outros sistemas utilizados em aplicações críticas, o estudo e desenvolvi-
mento de algoritmos e protocolos em Redes de Sensores Sem fio (RSSFs) [Akyildiz et al. 2002]
exigem um arcabouço em que soluções propostas possam ser testadas e avaliadas seguindo
métricas pré-definidas antes de serem implantadas em uma rede real. Essa avaliação pode ser
feita por meio das técnicas de modelagem e simulação. Por meio dessas, pode-se comparar
diferentes propostas e identificar possíveis melhorias e limitações no sistema sendo implemen-
tado.
As RSSFs constituem um novo paradigma de monitoração ambiental com muitas apli-
cações em potencial. Formadas tipicamente por centenas ou até milhares de nós de tamanho
reduzido, esses dispositivos utilizam comunicação ad hoc para transmissão de dados e possuem
recursos escassos em termos de reserva de energia, largura de banda, capacidade de proces-
samento e armazenamento. RSSFs são projetadas para atuarem em ambientes muitas vezes
inóspitos e podem estar envolvidas em aplicações críticas, tais como mapeamento de recursos
naturais [Mainwaring et al. 2002] e monitoração de movimentação inimiga em um campo de
batalha [Arora et al. 2004]. Nessas aplicações, as RSSFs podem se tornar alvo de interesse de
adversários.
Devido à natureza não-confiável da comunicação sem fio, ao fato de serem implantadas
em ambientes abertos e desprotegidos e serem constituídas por dispositivos de tamanho re-
duzido e de baixo custo, as RSSFs estão sujeitas a vários tipos de ataque [Karlof and Wagner 2003,
Wood and Stankovic 2002]. Mecanismos preventivos podem ser aplicados para protegê-las
desses ataques, como mostrado em [Karlof et al. 2004, Perrig et al. 2002]. No entanto, não
existem garantias de que os métodos preventivos serão capazes de deter os invasores. Sendo
assim, faz-se necessário um mecanismo capaz de detectar esses ataques e seus responsáveis.
Além de evitar que um intruso cause danos à rede, um sistema de detecção de intrusos (Intru-
sion Detection System – IDS) pode adquirir informações sobre as técnicas de ataque, auxiliando
no desenvolvimento de sistemas de prevenção.
Nesse cenário, vários desafios devem ser considerados. Primeiramente, uma RSSF é di-
recionada a aplicações, isto é, projetada com características específicas para a aplicação a que se
destina. A variedade de configurações de rede dificulta a modelagem do comportamento “usual”
ou “esperado” de um sistema. Além disso, métodos desenvolvidos para redes tradicionais não
são diretamente aplicáveis, pois a disponibilidade de recursos em RSSFs é altamente restrita.
Alguns simuladores foram propostos para avaliar soluções em RSSFs e são utilizados
na obtenção de resultados em estudos de áreas relacionadas. Em alguns casos, no entanto,
esses simuladores não são adequados, como ocorreu na solução de detecção de intrusões em
RSSFs proposta em [da Silva et al. 2005]. Como se tratava de uma idéia nova, os simuladores
existentes não previam as funcionalidades necessárias para essa nova abordagem, além de apre-
sentarem alta complexidade, baixa performance e serem de difícil manipulação e agregação de
novas funcionalidades.
Visto que, até onde foi pesquisado, nenhum dos simuladores estudados atendia a to-
dos os requisitos necessários para a aplicação proposta, decidiu-se implementar uma solução
própria. Dessa maneira, tem-se controle total sobre o comportamento da aplicação, além de
possibilitar a criação de uma ferramenta robusta e de menor complexidade, voltada especifica-
mente para o problema de detecção de intrusos em RSSFs.
2. Trabalhos Relacionados
Avaliar a performance e comportamento de RSSFs requer ferramentas de simulação que sejam
escaláveis a um grande número de nós sensores. Ambientes tradicionais de simulação, como
o ns-2 [Fall and Varadhan 2001], são recomendados em estudos de comportamento de proto-
colos de comunicação, mas geralmente não capturam detalhadamente as operações realizadas
nos pontos finais da rede, os nós sensores. A simulação de aplicações de RSSFs requer uma
série de modificações e simplificações no modelo projetado para o ns-2, já que esse sistema não
foi desenvolvido especificamente para esse propósito. Além disso, a complexidade de progra-
mação e a demora na obtenção de resultados mostraram que essa é uma solução ineficiente para
aplicação em modelagem de IDSs em RSSFs.
Alguns ambientes de simulação específicos para RSSFs foram estudados, como o Atemu
[Karir 2003] e Simulavr [Roth 2001]. Esses sistemas disponibilizam relatórios de execução
bem detalhados sobres os nós sensores, apesar de somente o Atemu dar suporte à simulação de
múltiplos nós em um ambiente de rede. Como ambos atuam em nível de instrução do dispositivo
sensorial, sua escalabilidade fica comprometida devido ao overhead causado pela emulação da
arquitetura em que as aplicações são executadas.
O simulador TOSSIM [Levis et al. 2003] foi projetado tendo em vista RSSFs e é uti-
lizado como um ambiente escalável para RSSFs baseadas no TinyOS [Hill et al. 2000]. Ao
contrário dos simuladores em nível de máquina, o TOSSIM compila aplicações do TinyOS para
o formato nativo de execução do hospedeiro da simulação, aumentando sua escalabilidade. No
entanto, não existem mecanismos que forneçam informações sobre o consumo de energia da
rede, um dos pontos críticos no desenvolvimento de aplicações em RSSFs. Tal limitação é
tratada pelo PowerTOSSIM [Shnayder et al. 2004], uma extensão proposta ao TOSSIM. Ape-
sar de apresentarem granularidade compatível com o problema proposto e de serem de fácil
programação, nenhum dos dois simuladores dão suporte a aplicações heterogêneas até o mo-
mento, o que dificulta sua utilização como arcabouço para a simulação de um IDS composto de
nós sensores executando diferentes serviços.
Em [da Silva et al. 2004], são apresentados um estudo geral e uma série de possibili-
dades de construção de um IDS para RSSFs. Algumas das idéias propostas foram utilizadas
como base para a modelagem deste trabalho.
A contribuição deste trabalho é reunir idéias e modelos relacionados acima e aplicá-los
em um ambiente projetado e otimizado especificamente para a simulação de IDSs em RSSFs.
3. Modelagem
3.1. Componentes do Simulador
Optou-se pelo modelo de simulação em eventos discretos, considerando que as ações no ambi-
ente do sistema são ativadas em intervalos definidos. Sendo assim, os objetos de análise (nós
comuns, monitores e intrusos) mantêm seus estados durante a simulação e só os modificam na
ocorrência de um evento. A linguagem C++ foi utilizada para o desenvolvimento da aplicação,
tornando-a facilmente extensível e modular.
Os seguintes módulos componentes da arquitetura do simulador foram propostos e im-
plementados: dispositivo de sensoriamento, mensagem, rede e controlador de simulação. A
escolha de tais módulos foi baseada na relevância das abstrações necessárias para a modelagem
do problema em questão.
Estação Base
A estação base representa o sorvedouro para onde todas as mensagens da rede são direcionadas.
É também responsável pela inicialização e manutenção da árvore de roteamento da rede.
Sensor
Dispositivo de Sensoriamento
-identificador
-temporizador Ataque
-coordenadas
-alcance
-vizinhos
IDS
Energia Caixa de Mensagens
Nó Sensor
Nó Intruso
Nó Monitor
Os nós monitores são responsáveis pela monitoração de seus vizinhos em busca de indícios de
intrusos e acionamento do IDS. Um nó monitor mantém seu rádio em modo de escuta promís-
cua, armazenando as informações de interesse e processando-as de acordo com as regras de
detecção selecionadas. Um nó monitor também assume o papel de nó sensor comum.
3.1.2. Mensagens
Mensagens são conjuntos de dados de formato pré-definido transmitidos pelos nós da rede, u-
sando o meio de comunicação sem fio. Seu propósito é garantir que os dispositivos participantes
da rede divulguem suas informações e tenham conhecimento sobre o ambiente de sensoriamento
dos demais nós da rede, permitindo a cooperação entre eles. Foram definidos três tipos de
mensagens: dados, configuração e roteamento.
Mensagem de Dados
Uma mensagem de dados contém a leitura de um sensor e é sempre enviada à estação base pelos
nós. Os seguintes campos a compõem: tipo, fonte de dados imediata (previous hop), destino
imediato (next hop), origem, destino, número de seqüência e dados.
Mensagem de Configuração
Uma mensagem de configuração é enviada a algum nó específico da rede pela estação base
com o propósito de notificar seu receptor para que altere a sua configuração de execução na
rede (e.g. desligamento do rádio). Considerando uma rede heterogênea, a estação base pode
ser representada por um nó transceptor de alcance maior e com uma maior reserva de energia.
O ideal é que a mensagem de configuração seja transmitida até o seu destino em um único
hop, evitando que ela seja repassada por nós sensores intermediários. Nós com rádio em modo
promíscuo (monitores) também são capazes de ouvir essa mensagem. Os seguintes campos
compõem uma mensagem de configuração: tipo, origem, destino, número de seqüência e dados.
Mensagem de Roteamento
Mensagens de roteamento podem ser enviadas a partir da estação base para os nós comuns, a
fim de promover a criação e atualização da árvore de roteamento. Esse mecanismo baseia-se
na idéia do algoritmo distribuído de Propagação de Informação (Propagation of Information –
PI [Segall 1983]). Uma mensagem de roteamento é enviada pela estação base aos seus vizinhos.
Estes a recebem, determinam seus antecessores na topologia da árvore como sendo o remetente
da mensagem e a propagam para os demais nós da rede, mudando o valor do campo Origem
com os seus próprios endereços. O mesmo procedimento é realizado até que todos os nós da
rede que possam ser alcançados tenham sido agregados. Mensagens de roteamento recebidas
por nós que já fazem parte da topologia são descartadas, evitando ciclos.
Assim como a mensagem de configuração, os campos contidos na mensagem de rotea-
mento representam um subconjunto dos campos da mensagem de dados (tipo, origem, destino
e número de seqüência).
3.1.3. Rede
O componente de rede é responsável pela comunicação interna da RSSF. Este componente co-
ordena a transmissão de mensagens entre os nós, obedecendo a topologia da rede e o alcance de
cada dispositivo, além do próprio reconhecimento da vizinhança pelos nós. As conseqüências
dos ataques promovidos pelos nós intrusos durante o envio e recepção de dados afetam este
componente.
5. Análise de Desempenho
5.1. Considerações Iniciais
O objetivo dos experimentos foi avaliar o desempenho e verossimilhança do simulador de IDSs
para RSSFs. Em particular, a eficácia na detecção dos ataques considerados e o número de
falsos positivos obtidos pelos nós monitores.
Sob o ponto de vista do monitor, o processo de monitoração é dividido em etapas. A
primeira etapa se inicia quando o vetor de avaliação está vazio e começa a ser preenchido com
mensagens ouvidas em escuta promíscua. Essa etapa termina quando o vetor está cheio e o
processamento das mensagens armazenadas pode ser disparado. O tamanho do vetor define a
duração da etapa de escuta promíscua e, assim, a quantidade de mensagens que poderão ser rela-
cionadas entre si em busca de indícios de intrusos. Observa-se um compromisso entre o custo
de armazenamento e eficácia da detecção. Quanto menor o vetor e, conseqüentemente, o custo
de armazenamento, menor será a duração dessa etapa e maiores serão as perdas de seqüência
de mensagens (menor possibilidade de relacionamento entre elas em busca de indícios), impli-
cando em menor eficácia na detecção. A fim de avaliar esse compromisso, variou-se o tamanho
do vetor entre 30, 60, 100, 200 e 400 mensagens, para cada um dos ataques. Esses valores
foram escolhidos com base nas restrições de memória do nó sensor Mica2 [Hill et al. 2000].
Todas as simulações tiveram duração de 10000 iterações, executadas 33 vezes para cada
configuração. Considerou-se apenas um intruso aplicando um único tipo de ataque em cada
simulação. A “etapa de aprendizagem” da rede durou 1000 iterações (10% do tempo de vida
da rede) na qual nenhum ataque foi aplicado sobre a rede, permitindo ao nó monitor avaliar a
quantidade de falhas naturais que ocorreram nesse período. Logo após, o nó intruso iniciou o
seu ciclo de ataque consistindo em 700 iterações de inatividade e 200 iterações promovendo
ataques na rede. O IDS possui uma tolerância de 10% de falhas, o que significa que a razão
entre as falhas observadas a cada etapa de processamento de mensagens poderia ser até 10%
maior que o número esperado de falhas naturais sem que um indício de ataque fosse gerado.
Variou-se a probabilidade de ocorrência de falhas naturais em 1%, 10% e 20%.
5.2. Cenário
EB EB
P P
I M2 I M2
M1 M1
F F
Foi simulada uma rede contendo 100 nós distribuídos aleatoriamente, na qual o intervalo
de disseminação de dados dos nós sensores foi de 40 iterações do simulador. A figura 2 ilustra
duas representações da mesma rede utilizada nos experimentos. A figura 2(a) ilustra a árvore
de roteamento, enquanto a figura 2(b) apresenta o mapa de conectividade da mesma topologia.
Nessa última, uma aresta conectando dois vértices do mapa indica que esses nós estão dentro
do raio de comunicação de seu respectivo vizinho.
Os nós monitores foram distribuídos de forma a cobrir todos os nós comuns da rede. Um
exemplo são os monitores M1 e M2 (figura 2), vizinhos do nó intruso I e, conseqüentemente, os
únicos que poderiam observar seu comportamento diretamente. Apesar dos nós serem cobertos
por mais de um monitor, a visão de cada um deles não é necessariamente a mesma. O nó M 1 ,
é capaz de ouvir mensagens vindas do nó F (filho do intruso I), mas não é capaz de ouvir
mensagens transmitidas por P (pai do intruso I), enquanto M2 consegue ouvir as mensagens
transmitidas por P , mas não as transmitidas por F . Dependendo do ataque simulado, um dos
monitores conseguirá detectar um comportamento anômalo do nó observado e o outro não.
A seguir, são apresentados os resultados relativos à eficácia na detecção e número de
falsos positivos. Os falsos positivos são apresentados em números absolutos obtidos pelos mo-
nitores M1 e M2 (vizinhos do intruso I) ao final da simulação.
80%
Eficácia de detecção
30
60% 25
20
40%
15
10
20%
1% falhas naturais
10% falhas naturais 5
20% falhas naturais
0
30 60 100 200 400 30 60 100 200 400
Tamanho do buffer de análise Tamanho do buffer de análise
Referências
Akyildiz, I. F., Su, W., Sankasubramaniam, Y., and Cayirci, E. (2002). Wireless sensor net-
works: A survey. Computer Networks, 38:393–422.
Arora, A., et. al (2004). A line in the sand: a wireless sensor network for target detection,
classification, and tracking. Computer Networks, 46(5):605–634.
da Silva, A. P. R., Martins, M. H. T., Rocha, B. P. S., Loureiro, A. A. F., Ruiz, L. B., and Wong,
H. C. (2005). Decentralized intrusion detection in wireless sensor networks. In Q2SWinet
’05: Proceedings of the 1st ACM international workshop on Quality of service & security in
wireless and mobile networks, pages 16–23, New York, NY, USA. ACM Press.
da Silva, A. P. R., Teixeira, F. A., Wong, H. C., and Nogueira, J. M. S. (2004). Aspectos de
detecção de intrusos em redes de sensores sem fio (short paper). In 22 o Simpósio Brasileiro
de Redes de Computadores, pages 575 – 578, Gramado, RS.
Fall, K. and Varadhan, K. (2001). The ns manual. http://www.isi.edu/nsnam/ns/doc/.
Hill, J., Szewczyk, R., Woo, A., Hollar, S., Culler, D. E., and Pister, K. S. J. (2000). System
architecture directions for networked sensors. In Architectural Support for Programming
Languages and Operating Systems, pages 93–104.
Karir, M. (2003). atemu - sensor network emulator / simulator / debugger.
http://cshcn.umd.edu/research/atemu.
Karlof, C., Sastry, N., and Wagner, D. (2004). Tinysec: a link layer security architecture for
wireless sensor networks. In Proceedings of the 2nd international conference on Embedded
networked sensor systems (SenSys ’04), pages 162–175.
Karlof, C. and Wagner, D. (2003). Secure routing in wireless sensor networks: Attacks and
countermeasures. In First IEEE Int’l Workshop on Sensor Network Protocols and Applica-
tions.
Levis, P., Lee, N., Welsh, M., and Culler, D. (2003). Tossim: accurate and scalable simulation of
entire tinyos applications. In Proceedings of the 1st international conference on Embedded
networked sensor systems (SenSys ’03), pages 126–137.
Mainwaring, A., Culler, D., Polastre, J., Szewczyk, R., and Anderson, J. (2002). Wireless sensor
networks for habitat monitoring. In WSNA ’02: Proceedings of the 1st ACM international
workshop on Wireless sensor networks and applications, pages 88–97, New York, NY, USA.
Perrig, A., Szewczyk, R., Tygar, J. D., Wen, V., and Culler, D. E. (2002). Spins: security
protocols for sensor networks. Wireless Network Journal (WINE), 8(5):521–534.
Roth, T. A. (2001). Simulavr: an avr simulator. http://www.nongnu.org/simulavr.
Segall, A. (1983). Distributed network protocols. IEEE Transactions on Information Theory,
29:23–35.
Shnayder, V., Hempstead, M., rong Chen, B., Allen, G. W., and Welsh, M. (2004). Simulating
the power consumption of large-scale sensor network applications. In Proceedings of the
2nd int’l conference on Embedded networked sensor systems (SenSys’04), pages 188–200.
Wood, A. D. and Stankovic, J. A. (2002). Denial of service in sensor networks. IEEE Computer,
35(10):54–62.