Buscar

SmartIoTsistema-Silveira-2020

Prévia do material em texto

UNIVERSIDADE DO RIO GRANDE DO NORTEFEDERAL
UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE
CENTRO DE TECNOLOGIA
PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELÉTRICA E
DE COMPUTAÇÃO
Smart-IoT: um sistema de proteção contra
DDoS para rede de Internet das Coisas
Frederico Augusto Fernandes Silveira
Orientador: Prof. Dr. Luiz Felipe de Queiroz Silveira
Dissertação de Mestrado apresentada ao
Programa de Pós-Graduação em Engenharia
Elétrica e de Computação da UFRN (área de
concentração: Engenharia de Computação)
como parte dos requisitos para obtenção do
título de Mestre em Ciências.
Número de ordem PPgEEC: M612
Natal, RN, 20 de outubro de 2020
Universidade Federal do Rio Grande do Norte - UFRN
Sistema de Bibliotecas - SISBI
Catalogação de Publicação na Fonte. UFRN - Biblioteca Central Zila Mamede
Silveira, Frederico Augusto Fernandes.
Smart-IoT: um sistema de proteção contra DDoS para rede de Internet das
Coisas / Frederico Augusto Fernandes Silveira. - 2020.
64 f.: il.
Dissertação (mestrado) - Universidade Federal do Rio Grande do Norte,
Centro de Tecnologia, Programa de Pós-Graduação em Engenharia Elétrica e
de Computação, Natal, RN, 2020.
Orientador: Prof. Dr. Luiz Felipe de Queiroz Silveira.
1. Segurança de rede - Dissertação. 2. IoT - Dissertação. 3. DDoS -
Dissertação. 4. Aprendizagem de máquina - Dissertação. 5. SDN - Dissertação.
I. Silveira, Luiz Felipe de Queiroz. II. Título.
RN/UF/BCZM CDU 004.7
Elaborado por Ana Cristina Cavalcanti Tinôco - CRB-15/262
Smart-IoT: um sistema de proteção contra
DDoS para rede de Internet das Coisas
Frederico Augusto Fernandes Silveira
Dissertação de Mestrado aprovada em 20 de outubro de 2020 pela banca examinadora
composta pelos seguintes membros:
Prof. Dr. Luiz Felipe de Queiroz Silveira (orientador) . . . . . . . . . . . DCA/UFRN
Prof. Dr. Edmar Candeia Gurjão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . UFCG
Prof. Dr. Agostinho de Medeiros Brito Junior . . . . . . . . . . . . . . . . . . DCA/UFRN
Prof. Dr. Ramon dos Reis Fontes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IMD/UFRN
Prof. Dr. Ivanovitch Medeiros Dantas da Silva . . . . . . . . . . . . . . . . . . IMD/UFRN
Aos meus filhos e esposa, João,
Filipe e Christianne, pela paciência
e amor durante a realização deste
trabalho.
Agradecimentos
Aos meus filhos, Filipe e João, fonte de inspiração e amor que me move nessa vida e que
se mostrou essencial para a conclusão desse projeto.
À minha amada esposa Christianne, que sempre esteve ao meu lado garantindo a estabili-
dade necessária e que se doou igualmente para a minha conclusão do mestrado.
Aos meus pais e irmãos que sempre me incentivaram durante o processo e que sem eles,
nada seria possível.
Ao meu amigo Sales, que além da amizade, ofereceu orientação e suporte nos momentos
mais difíceis.
A Alex, Walter, Calenice, Tadeu e demais amigos do IFRN que sempre estiveram prontos
a ajudar sempre que necessário.
Ao meu orientador Prof. Luiz Felipe pelo trabalho exemplar, conduzido com esmero,
profissionalismo, dedicação e amizade.
À Coordenação de Aperfeiçoamento de Pessoal de Nível Superior (CAPES), pelo apoio
financeiro.
Resumo
O aumento do número de dispositivos em rede, no contexto de Internet das coisas
(Internet of Things - IoT), impulsionou o número de ataques distribuídos de negação de
serviço (Distributed Denial of Service - DDoS) nos últimos anos. Essa ameaça aproveita-
se das limitações de segurança desses equipamentos, bem como de suas localizações geo-
gráficas para potencializar o impacto dos ataques. Desenvolver mecanismos para detectar
e mitigar ataques DDoS nesse novo paradigma é um desafio atual na área de segurança de
redes. Este trabalho propõe um mecanismo de defesa integrado ao controlador de rede IoT
que usa técnicas de Aprendizagem de Máquina (AM) para a detecção desses ataques, e a
flexibilidade das redes definidas por software (Software-Defined Networks - SDN) para a
sua mitigação. O sistema proposto utiliza amostras aleatórias para realizar a classificação
do tráfego da rede e o protocolo OpenFlow (OF) para aplicar as medidas de mitigação em
tempo real. A solução foi testada com quatro datasets recentes, em ambiente controlado
de laboratório, mostrando-se capaz de detectar e mitigar ataques DDoS, com alta taxa de
acertos e baixa taxa de falsos alarmes.
Palavras-chave: Segurança de rede, IoT, DDoS, Aprendizagem de máquina, SDN.
Abstract
The increase in the number of networked devices in the context of the Internet of
Things (IoT) has driven the number of Distributed Denial of Service (DDoS) attacks in
recent years. This threat takes advantage of these devices’ security limitations and their
geographic locations to leverage the impact of the attacks. Developing mechanisms to
detect and mitigate DDoS attacks in this new paradigm is a current challenge in network
security. This work proposes a defense mechanism integrated into the IoT network con-
troller that uses Machine Learning (ML) techniques to detect these attacks and the fle-
xibility of Software-Defined Networks (SDN) for their mitigation. The proposed system
uses random samples to perform network traffic classification and the OpenFlow (OF)
protocol to apply real-time mitigation measures. The solution was tested with four recent
datasets in a controlled laboratory environment, showing to detect and mitigate DDoS
attacks, with a high hit rate and low false alarm rate.
Keywords: Network Security, IoT, DDoS, Machine Learning, SDN.
Sumário
Sumário i
Lista de Figuras iii
Lista de Tabelas v
Lista de Símbolos e Abreviaturas vii
1 Introdução 1
1.1 Contribuições . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Organização . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2 Estado da Arte 5
2.1 Negação de Serviços em Sistemas Computacionais . . . . . . . . . . . . 5
2.2 Negação de Serviços em Redes IoT e SDN . . . . . . . . . . . . . . . . . 8
2.3 Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3 Negação de Serviços em Redes IoT 15
3.1 Vulnerabilidades em Dispositivos IoT . . . . . . . . . . . . . . . . . . . 15
3.2 Botnets IoT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.3 Estratégias de Ataques DDoS . . . . . . . . . . . . . . . . . . . . . . . . 18
3.4 Tipos de Ataques DDoS . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.5 Datasets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.5.1 ISCXIDS2012 . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.5.2 CIC-DoS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.5.3 CICIDS2017 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.5.4 Bot-IoT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.5.5 Smart Defender . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.6 Métricas de Avaliação . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.7 Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
i
4 Smart-IoT 31
4.1 Arquitetura Smart-IoT . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4.2 Detecção . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
4.2.1 Base de Assinaturas . . . . . . . . . . . . . . . . . . . . . . . . 34
4.2.2 Seleção de Variáveis e Algoritmos . . . . . . . . . . . . . . . . . 37
4.3 Proteção . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.4 Experimentos e Análise dos Resultados . . . . . . . . . . . . . . . . . . 41
4.4.1 Avaliação online dos Algoritmos de Aprendizagem de Máquina . 41
4.4.2 Avaliação do Sistema nas Plataformas Raspberry Pi 3 e 4 . . . . . 43
4.4.3 Testbed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
4.5 Comparação com Outros Trabalhos da Literatura . . . . . . . . . . . . . 51
4.6 Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
5 Conclusão 55
5.1 Propostas decontinuação do trabalho . . . . . . . . . . . . . . . . . . . . 56
5.2 Produção Científica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Referências bibliográficas 58
Lista de Figuras
3.1 Etapas de um ataque DDoS. . . . . . . . . . . . . . . . . . . . . . . . . 18
3.2 Arquitetura de ataques DDoS . . . . . . . . . . . . . . . . . . . . . . . . 21
4.1 Modelo de operação do sistema. . . . . . . . . . . . . . . . . . . . . . . 32
4.2 Arquitetura interna do sistema. . . . . . . . . . . . . . . . . . . . . . . . 32
4.3 Visão geral do esquema de classificação de tráfego baseado em (Sales
et al. 2019). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
4.4 Processo de geração da base de assinaturas. . . . . . . . . . . . . . . . . 36
4.5 Etapas do processo de análise dos dados, variáveis e modelos do Smart-IoT. 37
4.6 Visão geral da arquitetura do Smart Defender-IoT. . . . . . . . . . . . . . 40
4.7 Ambiente de validação virtual. . . . . . . . . . . . . . . . . . . . . . . . 42
4.8 Ambiente de validação usando a plataforma Raspberry. . . . . . . . . . . 44
4.9 Matriz de confusão (a) Rasp 3 e (b) Rasp 4 para o dataset SmartDefender. 46
4.10 Consumo de memória em Rasp 3 e Rasp 4 durante experimento com da-
taset Smart Defender. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
4.11 Carga de CPU em Rasp 3 e Rasp 4 durante experimento com dataset
Smart Defender. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
4.12 Matriz de confusão (a) Rasp 3 e (b) Rasp 4 para o dataset CICIDS2017 . 47
4.13 Matriz de confusão (a) Rasp 3 e (b) Rasp 4 para o dataset CICDOS . . . 48
4.14 Matriz de confusão (a) Rasp 3 e (b) Rasp 4 para o dataset Bot-IoT . . . . 48
4.15 Cenário de testes Smart-IoT. . . . . . . . . . . . . . . . . . . . . . . . . 49
4.16 Pacotes por segundo nas interfaces Wlan0 e Eth0) . . . . . . . . . . . . . 51
iii
Lista de Tabelas
2.1 Resumo comparativo dos estudos de combate aos ataques DDoS. . . . . . 13
3.1 Características de Malwares IoT causadores de DoS. . . . . . . . . . . . 22
3.2 Ferramentas de ataque e eventos constantes no dataset CIC-DoS. . . . . . 25
3.3 Ferramentas de ataque e eventos constantes no dataset Smart Defender. . 26
3.4 Resumo das arquiteturas de ataques DDoS. . . . . . . . . . . . . . . . . 29
3.5 Resumo dos datasets utilizados. . . . . . . . . . . . . . . . . . . . . . . 29
4.1 Parâmetros de ajustes do sistema de detecção. . . . . . . . . . . . . . . . 33
4.2 Variáveis extraídas do cabeçalho dos pacotes e calculadas. . . . . . . . . 35
4.3 Quantidade de rótulos por classe. . . . . . . . . . . . . . . . . . . . . . . 36
4.4 Variáveis otimizadas para os modelos RF, LR e XGBoost. . . . . . . . . . 38
4.5 Avaliação do desempenho offline dos algoritimos AM. . . . . . . . . . . 39
4.6 Exemplos de critérios para definição de uma política de tráfego. . . . . . 40
4.7 Configuração do ambiente de avaliação online dos algoritmos. . . . . . . 42
4.8 Avaliação do desempenho dos algoritmos AM. . . . . . . . . . . . . . . 42
4.9 Equipamentos e softwares utilizados na etapa. . . . . . . . . . . . . . . . 44
4.10 Avaliação do desempenho do Smart-IoT nas plataformas Raspberry Pi 3
e 4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
4.11 Equipamentos e softwares utilizados no Testbed . . . . . . . . . . . . . . 50
4.12 Avaliação do desempenho do Smart-IoT nas plataformas Raspberry Pi 3
e 4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4.13 Comparação com a literatura. . . . . . . . . . . . . . . . . . . . . . . . . 52
5.1 Produção científica. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
v
Lista de Símbolos e Abreviaturas
AM Aprendizagem de Máquina
ANN Artificial Neural Network
ARM Advanced RISC Machine
bps bits per second
CAPTCHA Completely Automated Public Turing test to tell Computers and Humans
Apart
CPU Central Processing Unit
DDoS Distributed Deny-of-Service
DNS Domain Name System
DoS Deny-of-Service
DT Decision tree
ECESID Edge-Centric Software-Defined IoT Defense
HTTP Hypertext Transfer Protocol
HTTPS Hypertext Transfer Protocol Secure
ICMP Internet Control Message Protocol
IDS Intrusion Detection System
IoT Internet of Things
IP Internet Protocol
IRC Internet Relay Chat
KNN K-Nearest Neighbors
vii
LR Logistic Regression
LSTM-RNN LongShort-Term Memory RNN
LSVM Lagrangian Support Vector Machine
M2M Mobile-to-Mobile
ML Machine Learning
NN Neural Network
NPAD Núcleo de Processamento de Alto Desempenho
NTP Network Time Protocol
PCAP An application programming interface for capturing network traffic
PHP Hypertext Preprocessor
pps Packets per Second
QoS Quality of Service
RF Random Forest
RFECV RecursiveFeature elimination and Cross-Validated
RL Rate Limiting
RNN Recurring Neural Network
SDN Software-Defined Network
SNMP Simple Network Management Protocol
SVM Support Vector Machine
TCP Transmission Control Protocol
TRW-CB Threshold Random Walk with Credit Based Rate Limiting
UDP User Datagram Protocol
WIFI Wireless Fidelity
XGBoost Extreme Gradient Boost
XSS Cross-Site Scripting
Capítulo 1
Introdução
Nos últimos anos, a Internet tem se consolidado como uma plataforma que impulsiona
o desenvolvimento econômico e tecnológico em diversos países do globo. Na era da
informação, a rede é vista como destino natural para a oferta de produtos e serviços por
causa de sua abrangência mundial.
Nessa dinâmica, o número de novos dispositivos conectados à rede mundial de com-
putadores aumentou substancialmente nos últimos anos. Esse fenômeno tornou-se mais
evidente com o advento das comunicações móveis de alta velocidade, que ampliou as
possibilidades das comunicações por meio de smartphones e tablets, e pela popularização
da Internet das Coisas (IoT). Com essa conjuntura, (Vlajic & Zhou 2018) cita o número
de 50 bilhões de aparelhos IoT conectados à grande rede até o final de 2020 (Vlajic &
Zhou 2018), com tendência de aumento no número de conexões M2M (Mobile-to-Mobile)
(Summary 2019) em razão da crescente demanda por serviços que operem em redes IoT,
especialmente no contexto de cidades inteligentes. Além disso, o surgimento de aparelhos
vestíveis também irá impactar nesse crescimento, com perspectiva de existir cerca de 1,1
bilhão de equipamentos deste tipo conectados à rede em 2022 (Summary 2019).
Nos próximos anos a adoção da tecnologia celular 5G será outro divisor de águas. Em
(Ravi 2019), observa-se que a adoção desta tecnologia irá redesenhar a forma de comuni-
cação que os dispositivos IoT e suas aplicações se conectarão a rede sem fio. Ele acredita
que a mudança, em como os dispositivos irão se conectar, tem o potencial de causar um
grande impacto no ecossistema IoT, influenciando seus projetos, escalabilidade, latência,
confiabilidade, segurança e no nível de controle individual. Em (Summary 2019), cita-se
que em 2022, a conexão 5G média gerará quase três vezes mais tráfego do que a cone-
xão 4G, representando 12% das conexões móveis. Relata também, um aumento de 54%
de tráfego proveniente de dispositivos WIFI e 400% M2M, saindo de 13,4 exabytes/mês,
em 2017, para 111,4 exabytes/mês em 2022, representando 59% do tráfego total dos dis-
positivos móveis. O trabalho também fala de um aumento de quase 400% de conexões
2 CAPÍTULO 1. INTRODUÇÃO
entre dispositivos para dispositivos, passando de 1 bilhão de conexões para 3,9 bilhões no
mesmo período.
Embora essa nova conjuntura tenha introduzido incontestáveis avanços aos serviços
online, ela também trouxe preocupações e novos desafios relacionados ao funcionamento
seguro da Internet. Uma das principais questões está relacionada à fragilidade da segu-
rança dos dispositivos IoT, que tem permitido que esses aparelhos sejam usados como
vetores de ataques cibernéticos, notadamente ataques de negação de serviço (DoS).
Os ataques distribuídos de negação de serviços (DDoS) utilizando dispositivos IoT
vêm despertando a atenção dos especialistasem segurança cibernética desde 2016. Na-
quele ano, quatrocentos mil dispositivos, incluindo câmeras e roteadores sem fio, infec-
tados pelo malware Mirai formaram uma grande botnet que paralisou a Internet com
um ataque DDoS orquestrado, estabelecendo um novo recorde de tráfego associado a
um único evento (Vlajic & Zhou 2018). Recentemente, malwares mais perigosos, como
Hajime e IoT_Reaper (Vlajic & Zhou 2018), foram identificados na rede, o que indica
uma tendência ainda maior de utilizar esse tipo de equipamento como vetor para ataques
DDoS.
Embora a comunidade acadêmica e pesquisadores de empresas especializadas venham
se dedicando ao tema, ainda não existe um consenso de solução para o problema dos ata-
ques DDoS, especialmente quando a origem dos ataques são equipamentos IoT. De ma-
neira geral, embora as soluções propostas pela academia sejam cientificamente seguras,
não apresentam requisitos práticos para implantação na Internet, enquanto que soluções
comerciais não são eficazes no contexto de IoT (Cao et al. 2018). Assim, a investigação
de técnicas de detecção e mitigação de ataques de DDoS no contexto de redes IoT é atual-
mente de grande interesse na área de segurança de redes, cujas soluções devem apresentar
impacto significativo na disponibilidade dos serviços da Internet.
Nessa conjuntura, este trabalho apresenta o sistema Smart-IoT, um mecanismo inte-
grado de defesa contra ataques DDoS em um ambiente de rede dedicada à dispositivos
de internet das coisas. A arquitetura do sistema foi projetada para detectar precocemente
ataques de negação de serviço provenientes desse tipo de dispositivo, com o objetivo de
mitigá-los na própria rede de origem. A abordagem proposta é composta de um módulo
de detecção e outro de mitigação. A detecção ocorre por meio de um sensor instalado no
ponto de acesso da rede IoT, classificando o tráfego online através de uma estratégia base-
ada em Aprendizagem de Máquina (AM). Para isso, o trabalho propõe uma metodologia
de criação de base de assinatura, selecionando, no processo, variáveis e parâmetros oti-
mizados. O sistema de mitigação, por sua vez, baseia-se na tecnologia SDN para realizar
o controle de tráfego quando um ataque for detectado.
1.1. CONTRIBUIÇÕES 3
A SDN (Software-Defined Network) é uma abordagem usada para projetar, imple-
mentar e gerenciar redes, na qual se separa o controle da rede (plano de controle) e o
processo de encaminhamento (plano de dados), oferecendo flexibilidade e controle para
a rede (Benzekki et al. 2016). A SDN permite combinar as vantagens da virtualização
do sistema e da computação em nuvem, além de criar uma implementação de uma in-
teligência centralizada que permite uma clara visibilidade sobre a rede para facilitar o
gerenciamento e a manutenção da rede, bem como um melhor controle e reatividade da
rede.
A abordagem proposta é compatível com a infraestrutura atual da Internet e não requer
atualizações de software ou hardware, o que torna sua implantação viável. A solução pode
funcionar tanto em modo standalone, na qual todo o conjunto de funcionalidades fica
embarcado em um único equipamento, quanto em um modo distribuído, com controle e
proteção sendo realizado de forma distribuída e remota. Além disso, por analisar somente
dados dos cabeçalhos dos pacotes TCP/IP, garante a privacidade dos dados trafegados.
O sistema proposto foi avaliado em três etapas, uma avaliação online dos algoritmos
de AM, uma avaliação do sistema nas plataformas Raspberry Pi 3 e 4 e um testbed. As
experimentações foram realizadas em ambiente controlado de laboratório, e a solução
proposta, colocada na perspectiva com o estado da arte. Os resultados mostraram um
protótipo funcional capaz de detectar ataques DDoS com taxa de detecção satisfatória,
mitigando-os em curto espaço de tempo.
1.1 Contribuições
São contribuições desta pesquisa:
1. Uma metodologia de geração e a produção de uma base de assinatura, otimizada
para a amostragem usada pelo Smart-IoT. Além disso, uma análise da base gerada é
feita, selecionando as variáveis otimizadas para três tipos de algoritmo de aprendi-
zagem de máquina, Logistic Regression, Random Forest, e Extreme Gradient Boost
e os melhores parâmetros para os modelos utilizados para classificação no sistema
de detecção de ataques DDoS;
2. A modelagem e desenvolvimento do Smart-IoT, sistema especializado em detectar
e mitigar ataques DDoS proveniente de redes de dispositivos IoT;
3. Uma metodologia de testes on-line, reproduzindo características de rede encontra-
das na geração dos arquivos de tráfego, com o objetivo de validar o sistema com
datasets recentes na literatura;
4 CAPÍTULO 1. INTRODUÇÃO
4. Uso de plataformas Raspberry Pi 3 (Rasp 3) e Raspberry Pi 4 (Rasp 4) para avaliar
o desempenho do sistema em termos de desempenho de classificação de ataques
e consumo de recursos computacionais em dispositivos equivalentes aos utilizados
em redes IoT;
5. Na etapa final, foi realizado um Testbed para a avaliação de todas as funcionalidades
do sistema em um ambiente real.
1.2 Organização
O restante do trabalho está organizado como se segue: o Capítulo 2 apresenta os ata-
ques DDoS e sua relação com o mundo IoT, e os esforços empregados para melhorar a
segurança nesses ambientes de comunicações, localizando-os no estado da arte do cenário
de internet das coisas. O Capítulo 3 discorre sobre ataques de negação de serviço no ce-
nário IoT e a categorização desse tipo de ameaça digital. O Capítulo 4 detalha a proposta
do Smart-IoT, incluindo sua arquitetura, experimentos e análise dos resultados obtidos.
Por fim, o Capítulo 5 apresenta as considerações finais sobre a pesquisa, futuros trabalhos
e publicações realizadas.
Capítulo 2
Estado da Arte
Neste capítulo são apresentados trabalhos da literatura que mostram avanços na ca-
racterização de ataques DDoS, juntamente com técnicas de detecção, mitigação e implan-
tação de mecanismos de proteção, localizando esta pesquisa no estado da arte. Ao final,
estes estudos são colocados em perspectiva junto a esta dissertação de modo a evidenciar
as contribuições alcançadas por este trabalho.
2.1 Negação de Serviços em Sistemas Computacionais
Em (Anderson 1980), o autor registrou as primeiras ameaças em sistemas compu-
tacionais em relatório sobre monitoramento e vigilância de ameaças em segurança de
computadores. Nesse trabalho, foram estabelecidos requisitos e definições para o desen-
volvimento de ferramentas capazes de identificar anormalidades nesse tipo de sistema.
No mesmo período, estudos sobre negação de serviços começaram a ser publicados como
intrusões em sistemas e redes. Em (Gligor 1984) foi apresentado um conceito geral sobre
negação de serviços em sistemas operacionais baseado em tempo de uso dos recurso por
grupos de usuários. Novos tipos de ataques foram impulsionados com o crescimento das
redes, novas aplicações e o aumento das taxas de transmissão dos canais de comunicação.
Em (Chang 2002), evidenciou-se a sofisticação dos métodos e ferramentas de ataques
DDoS, as quais mostravam-se eficazes, inclusive em mascarar os invasores reais, apon-
tando que as tecnologias de defesa eram incapazes de resistir a ataques em larga escala.
Ainda em (Chang 2002), indica-se que não existe uma solução única para o problema, de-
vendo uma solução ser abrangente, envolvendo prevenção e preempção (antes do ataque),
detecção e filtragem (durante o ataque), rastreamento e identificação da fonte (durante e
depois do ataque). Para o autor, as soluções analisadas em seu estudo estão claramente
longe de serem adequadas para proteger os nós da Internet contra ataques DDoS, podendo
esse problema, nunca ser resolvido.
6 CAPÍTULO 2. ESTADO DA ARTE
A taxonomia dos ataques DDoS e dos mecanismos de defesa existente até aquele mo-
mento foram publicadas em (Mirkovic & Reiher 2004). Os autores concluíram que, como
a Internet é gerenciada de maneira distribuída, a aplicação de uma política comum é de
difícil execução, evidenciando algumas questões de segurança relacionadasa ataques dis-
tribuídos de negação de serviço. O trabalho propõe oito categorias de mecanismos de
ataque. Em (Cambiaso et al. 2012), traçou-se a taxonomia de ataques lentos de camada
de aplicação. Revisões sistemáticas sobre DDoS Flooding foram realizadas por (Zargar
et al. 2013) e (Wang et al. 2015). Em (Zargar et al. 2013) foi reforçado o que já havia
sido apontado em (Chang 2002), ao afirmar que o maior desafio no combate aos ataques
DDoS reside na detecção precoce e na mitigação dos ataques o mais próximo possível
de sua origem, destacando a importância da colaboração dos sistemas. Entretanto, a im-
plantação de uma solução abrangente que contemple essas características ainda não foi
alcançada. Esse desafio tornou-se ainda maior devido ao crescente número de dispositivos
conectados à Internet, impulsionados principalmente pela popularização da computação
onipresente, caracterizada pelo conceito de conectar qualquer coisa, em qualquer lugar e a
qualquer hora, e materializada por meio do paradigma da Internet das Coisas (Al-Fuqaha
et al. 2015). Assim, como na maioria dos cenários da Internet, os dispositivos interagem
com aplicativos que são executados remotamente na rede. Isso também permite que agen-
tes mal-intencionados controlem os dispositivos e os utilizem como ponto de partida para
atacar diversos domínios.
Em pesquisas recentes, como o trabalho de (Wang et al. 2018), propõe-se o SkyShield,
uma solução para detectar ataques DDoS na camada de aplicação. Durante a deteção,
o sistema compara duas tabelas de rascunhos (Sketch) S1 e S2 para detectar anomalias
causadas por hosts atacantes. Em cada período de detecção, as solicitações recebidas são
agregadas no S1, com os endereços IP de origem como chaves de entrada. O esboço de
backup S2 armazena os resultados de S1 no último ciclo de detecção normal. No final de
cada ciclo de detecção, a divergência d(S1,S2) entre S1 e S2 é calculada. Se a diferença
entre as duas tabelas ultrapassar um certo δt estipulado, um alarme é disparado, indicando
um ataque. Quando isso ocorre, o S2 não será mais atualizado. A fase de mitigação usa
filtragens, lista de permissões, lista negra e CAPTCHA como mecanismos de proteção.
O SkyShield se concentrou na camada de aplicação, mais especificamente no protocolo
HTTP, de modo que o sistema proposto é vulnerável a inundações na camada de rede e
na camada de transporte. Além disso, o sistema processa todos os pacotes de rede, o que
pode tornar o sistema de detecção um gargalo em ataques volumétricos.
A patente descrita em (Jalan et al. 2018) define um sistema local de mitigação de ata-
ques de inundação do tipo TCP SYN. O método adotado utiliza mensagens TCP RESET
2.1. NEGAÇÃO DE SERVIÇOS EM SISTEMAS COMPUTACIONAIS 7
para conter esses ataques em redes de telecomunicação. Essa ideia é limitada em escopo
de detecção e mitigação, pois atua exclusivamente sobre um único tipo de ataque. Além
disso, não existe garantia de que os atacantes processarão a mensagem de RESET TCP
enviada pelo alvo.
Recentemente, em (Hosseini & Azizi 2019), foi abordado a classificação de ataques
DDoS usando um sistema de aprendizado de máquina supervisionado. Foi proposto um
framework híbrido com múltiplos classificadores, usando a base de dados NSL-KDD para
avaliar o método proposto. Já em (Aamir & Zaidi 2019), optou-se por uma técnica semi-
supervisionada sobre o mesmo tema. Em ambos os casos, foram realizadas análises e
avaliações de conjuntos de dados utilizando-se aprendizagem de máquina. Entretanto, os
resultados obtidos ficaram restritos a análises offline.
Em (Jazi et al. 2017b), os autores propuseram uma técnica para detectar ataques de
inundação em servidores Web usando amostragem de dados. Eles estabeleceram mate-
maticamente perfis de tráfego legítimo e de ataque de DoS baseados em variáveis como
o número de solicitações da camada de aplicativo e o número de pacotes com tamanho
de carga útil igual a zero. Foi usado o algoritmo CUSUM para classificar o tráfego como
normal ou ataque de DoS, baseado em limiares definidos. O sistema foi avaliado usando
o dataset CICDOS. Uma taxa de detecção entre 80-88% foi obtida usando uma taxa de
amostragem de 30% do tráfego. A técnica proposta alcançou resultados relevantes, po-
rém as variáveis usadas para a caracterização do tráfego são frágeis, mais especificamente
pelo uso de pacotes com carga útil de tamanho zero, característica facilmente forjada
pelos atacantes. Outra questão a ser levantada é o registro do aumento no número de alar-
mes falsos quando foram utilizadas técnicas de amostragem comuns na indústria como
Random packet sampling e Random n out of N packet sampling.
Em (Liu et al. 2019), propõe-se o Umbrella, um sistema que implementa uma arqui-
tetura de defesa em várias camadas para combater diversos ataques DDoS. A proteção
proposta ocorre na rede da vítima. A detecção ocorre baseada em limiares de taxa de
perda de pacotes e de taxa de compartilhamento justo por usuário, estabelecidas no algo-
ritmo do sistema. A mitigação é conduzida através de filtros de firewall e regras de QoS.
O sistema Umbrella foi avaliado usando uma plataforma de teste personalizada em ter-
mos de controle de tráfego. Embora os autores afirmem que o sistema seja capaz de lidar
com ataques em massa, essa abordagem, que é amplamente usada na indústria, provou-se
ser ineficiente contra DDoS realmente maciço. Os experimentos foram conduzidos em
ambiente virtualizado usando o emulador Mininet (Lantz et al. 2015).
Em (Sales et al. 2019), apresenta-se o Smart Defender, um sistema composto de dois
módulos, Smart Detection e Smart Protection, que operam de maneira integrada e distri-
8 CAPÍTULO 2. ESTADO DA ARTE
buída. O módulo de detecção proposto faz inferências com base em assinaturas preexis-
tentes, usando técnicas de aprendizagem de máquina para classificar o tráfego de rede.
O módulo de proteção, por sua vez, aplica regras para controlar o tráfego indesejado e
mitigar os efeitos do DDoS, considerando as informações compartilhadas pelo sistema de
detecção e a política de segurança da rede local. Nos experimentos realizados, foram utili-
zados modernos conjuntos de dados de referência e testes semi-controlados em ambiente
laboratorial. Os resultados mostram que a solução proposta é capaz de detectar preco-
cemente ataques DDoS com alta taxa de acertos e baixa taxa de alarmes falsos, além de
isolar a ameaça no primeiro minuto de ataque. No entanto, não foi contemplado estudos
dessas ameaças em redes IoT, fonte crescente de ameaça, sendo uma solução focada em
detectar e mitigar ataques DDoS em provedores de serviços.
O Smart Defender é base de inspiração para o Smart-IoT, herdando o núcleo da lógica
de detecção e de proteção do trabalho original, e adaptando-as para o cenário de redes
IoT e utilização em hardware específico. Estudos de base de assinaturas, modificações
nos módulos de detecção e mitigação foram realizados para ajustar e otimizar a solução
para esse novo cenário.
2.2 Negação de Serviços em Redes IoT e SDN
A academia vem voltando a sua atenção para ataques de negação de serviço, notada-
mente no contexto de redes IoT, que ganhou visibilidade nos últimos anos por causa de
ataques de DDoS de grandes proporções. Trabalhos recentes, voltados para o combate a
esse tipo de ameaça no contexto de redes IoT são apresentados nesta seção, detalhando
diferentes técnicas de detecção e mitigação, com o intuito de localizar essa proposta de
trabalho no estado da arte.
Em (Yin et al. 2018), foi proposto um framework chamado SD-IoT (Software Defined
- Internet of Things) e um algoritmo de detecção de ataques que analisa a semelhança
dos vetores da taxa de pacotes de entrada nas portas do comutador SD-IoT de fronteira.
Na proposta do framework, utilizando o paradigma SDx (Software Defined), que utiliza
software para controlar vários tipos de hardware, ele faz uma extensão da versão da ar-
quitetura SDN (Software Defined Network) aplicada a IoT, com três camadas: aplicação,
controle e infraestrutura.Com a camada de controle, utiliza controladores para aplicar
regras, serviços e aplicações em diversos dispositivos e comutadores IoT. Há uma sepa-
ração de domínios e cada comutador IoT é responsável por fornecer conectividade para
o grupo de dispositivos IoT conectados a ele, representado um domínio. Esses domínios
são ligados ao pool de controladores. O algoritmo proposto para a detecção de ataques de
2.2. NEGAÇÃO DE SERVIÇOS EM REDES IOT E SDN 9
negação de serviço tem como chave a medição da semelhança dos vetores em relação à
taxa de entrada de pacotes da porta de entrada dos comutadores SD-IoT. O sistema pro-
posto calcula a semelhança (ρx,y) do vetor analisado e o compara com um valor de limiar
(ηU ). Se ηU ≤ ρx,y ≤ 1, o comutador SD-IoT estará sob ataque DDoS. Se 0 ≤ ρx,y < ηU ,
então o comutador SD-IoT estará sob tráfego normal. Caso o comutador SD-IoT es-
teja sob ataque, a porta que estará recebendo o ataque descartará os pacotes de entrada.
Os experimentos foram conduzidos no Mininet utilizando ambiente e tráfego virtualiza-
dos. Entretanto, os autores colocam os dispositivos IoT somente como alvos dos ataques
DDoS, e não como possíveis agentes infectados e originadores dos ataques.
Em (Doshi et al. 2018), foi apresentada uma análise comportamental de variáveis em
redes IoT, tais como banda, intervalo entre pacotes, protocolos, tamanho de pacote e en-
dereço de destino. Além disso, os autores realizaram uma análise de diversos algoritmos
de aprendizagem de máquina e validação de um dataset produzido pelos próprios pesqui-
sadores. Eles utilizaram um Raspberry Pi 3 como ponto de acesso para captura de dados.
Conectaram uma câmera doméstica Yi1 e uma tomada inteligente da Belkins2 diretamente
ao Raspberry e um medidor de pressão sanguínea via bluetooth a um smartphone Android
que também se conectou ao ponto de acesso. Através de interações entre esses três dispo-
sitivos, geraram tráfego legítimo para rotulação. Quanto ao tráfego malicioso, os autores
utilizaram um ambiente virtual com Kali Linux3 e realizaram ataques de negação de ser-
viço análogos aos gerados pelo malware Mirai, como TCP SYN flood, UDP flood e HTTP
GET flood, sendo esse tráfego capturado pelo mesmo ponto de acesso Raspberry Pi. Além
disso, cinco algoritmos foram avaliados: (i) KNN (K-nearest neighbors), (ii) LSVM (La-
grangian Support Vector Machine), (iii) DT (Decision tree), (iV) RF (Random Forest), e
(v) NN (Neural Network). Os resultados foram obtidos com classificações offline, ou seja,
utilizaram a segmentação do dataset obtido, para treinamento (85%) e teste (15%). Nesse
estudo, não foram avaliados datasets conhecidos na literatura nem a detecção online do
tráfego de rede.
Em (Ozcelik et al. 2017) foi utilizado computação em névoa (fog computing) em am-
biente SDN para detectar ataques de DDoS provenientes de dispositivos IoT. Os autores
propuseram o ECESID (Edge-Centric Software-Defined IoT Defense), utilizando swit-
ches SDN na defesa de ataques DDoS e aplicando regras de controle do tráfego próximo
à origem do ataque. Os autores utilizam a combinação de dois algoritmos para detecção
de ataques: Threshold Random Walk with Credit Based Rate Limiting (TRW-CB) e Rate
1https://www.yitechnology.com/yi-home-camera
2http://www.belkin.com/us/F7C029-Belkin/p/P-F7C029/
3https://www.kali.org
10 CAPÍTULO 2. ESTADO DA ARTE
Limiting (RL). Além disso, foi realizado o mapeamento (scanning) dos bots infectados
e do tráfego de rede dos dispositivos IoT presentes no segmento. Caso algum desses
dispositivos apresente alguma anomalia quanto à tentativa de conexão, uma vez que nós
infectados tendem a tentar estabelecer conexões continuamente a endereços IP aleatórios
para infectar mais dispositivos e tentar posteriormente realizar ataques de inundação, o
TRW-CB utiliza teste sequencial de hipóteses para decidir se o nó está infectado, man-
tendo uma fila de TCP SYNs para cada host. Caso um TCP RST seja recebido ou ocorra
uma expiração, o TRW-CB o remove da fila e aumenta a taxa de probabilidade do dis-
positivo ser declarado como infectado, senão, a taxa de probabilidade diminui. RL é
outro algoritimo utilizado na detecção, observando que um host infectado tenta se conec-
tar ao maior número possível de hosts em um curto espaço de tempo, para propagação do
malware, ele verifica novas solicitações de conexão em uma lista de hosts contatados an-
teriormente, chamados "conjuntos de trabalho". Se a solicitação for para um host que está
no conjunto de trabalho, normalmente ela é encaminhada; caso contrário, é enfileirada em
uma fila de atraso. A cada d segundos, uma conexão é retirada da fila de atraso e é permi-
tida a continuação. Se o tamanho da fila de atraso aumentar além do valor limite de T , o
algoritmo dispara um alarme. Após a detecção de um host malicioso, uma regra é lançada
para o switch SDN, bloqueando a porta de conexão. Os autores utilizaram o software Mi-
ninet para emular a rede IoT e dispositivos de conexão, utilizando o malware Mirai para
infectar os dispositivos IoT, analisando o comportamento dos dispositivos infectados e
realizando a mitigação dos ataques realizados. No trabalho, a detecção de dispositivos in-
fectados se dá na etapa onde esses dispositivos tentam infectar outros dispositivos sadios.
Podendo assim, apresentar uma deficiência na detecção onde dispositivos infectados es-
tão hibernando na espera da realização do ataque ou ainda durante a realização de ataques
DDoS.
No trabalho apresentado por (Hasan et al. 2019) foi utilizado um conjunto de dados
de ataque e tráfego normal apresentado no trabalho (Pahl & Aubet 2018). Realizaram
ainda uma engenharia nos dados, separando e limpando as variáveis. Após essa etapa,
foram realizados testes com diferentes algoritmos de aprendizagem de máquina, como
Logistic Regression (LR), Support Vector Machine (SVM), Decision Tree (DT), Random
Forest (RF) e Artificial Neural Network (ANN). A análise foi realizada de maneira offline,
ou seja, não foi implementado qualquer sistema de detecção ou mitigação, sendo apenas
obtido métricas estatísticas quanto a classificação do dataset existente.
Em (Sambandam et al. 2019), foi proposto um sistema de detecção de ataques DDoS
utilizando uma análise de entropia da rede. É medida a variação de entropia do endereço
IP de destino, utilizando a equação de entropia de Shannon. Em caso de ataques DDoS,
2.2. NEGAÇÃO DE SERVIÇOS EM REDES IOT E SDN 11
os valores de entropia caem em comparação aos valores obtidos em uma rede com tráfego
normal. Testes foram realizados pelos autores utilizando um ambiente SDN em Rapsberry
PI, com um controlador POX4 para mitigação das conexões detectadas como ataque. No
trabalho, taxas de falso alarme, detecção e precisão não foram mostradas, não existindo
comparação com datasets presentes na literatura.
Em (Manso et al. 2019), os autores propuseram um sistema para detecção e mitigação
de ataques DDoS que integra um Sistema de Detecção de Intrusões (IDS) na arquitetura
SDN no lado do cliente para cenários de rede doméstica ou organizacional. O sistema
opera através de um controle de loop entre três componentes arquiteturais básicos: a rede,
o IDS e o controlador. O IDS analisa todo o tráfego trocado na rede, detectando um
ataque DDoS em andamento. O Controlador, ao ser notificado pelo IDS, transfere para
os dispositivos de rede algumas novas regras de fluxo para restaurar a operação normal o
mais rápido possível. Os autores utilizam o Snort como solução de detecção, espelhando
todo o tráfego da porta e analisando profundamente os pacotes de entrada. Esse tipo
de abordagem se mostrou eficiente quanto a detecção e mitigação dos ataques nos testes
realizados, contudo, por realizar inspeção profunda, a solução se torna vulnerável em
ataques volumétricos. Além disso, para ataques mais sofisticados e que não estejam na
base de assinatura do Snort, é possível que eles não sejam detectados.
Em (Sahay et al. 2017), os autores propuseram um sistema autônomo baseado em
SDN chamado ArOMA para mitigaçãode DDoS. O sistema integra diferentes módulos
de mitigação de DDoS para seus clientes. No cenário apresentado, o controlador SDN
detecta anomalias na rede do cliente e a mitigação ocorre no controlador SDN do lado
do ISP. Quando um DDoS é detectado, o controlador na rede do cliente envia uma noti-
ficação para o controlador do provedor, efetuando a mitigação. O trabalho concentra-se
na mitigação de ataques DDoS, assumindo que o cliente possui mecanismos para detectar
os ataques e compartilhar os alertas com seu provedor. O sistema é avaliado em cenários
emulados usando Mininet. Métricas como Qualidade de Experiência foram utilizadas
para aferir a eficiência do sistema de mitigação. Embora o trabalho foque na mitigação
em equipamento SDN, a pesquisa objetiva combater ataques DDoS em provedores de
serviço, além de não detalhar mecanismo de detecção dos ataques.
Em (Bhunia & Gurusamy 2017), foi proposto um sistema de segurança IoT baseada
em redes SDN contra ataques DDoS chamado SoftThings. O sistema é capaz de detec-
tar ataques utilizando técnica de aprendizagem de máquina e utiliza uma estrutura SDN
hierárquica capaz de aplicar regras para bloquear o tráfego malicioso. O estudo gerou
uma base de treinamento utilizando características como número de requisições enviadas,
4https://github.com/noxrepo/pox
12 CAPÍTULO 2. ESTADO DA ARTE
número de tentativas de autenticação falhas, origem da requisição, consumo de banda e
características de uso do dispositivo. Foi utilizado Support Vector Machine (SVM) para
classificar o tráfego, obtendo uma taxa de detecção de 98% com os ataques realizados,
e um tempo de mitigação entre 6 e 10 segundos. O trabalho guarda semelhança com a
abordagem proposta nesta dissertação, contudo verifica-se que o principal foco é proteger
os dispositivos IoT. Além disso apenas dois tipo de ataques volumétricos foram usados na
experimentação, não havendo qualquer relato de uso de ataques mais difíceis de detectar
como ataques de baixo volume e baixa frequência. Além disso, o sistema proposto não
foi experimentado com qualquer dataset presente na literatura. Toda a experimentação
ocorreu de forma emulada usando o software Mininet.
Em (Koroniotis et al. 2019), os autores propõem um trabalho de base mostrando to-
dos os passos para a criação de um dataset, BoT-IoT, que incorpora tráfego de rede IoT
legítimo e simulado. Diversos tipos de ataques estão presentes, sendo realizada uma ava-
liação da confiabilidade do conjunto de dados, usando diferentes métodos estatísticos e
de aprendizagem de máquina. Para simular o comportamento da rede foi adotada a ferra-
menta Node-red que imita dispositivos IoT, tais como sensores de temperatura, pressão e
umidade, usando programas escritos na linguagem JavaScript. Concomitantemente com
o tráfego IoT, o tráfego de diversos protocolos foram utilizados com o intuito de criar
um cenário mais próximo do encontrado em um ambiente de produção. Os autores re-
alizaram um trabalho de extração e tratamento dos dados, gerando rótulos e descritores
que foram utilizados nas análises de desempenho. Durante o processo, foram avaliados
os algoritmos Support Vector Machine (SVM), Recurring Neural Network (RNN) e Long
Short-Term Memory RNN (LSTM-RNN). Os resultados obtidos foram de analises offline
dos dados. Nenhum sistema de detecção foi apresentado.
2.3 Resumo
Um resumo dos trabalhos focados no combate aos ataques de negação de serviços em
ambientes SDN e IoT é apresentado na Tabela 2.1. Os trabalhos foram agrupados consi-
derando as principais características de cada uma das abordagens para o enfrentamento ao
DDoS, incluindo análise por amostragem (ApA) dos dados, diversidade de ataques (DA),
técnicas de detecção por aprendizagem de máquina (AM), desempenho embarcado (DE)
e processo de validação online (VO).
Observa-se, na revisão, o interesse dos pesquisadores em propor soluções em variadas
vertentes do problema, como arquitetura do sistema, técnicas de processamento, detecção
e classificação do tráfego e de possíveis ataques, além de estratégias de implantação de
2.3. RESUMO 13
Tabela 2.1: Resumo comparativo dos estudos de combate aos ataques DDoS.
Referência ApA DA AM DE VO
(Yin et al. 2018) 7 7 7 7 3
(Doshi et al. 2018) 7 7 3 7 7
(Ozcelik et al. 2017) 7 3 7 7 3
(Hasan et al. 2019) 7 3 3 7 7
(Sambandam et al. 2019) 7 - 7 7 3
(Manso et al. 2019) 7 7 7 7 3
(Sahay et al. 2017) 7 7 7 7 3
(Bhunia & Gurusamy 2017) 7 7 3 7 3
(Koroniotis et al. 2019) 7 3 3 7 7
Este trabalho 3 3 3 3 3
suas soluções, utilizando métricas e conjunto de dados atualizados que incorporem novos
vetores de ataques, aproximando a experimentação em laboratório com o ambiente de
operação real das redes de computadores.
Com relação à proteção contra os ataques DDoS, enumera-se os principais problemas
constatados na literatura:
1. Existe uma carência, nos trabalhos analisados, de uma solução final que atue como
um controlador sem fio, dedicado a redes IoT, visando proteção contra ataques de
negação de serviços originados desse tipo de rede. Os artigos apresentam análi-
ses em ambiente virtualizado, sendo esses sistemas normalmente implantados em
servidores em data centers, ambiente distante de pontos de conexão IoT, onde o
controlador deve atuar para mitigar um ataque DDoS;
2. A mitigação dos ataques DDoS o mais próximo possível de sua origem. Algumas
abordagens da literatura defendem que a mitigação seja realizada na rede da vítima
do ataque. Entretanto, essa solução, até o momento, mostrou-se ineficaz. Desta
forma, um controlador sem fio no ponto de conexão de dispositivos IoT pode ser
essencial para mitigar ataques originados desse segmento de rede;
3. O tratamento de grande volume de dados. Muitas das abordagens apresentadas na
literatura sofrem com restrições de recursos computacionais para tratar o grande
volume de dados decorrentes dos ataques de negação de serviços. A utilização
de técnicas de amostragem de tráfego na fase de detecção dos ataques, sem com-
prometimento significativo nas taxas de detecção e alarmes falsos, representa uma
contribuição relevante para a solução desse problema;
4. Violação da privacidade dos dados durante o tratamento do tráfego. Dada as abor-
dagens que adotam inspeção profunda dos pacotes, tratamento integral do tráfego
14 CAPÍTULO 2. ESTADO DA ARTE
ou redirecionamento de tráfego enfrentam problemas relacionados à privacidade.
Neste sentido, soluções que processem aleatoriamente apenas uma parte do trá-
fego, sem analisar o conteúdo dos pacotes, apresenta uma contribuição nesse tipo
de questão.
Desta forma, este trabalho propõe uma solução que atua como controlador sem fio
para redes IoT, atuando o mais próximo possível da ameaça, analisando amostra do trá-
fego de rede utilizando técnica de aprendizagem de máquina, detectando e mitigando
ataques DDoS.
Capítulo 3
Negação de Serviços em Redes IoT
A disseminação de dispositivos IoT trouxe um impacto significativo para a segurança
dos serviços na Internet. Aspectos industriais, erros de configuração e características
de operação facilitam a transformação desses dispositivos em agentes maliciosos. Este
capítulo descreve as principais vulnerabilidades e vetores de exploração dos dispositivos
IoT com foco em ataques DDoS. Além disso, são descritos cinco datasets presentes na
literatura e utilizados nesta dissertação para validação do sistema proposto.
3.1 Vulnerabilidades em Dispositivos IoT
Atualmente, muitos eletrodomésticos e dispositivos de automação residencial e indus-
trial possuem alguma forma de conexão com a Internet. Segundo (HPE 2015), quando
se considera equipamentos IoT em uma casa ou empresa, o número pode chegar a 60
dispositivos, em média. Ao observar que esses equipamentos fazem cada vez mais parte
da vida cotidiana, (Dragoni et al. 2018) cita um axioma IoT fundamental: "Tudo que está
conectado a Internet, pode ser hackeado". O que traz ainda mais preocupação é que por
esses dispositivos, trafegam dados pessoais sensíveis como data de nascimento, informa-
ção sobresaúde, números de cartões de crédito, entre outros, muitas vezes sem qualquer
proteção. Alguns exemplos são citados por (Dragoni et al. 2018), quanto a dispositivos
IoT que foram hackeados e trouxeram algum tipo de transtorno. Um deles foi um ferro
de passar, com um chip oculto infectado e que transmitiu vírus por uma rede WI-FI, além
de lâmpadas Philips Hues que foram comprometidas propositadamente por pesquisado-
res, mostrando que era possível fazê-las desligar ou piscar quando desejassem. Diversas
outras vulnerabilidades foram ainda detectadas em SmartTVs, Câmeras de segurança,
roteadores sem fio, termostatos e até carros inteligentes. A medida que o número de dis-
positivos IoT conectados aumenta exponencialmente, as preocupações com a segurança
das redes também aumenta na mesma proporção.
16 CAPÍTULO 3. NEGAÇÃO DE SERVIÇOS EM REDES IOT
Um estudo realizado por (HPE 2015) mostra que 60% dos dispositivos que possuem
interface com usuário são vulneráveis a problemas com credenciais fracas e cross-site
scripting (XSS). Relata ainda que, 80% dos dispositivos, juntamente com seus componen-
tes de aplicativos móveis e na nuvem, não exigiram senhas com complexidade e compri-
mento suficientes, e que 70% dos dispositivos estudados, juntamente com seus aplicativos
móveis e na nuvem, permitem que um invasor identifique contas de usuário válidas por
meio da enumeração de contas. Além disso, 70% deles utilizam serviços de rede não crip-
tografados. O estudo também descreve que 90% dos equipamentos coletou pelo menos
uma informação pessoal por meio do dispositivo, da nuvem ou de seu aplicativo móvel.
Essas fragilidades tornam os dispositivos IoT alvos mais fáceis para os invasores, que
buscam recrutar a maior quantidade de dispositivos possíveis para suas redes de ataques.
Cinco razões principais, segundo (Kolias et al. 2017), mostram a facilidade e a justificativa
para a utilização de dispositivos IoT para criação de botnets:
• Operação constante e discreta: Ao contrário dos laptops e computadores desktop,
que têm ciclos frequentes de liga/desliga, muitos dispositivos IoT, como webcams e
roteadores sem fio, operam 24 horas por dia, 7 dias por semana e, em muitos casos,
não são devidamente reconhecidos como dispositivos de computação.
• Fraca proteção: Em sua corrida para entrar no mercado de IoT, muitos fabricantes
negligenciam a segurança em favor da facilidade de uso.
• Má manutenção. A maioria dos dispositivos IoT cai sob o guarda-chuva de confi-
gurar e esquecer. Depois de configurá-los inicialmente, os usuários e administrado-
res de rede os esquecem, a menos que parem de funcionar corretamente.
• Tráfego de ataque considerável: Ao contrário da crença comum, os dispositivos
IoT são poderosos e estão bem situados, de forma que podem produzir um tráfego
de ataque DDoS comparável ao de sistemas de desktop modernos.
• Interfaces de usuário não interativas ou minimamente interativas: Como os
dispositivos IoT tendem a exigir intervenção mínima do usuário, é mais provável
que as infecções passem despercebidas. Mesmo quando são notados, não há ma-
neira fácil para o usuário intervir sem substituir o dispositivo.
Portanto, além do roubo de dados sensíveis, dispositivos IoT também podem ser in-
fectados para formarem botnets e realizar ataques massivos na Internet. As próximas
seções irão tratar das especificidades desse tipo de ameaça, trazendo um breve histórico e
estratégias de ataques DDoS.
3.2. BOTNETS IOT 17
3.2 Botnets IoT
Os estudos sobre botnets têm se intensificado nos últimos anos. Trata-se de uma es-
tratégia que visa controlar dispositivos vulneráveis à distância. Esse controle é feito de
forma não-autorizada por um botmaster ou mestre (Hoque et al. 2015), que busca manter
sua influência oculta. O uso orquestrado dessa rede de dispositivos para realização de
ataques caracterizam o termo botnet. A utilização desses dispositivos como arma ciber-
nética é um tópico ativo na área de segurança de redes, como mostrado em (Kambourakis
et al. 2017), (Hoque et al. 2015) e (Vlajic & Zhou 2018).
Esses diversos estudos tentam analisar o funcionamento dessas redes, assim como
formas de combater seus ataques. Em (Vlajic & Zhou 2018), indica-se que a utilização
desses dispositivos em ataques DDoS foi um dos tópicos mais abordados em notícias e
relatórios relacionados à segurança cibernética em 2017. Os principais motivos para tanta
preocupação foram os incidentes ocorridos no final de 2016, envolvendo o botnet Mirai e
o ataque, até aquele momento, recorde, com taxas de até 1,2 Tbps. Embora essa investida
tenha sido a que chamou atenção para o mundo IoT, o primeiro ataque observado foi de-
vido ao Psyb0t em 2009, segundo (Spognardi et al. 2017). Desde então, pelo menos uma
dúzia de outras linhagens de malware dessa categoria foram identificadas. Em, (Vlajic
& Zhou 2018) observa-se que embora Mirai e suas variantes continuem a dominar o ce-
nário DDoS IoT, outros dois malware vêm se mostrando potencialmente mais perigosos:
Hajime e o IoT_Reaper. Embora o Hajime não tenha nenhuma capacidade de ataque iden-
tificada até o momento, ele implementa uma arquitetura mais sofisticada, estabelecendo
um controle distribuído, reduzindo assim a possibilidade de falha. Quanto ao IoT_Rea-
per, sua principal vantagem sobre o Mirai é a sua estratégia de disseminação de botnet,
varrendo e infectando novos sistemas, sendo muito mais furtiva e direcionada. Apesar de
ainda não termos visto ataques DDoS envolvendo o IoT_Reaper, acredita-se que, até o
momento, esse malware tenha se espalhado para aproximadamente dois milhões de dis-
positivos IoT, o que equivale a cinco vezes o tamanho do botnet Mirai na época de seus
recordes de ataques DDoS em 2016. O dramático impacto dos ataques DDoS pelo Mirai,
suas variantes e outras botnets semelhantes, destacam os riscos que os dispositivos IoT
representam para a Internet, alertando a academia e o mercado para a necessidade de se
entender os métodos e os possíveis impactos desse tipo de ataque.
As próximas seções abordarão características e estratégias de funcionamento das bot-
nets e dos ataques DDoS. Entender o modo de operação fundamenta as ações necessárias
que a proposta de defesa contra essa ameaça deverá atender.
18 CAPÍTULO 3. NEGAÇÃO DE SERVIÇOS EM REDES IOT
3.3 Estratégias de Ataques DDoS
A realização de ataques orquestrados de DDoS exige um planejamento meticuloso.
Geralmente, a primeira fase dedica-se à identificação de alvos vulneráveis e pode ser cha-
mada de recrutamento. A segunda fase trata da exploração e infecção da vítima tornando-a
suscetível a obedecer comandos. Em seguida, são definidas as estratégias de comunica-
ção entre o atacante os bots. Por fim, a ultima fase é a execução do ataque. Em seguida,
detalha-se cada fase do ataque, como mostrado na Figura 3.1 (De Donno et al. 2018).
Recrutamento Exploraçãoe Infecção Comunicação Ataque
1 2 3 4
Figura 3.1: Etapas de um ataque DDoS.
1. Recrutamento: Nesta fase, o atacante procura alvos vulneráveis (possíveis bots) que
serão posteriormente utilizados para realizar ataques contra a vítima real ou prin-
cipal. Atualmente, esse processo é automatizado por ferramentas de escaneamento
ou embutido na codificação do malware que irá infectar esses dispositivos.
2. Exploração e infecção: Máquinas de agentes são adicionadas à botnet, explorando
suas vulnerabilidades conhecidas para infectá-las com o código malicioso. Esta
fase também é automatizada, com os próprios bots infectados se autopropagando,
recrutando e infectando novos membros.
3. Comunicação: O atacante usa a infraestrutura de comando e controle, a depender da
arquitetura adotada, para se comunicar com a rede de bots a fim de identificar quais
equipamentos estão em funcionamento, agendar ataques ou atualizar os agentes.
4. Ataque: O atacante comanda o início do ataque e as máquinas bots começam a
enviar pacotes maliciosos para a vítima. Os parâmetros de ataque (tais como vítima,
duração e propriedades dos pacotes maliciosos) são normalmenteajustados nesta
fase. Embora a falsificação de IP não seja um requisito para um ataque DDoS bem
sucedido, os atacantes frequentemente usam a falsificação do endereço IP de origem
para esconder a identidade das máquinas dos agentes durante o ataque.
De acordo com (De Donno et al. 2018) e (Spognardi et al. 2017), alguns modelos
3.3. ESTRATÉGIAS DE ATAQUES DDOS 19
de arquiteturas são propostos de acordo com os atores envolvidos. O modelo Mestre-
Escravo ou Gerente-Agente é composto por cliente, mestre ou gerente, escravos (ou bots,
agentes, vítimas secundárias) e vítima. O cliente é um dispositivo utilizado pelo atacante
para se comunicar com o resto da infraestrutura do ataque DDoS, conectando-se com o(s)
mestre(s) para agendar o ataque e identificar quais bots estão ativos, ou ainda atualizando
os agentes. Os mestres são pacotes de software que infectam recursos de rede localizados
em algum lugar na Internet, sendo usados pelo cliente para se comunicar com os agentes.
O termo agente ou bot é usado para referenciar a máquina comprometida ou o código em
execução. Normalmente, os proprietários desses equipamentos não têm ciência de que
estão comprometidos e que participam de ataques DDoS. O conjunto de agentes pode
interagir igualmente com um único ou com vários mestres.
Outro modelo proposto por (De Donno et al. 2018) e (Spognardi et al. 2017) é o re-
fletor, também conhecido por Distributed Reflection Denial of Service (DRDoS). Este
modelo trabalha com um conjunto de máquinas não infectadas, chamadas de refletores.
Essas máquinas são induzidas pelo atacante a enviar um alto fluxo de dados contra a ví-
tima. Normalmente os atacantes falsificam as requisições para as máquinas refletoras com
o endereço IP da vítima. Geralmente, essas requisições geram uma grande quantidade de
tráfego de rede endereçado ao host de destino (Spognardi et al. 2017). As máquinas
refletoras, em alguns casos, também são usadas como amplificadores, enviando pacotes
de dados para endereços broadcast de suas redes, disparando respostas de cada máquina
contida na rede local. Um refletor pode ser qualquer host na Internet que responda a
uma requisição IP, não necessitando infecção do mesmo. Ataques de reflexão mais co-
muns utilizam protocolo NTP, SNMP e DNS. São ataques mais difíceis de rastrear em
comparação com os ataques baseados no modelo Mestre-Escravo. Isto porque embora os
refletores sejam facilmente identificados como a origem dos pacotes de ataque recebidos
pela vítima, é mais difícil localizar os bots que estão enviando tráfego para os refletores.
Na arquitetura baseada em IRC, o atacante utiliza um programa gerente instalado em
um servidor de rede, o cliente é conectado aos agentes por meio de um canal de comu-
nicação IRC, sem a utilização de máquinas gerentes. O uso de um canal IRC beneficia
um invasor devido ao uso de portas IRC "legítimas"para enviar comandos aos agentes. O
uso dessas portas impede o rastreamento de pacotes de comando DDoS, permitindo que o
invasor se esconda na grande quantidade de dados enviados pelo servidor. O software do
agente na rede IRC envia e recebe mensagens através do canal IRC e informa o invasor
quando um agente se torna operacional.
Em (Spognardi et al. 2017), cita-se a arquitetura de ataque baseada na Web, parecida
com a IRC. Neste modelo de ataque a comunicação é baseada em HTTP / HTTPS, no
20 CAPÍTULO 3. NEGAÇÃO DE SERVIÇOS EM REDES IOT
qual, os agentes são configurados e controlados por meio de scripts PHP e comunicações
criptografadas. Alguns agentes são usados apenas para relatar estatísticas para um site de
controle. Segundo (De Donno et al. 2018), o modelo de ataque baseado na Web tem algu-
mas vantagens sobre o modelo IRC, como melhoria das funções de relatório e comando
(por exemplo, comandos mais complexos suportados), menores requisitos de largura de
banda, mascaramento de tráfego e obstrução de filtragem através do uso de portas padrão
80/443 e maior facilidade de uso.
Uma arquitetura mais moderna é citada por (De Donno et al. 2018), o modelo baseado
em P2P. Os malwares Linux.Wifatch e Hajime são exemplos que utilizam esse tipo de
funcionamento para controle dos bots. Ataques baseados em botnet, em sua maioria,
têm seus comandos centralizados em uma infraestrutura do tipo Comando-E-Controle
(do inglês Command-and-Control - CNC), composto de máquinas gerentes que têm o
papel de controlar todos os bots, sendo esses gerentes, um importante ponto de falha
no ataque. O modelo P2P resolve esse tipo de problema, descentralizando o controle
entre os bots, e retirando o papel das máquinas mestre, resultando em uma arquitetura
mais robusta e tolerante a falha. De fato, nos modelos mestre-escravo, o alvo, numa
tentativa de se defender, poderia bloquear os gerentes para derrubar a infraestrutura de
ataque, uma vez que há um número limitado deles. A abordagem P2P torna esse tipo de
defesa praticamente impossível, uma vez que o alvo teria que derrubar todos os bots para
perturbar a rede P2P.
A Figura 3.2 retrata as arquiteturas mestre-escravo, refletora, IRC e P2P.
A Tabela 3.1 lista algumas das ameaças recentes e suas características, capazes de
realizar ataques DDoS utilizando dispositivos IoT.
3.4 Tipos de Ataques DDoS
Um ataque de negação de serviço tem como objetivo incapacitar o oferecimento de
serviço, incapacitando a máquina que provê tal serviço ou esgotando os recursos de rede
no qual, o serviço está localizado. Segundo (Asosheh & Ramezani 2008), o atacante pode
fazer isso de duas formas: esgotando recursos de memória, CPU ou de capacidade de rede
através de ataques de inundação, ou explorando vulnerabilidades inerentes a implementa-
ção de protocolo.
Quando o atacante utiliza ataques de inundação, ele apenas envia uma grande quan-
tidade de pacotes legítimos, através de botnets, com o objetivo de saturar e obstruir os
recursos de comunicação e/ou recursos computacionais, como processador, memória, en-
tre outros, evitando assim que o alvo receba tráfego legítimo. Exemplos desse tipo de
3.4. TIPOS DE ATAQUES DDOS 21
...
Cliente
Mestres
Bots
Vítima
(a) Modelo Mestre-Escravo
...
Cliente
Mestres
Bots
Vítima
Refletores
(b) Modelo Refletor
...
Cliente
Bots
Vítima
IRC
(c) Modelo IRC
Cliente
Bots
Vítima
(d) Modelo P2P
Figura 3.2: Arquitetura de ataques DDoS
ataque são SYN Flood e UDP Flood. Outro tipo de ataque que se encaixa nessa categoria
são os ataques de amplificação, citados anteriormente. O atacante usa refletores interme-
diários e direciona ataques volumétricos para a vítima, forjando o seu endereço IP nas
requisições. Segundo (Spognardi et al. 2017), ataques de reflexão utilizando amplificação
de DNS são bastante conhecidos.
Nos ataques que exploram vulnerabilidades de protocolo, o atacante utiliza caracterís-
ticas de funcionamento dos protocolos ou usam pacotes mal formados para sobrecarregar
o alvo, segundo (Asosheh & Ramezani 2008). Os ataques TCP SYN e TCP PUSH e ACK
são exemplos que utilizam essa estratégia. Em (De Donno et al. 2018), explica que no
ataque TCP SYN, a vulnerabilidade inerente ao TCP three-way handshake é explorada.
O servidor precisa alocar uma estrutura de dados para cada pacote SYN de entrada, inde-
pendentemente de sua autenticidade. Desta forma, o atacante usa seus agentes para enviar
um grande número de pacotes TCP SYN para o sistema da vítima com endereços IP de
22 CAPÍTULO 3. NEGAÇÃO DE SERVIÇOS EM REDES IOT
Tabela 3.1: Características de Malwares IoT causadores de DoS.
Malware DDoS
Nome Ano Arquitetura Ataque
Linux.Hydra 2008 Baseado em IRC SYN Flood, UDP Flood
Psyb0t 2009 Baseado em IRC
SYN Flood, UDP Flood,
ICMP Flood
Chuck Norris 2010 Baseado em IRC
SYN Flood, UDP Flood,
ACK Flood
Tsunami, Kaiten 2010 Baseado em IRC
SYN Flood, UDP Flood,
ACK-PUSH Flood, HTTP
Flood, TCP XMAS
Aidra, LightAidra, Zendran 2012 Baseado em IRC SYN Flood, ACK Flood
Spike, Dofloo, MsBlack,
Wrkatk, Sotdas, AES.DdoS 2014 Mestre-escravo
SYN Flood, UDP Flood,
ICMP Flood, DNS Query
Flood, HHTP Flood
BASHLITE,Lizkebab, Tor-
lus, Gafgyt 2014 Mestre-escravo
SYN Flood, UDP Flood,
ACK Flood
Elknot, BillGates Botnet 2015 Mestre-escravo
SYN Flood, UDP Flood,
ICMP Flood, DNS Query
Flood, DNS Amplification,
HTTP Flood, TCP Flood
XOR.Ddos 2015 Mestre-escravo
SYN Flood, ACK Flood,
DNS Query Flood, DNS Am-
plification, TCP Flood
LUABOT 2016 Mestre-escravo HTTP Flood
Remaiten, KTN-RM 2016 Baseado em IRC
SYN Flood, UDP Flood,
ACK Flood, HTTP Flood
New Aidra, Li-
nux.IRCTelnet 2016 Baseado em IRC
SYN Flood, ACK Flood,
ACK-PUSH Flood, TCP
XMAS Flood, TCP Flood
Mirai 2016 Mestre-escravo
SYN Flood, UDP Flood,
VSE Query Flood, DNS Wa-
ter Torture, GRE IP Flood,
GRE ETH Flood, HTTP
Flood
origem falsificados. Os pacotes TCP SYN/ACK de resposta da vítima são enviados para
os endereços falsificados e, portanto, não serão reconhecidos, deixando a máquina alvo
esperando indefinidamente pelos pacotes ACK. Considerando que o sistema da vítima
tem um buffer limitado para novas conexões TCP, quando um grande volume de solicita-
ções TCP SYN é processado e nenhum pacote ACK é recebido, ele fica sem recursos e
é incapaz de processar solicitações legítimas dos usuários. Já em um ataque TCP PUSH
3.4. TIPOS DE ATAQUES DDOS 23
e ACK, pacotes TCP com flags PUSH e ACK colocadas são enviados pelos bots para a
vítima. Estas flags instruem a máquina da vítima a descarregar todos os dados no buffer
TCP de entrada e a enviar de volta um ACK. Se uma grande quantidade de pacotes TCP
PUSH e ACK for enviada de diferentes bots para o sistema da vítima, ela está sobrecarre-
gada e incapacitando o servidor. O atacante também pode utilizar pacotes mal formados
para inabilitar a máquina alvo, como por exemplo o ataque TCP XMAS, que consiste em
manipular alguns pacotes ativando todos os sinalizadores (especialmente os sinalizado-
res URG, PUSH e FIN). Essa combinação de sinalizadores é inesperada para o sistema,
exigindo bastante tempo e esforço para processá-los, causando assim, paralisia de seus
serviços.
Segundo (Spognardi et al. 2017) e (De Donno et al. 2018), ataques DDoS podem ser
diferenciados também de acordo com a camada do protocolo TCP/IP a ser explorada,
sendo classificados como ataque de nível de rede e ataques de nível de aplicação. Em ata-
ques de negação de serviço de nível de rede, protocolos da camada de rede ou transporte
são utilizados para esgotar os recursos da vítima. Exemplos desse tipo de ataque são o
TCP SYN Flood, UDP Flood e TCP Flood. Já ataques de nível de aplicação, tem como
objetivo usar as características de funcionamento de protocolos de aplicação, como por
exemplo HTTP e DNS. Exemplos desse tipo de ataque são HTTP Flood e por reflexão
e amplificação DNS. No ataque de inundação HTTP, um grande número de solicitações
HTTP é enviado pelos agentes ao servidor da vítima para esgotar seus recursos. Estes pe-
didos são formulados com precisão para maximizar o poder de ataque e evitar a detecção.
Por exemplo, uma única solicitação HTTP que baixa um arquivo grande de um servidor
pode consumir significativamente seus recursos, mas a repetição de solicitações de ar-
quivos grandes pode ser facilmente detectada e bloqueada. Assim, os atacantes podem
simular tráfego HTTP legítimo instruindo os bots a enviar solicitações ao alvo e assim,
esgotar os recursos das vítimas. Nesse tipo de ataque é extremamente difícil distinguir
o tráfego malicioso do legítimo. Em um ataque de reflexão e amplificação de DNS, o
atacante envia requisições DNS para um servidor de nomes, usado como refletor, falsi-
ficando seu endereço IP de origem com o da vítima. O servidor de nomes responde a
essas solicitações enviando de volta as respostas DNS para a vítima. A depender do tipo
de requisição realizada, a resposta gerada pelo servidor DNS pode ser significativamente
maior, produzindo uma grande quantidade de dados para vítima processar, esgotando as-
sim, recursos como largura de banda.
Quando observamos o modelo proposto para o Smart-IoT para a classificação dos
ataques elencados nesta seção, embora o sistema tenha uma classificação binária, ataque
e normal, ele consegue detectar ataques de inundação TCP e UDP, ataque de camada de
24 CAPÍTULO 3. NEGAÇÃO DE SERVIÇOS EM REDES IOT
aplicação como inundação HTTP e ataques de baixo volume HTTP.
3.5 Datasets
Nessa pesquisa, foram utilizados cinco datasets recentes na condução dos experimen-
tos. Esses conjuntos de dados incluem ameaças modernas e técnicas avançadas de ataques
DDoS bem documentadas, incluindo as informações relativas à rotulagem do tráfego le-
gítimo e malicioso.
3.5.1 ISCXIDS2012
Produzido e fornecido pelo Information Security Center of Excellence, ISCX, da Uni-
versidade de New Brunswick, esse dataset possui dados de tráfego legítimo de protocolos
como FTP, HTTP, SSH, SMTP, IMAP e POP3, coletados por sete dias, cobrindo cená-
rios de atividades normais. O ISCXIDS2012, em (Shiravi et al. 2012a), possui tráfego de
rede rotulado, contendo área de dados dos pacotes e arquivos de tráfego bruto de rede no
formato PCAP. O dataset foi publicado no trabalho (Shiravi et al. 2012b).
Nessa pesquisa, parte desse dataset foi utilizado como fonte de tráfego legítimo, sendo
seu conteúdo processado de forma a se obter assinaturas (descritores) para a base de
treinamento do modelo.
3.5.2 CIC-DoS
Esse conjunto de dados, também produzido e fornecido pelo ISCX, utilizou quatro
tipo de ferramentas de ataques de negação de serviço, gerando oito tipo de ataques DoS
distintos a partir da camada de aplicação (Jazi et al. 2017b). Foram capturados 24 horas
de tráfegos de rede, em um total de 4,6 GB de dados e 26 ataques. Um resumo dos eventos
e ferramentas de ataque utilizados no CIC-DoS, em (Jazi et al. 2017a), é apresentado na
Tabela 3.2.
O dataset é composto, em sua maioria, por ataques lentos e de baixo volume (Jazi
et al. 2017b), explorando fraquezas ou vulnerabilidades específicas da camada de aplica-
ção. Esses ataques são caracterizados por pequenas quantidades de tráfego e/ou por envio
periódico de curto tempo desses dados. Observa-se na Tabela 3.2, que na média de paco-
tes por ataques, somente os ataques utilizando a ferramenta ddosim são de alto volume,
os demais são ataques furtivos.
3.5. DATASETS 25
Tabela 3.2: Ferramentas de ataque e eventos constantes no dataset CIC-DoS.
Ferramentas Camada Eventos Duração Pacotes
ddossim (ddossim) Rede/transporte 2 138 s 46081
DoS improved GET (Goldeneye
(Seidl 2017)) Aplicação 3 452 s 6084
DoS GET (hulk (Grafov 2016)) Aplicação 4 546 s 8482
slow body (slowbody2) Aplicação 4 834 s 9106
slow read (slowread) Aplicação 2 404 s 29103
slow headers (slowheaders) Aplicação 5 575 s 25503
Rudy (rudy) Aplicação 4 65 s 7066
slowloris (slowloris) Aplicação 2 150 s 12518
Na utilização da ferramenta slowhttptest (Shekyan 2016), para ataques de baixo vo-
lume, foi adotado o valor padrão de cinquenta conexões por ataque, tornando os ataques
mais furtivos de acordo com (Jazi et al. 2017b).
3.5.3 CICIDS2017
O CICIDS2017 (Sharafaldin et al. 2017) produzido e fornecido pelo ISCX, possui
tráfego legítimo e ataques comuns mais atualizados. Esse conjunto de dados possui sete
famílias de ataques recentes e bastante utilizados no mundo real (Sharafaldin et al. 2018).
Foi utilizado o arquivo de captura de tráfego do dia 5 de julho de 2017, consistindo
de cinco ataques de negação de serviço e uma grande quantidade de tráfego legítimo. O
resultado foi um conjunto com 8 horas de tráfego com 13 GB de dados.
O conjunto de dados CICIDS2017 foi desenvolvido recentemente pelo ISCX e contém
tráfego normal e os ataques comuns mais atualizados. Esse novo conjunto de dados inclui
sete famílias comuns de ataques atualizados que atendem aos critérios do mundo real e
está livremente disponível ao público em (Sharafaldin et al. 2018). As ferramentas de
ataque usadas incluem slowloris, Slowhttptest, Hulk, GoldenEye e Heartbleed.
3.5.4 Bot-IoT
O dataset Bot-IoT (Koroniotis et al. 2018) foi apresentado em (Koroniotis et al. 2019).
Produzido e fornecido pelo Cyber Range Labda Universidade de New South Wales Can-
berra. O conjunto de dados incorpora tráfego legítimo e tráfego de botnet IoT sendo
fornecidos em diferentes formatos, incluindo os arquivos PCAP originais, separados com
base na categoria e subcategoria de ataque.
Os arquivos PCAP capturados têm 69,3 GB de tamanho, com mais de 72 milhões de
26 CAPÍTULO 3. NEGAÇÃO DE SERVIÇOS EM REDES IOT
registros. O conjunto de dados inclui ataques DDoS, DoS, varredura de sistema operacio-
nal e serviço, keylogging e exfiltração de dados, com os ataques DDoS e DoS organizados
com base no protocolo usado.
Nessa pesquisa, foram utilizados fragmentos de tráfego de ataques de negação de ser-
viço distribuído (DDoS) utilizando o protocolo TCP, mais precisamente, usando a fer-
ramenta Hping3 (Jombart et al. 2014) para realizar ataques de inundação (Koroniotis
et al. 2019). Foram realizados 20 ataques sequenciais com intervalo de dez minutos,
utilizando o fragmento de tráfego.
3.5.5 Smart Defender
Um dataset próprio foi produzido pela UFRN (Lima-Filho 2019) em ambiente con-
trolado. Na sua criação, foi gerado tráfego por 24 horas, com ataques programados a
cada 30 minutos. Durante esse período, foram totalizados 48 ataques, sendo 19 de baixo
volume e 29 de alto volume, com um total de 6,1 GB de tráfego de rede.
As ferramentas utilizadas foram configuradas para refletir a maioria dos ataques en-
contrados na literatura e nos relatórios de segurança das empresas especializadas, como
mostrado na Tabela 3.3. O dataset foi publicado em (Lima-Filho 2019).
Tabela 3.3: Ferramentas de ataque e eventos constantes no dataset Smart Defender.
Ferramenta de Ataque Eventos
TCP SYN Flood (hping3 (Jombart et al. 2014)) 4
TCP SYN Flood - light mode (hping3 (Jombart et al. 2014)) 4
TCP ACK Flood (hping3 (Jombart et al. 2014)) 4
UDP Flood (hping3 (Jombart et al. 2014)) 4
UDP Flood - random dst port (hping3 (Jombart et al. 2014)) 4
DoS improved GET (Goldeneye (Seidl 2017)) 5
DoS GET (hulk(Grafov 2016)) 4
slow headers (slowhttptest (Shekyan 2016)) 5
slow body (slowhttptest (Shekyan 2016)) 5
range attack (slowhttptest (Shekyan 2016)) 4
slow read(slowhttptest (Shekyan 2016)) 5
3.6 Métricas de Avaliação
Algumas métricas foram utilizadas para avaliar o desempenho da solução proposta
neste trabalho, verificando tanto a atuação do módulo de detecção no processamento dos
3.6. MÉTRICAS DE AVALIAÇÃO 27
datasets apresentados na Seção 3.5, quanto a capacidade de generalização do modelos
testados, sendo elas: Precisão (PR), F1-Score (F1), Taxa de Detecção (TD) e Taxa de Falso
Alarme (TFA) (Sokolova & Lapalme 2009).
Essas métricas de desempenho são baseadas nas quantidades de acertos e erros de
uma classificação binária. Assim, levando-se em conta que a classe alvo é a classe ataque,
deve-se computar como Verdadeiros Positivos (V P) o número de vezes que o classificador
acerta a classe alvo, ou seja, rotula-o como ataque. Enquanto que a quantidade de Verda-
deiros Negativos (V N) se dá quando o classificador reconhece corretamente os exemplos
que não pertencem à classe alvo, Falso Positivo (FP) ocorre quando o resultado da classi-
ficação resultar, incorretamente, na classe ataque. Já o Falso Negativo (FN) se dá quando
o resultado for previsto, incorretamente, como não pertencente à classe alvo.
Logo, a Precisão (PR), também conhecida valor preditivo positivo, mede a capacidade
do classificador prever corretamente a classe positiva, ou seja, ela é uma boa medida para
determinar o impacto de resultados do tipo falso positivo. Uma baixa precisão, cenário
onde ocorre muitos falsos positivos, significa que o sistema está penalizando tráfego de
dispositivos IoT que estão operando legitimamente. A equação que calcula o valor de PR
é dada por:
PR =
V P
V P+FP
(3.1)
A métrica Recall (RC) é utilizada para indicar a relação entre as previsões positivas
realizadas corretamente (V P) e todas as previsões que realmente são positivas (V P e FN).
Identificando qual o percentual de classificações foram realmente positivas obtidas pelo
modelo.
A medida F1 estabelece uma relação entre as métricas precisão e recall, através do
cálculo de uma média harmônica entre as duas. Está medida indica quando a precisão
ou recall apresentam valores baixos, já que a medida se aproxima dos valores menores
quando calculada. RC e F1 são calculados pelas seguintes equações:
RC =
V P
V P+FN
(3.2)
F1 = 2×
PR ×RC
PR +RC
(3.3)
A Taxa de Detecção (TD) é a razão entre o número de ataques detectados pelo sistema
(AD) e o número real de ataques presentes no tráfego de rede conhecido (TA), mais es-
pecificamente para a pesquisa realizada, a detecção de um ataque foi computada quando
28 CAPÍTULO 3. NEGAÇÃO DE SERVIÇOS EM REDES IOT
houve a classificação positiva de um ou mais fluxo durante o período de ataque documen-
tado para os datasets utilizados. A TD é calculada pela seguinte equação:
TD =
AD
TA
, (3.4)
enquanto que a Taxa de Falsos Alarmes (TFA), também é conhecida na literatura como taxa
de falso, indica a relação entre a quantidade de classificações erradas de ataque e a soma
da quantidade de classificações corretas de normal e classificações erradas de ataque. TFA
é calculado pela seguinte equação:
TFA =
FP
FP+V N
, (3.5)
em que, FP corresponde às classificações falsas positivas e V N são as verdadeiras nega-
tivas.
Os cálculos de TD e TFA assumem que apenas o tráfego malicioso foi enviado do
atacante para a vítima durante o ataque.
3.7 Resumo
Com o objetivo de contextualizar a relevância do sistema Smart-IoT no cenário de
segurança de redes, este capítulo apresentou algumas estratégias utilizadas em ataques
de DoS e DDoS à Internet, assim como as vulnerabilidades dos dispositivos IoT que
costumam ser exploradas nesses ataques.
Nos últimos anos diversos ataques massivos, utilizando dispositivos IoT, foram rea-
lizados, com destaque ao ocorrido em 2016 pela Mirai Botnet. Além do Mirai, diversos
outros malware IoT, especializados em DDoS vêm surgindo, fazendo com que a academia
e a industria percebam a necessidade de se pesquisar e estudar essas ameaças. Assim, mo-
delos de arquitetura, modos de operação e os protocolos utilizados por esses ataques são
documentados e atualizados periodicamente pelos pesquisadores do assunto. A Tabela 3.4
lista um resumo das arquiteturas de ataques DDoS discutidos nesse capítulo, apontando o
tipo de arquitetura e os respectivos atores.
Além disso, neste capítulo foram listados os datasets utilizados nesta pesquisa. A uti-
lização de datasets atuais e realísticos foi uma preocupação deste trabalho, com o objetivo
de trazer vetores e comportamento de rede mais próximos do encontrado no mundo real.
A Tabela 3.5 lista um resumo destes datasets e sua utilização na pesquisa, como no caso
do ISCXIDS2012, apenas como integrante da base de assinatura e os demais datasets
3.7. RESUMO 29
Tabela 3.4: Resumo das arquiteturas de ataques DDoS.
Arquitetura Atores
Mestre-Escravo Cliente, Mestre(s) e Bots
Refletor Cliente, Mestre(s), Bots e Refletores
Baseado em IRC Cliente, Servidores IRC e Bots
Baseada em Web Cliente, Servidores HTTP e Bots
P2P Cliente e Bots
utilizados na etapa experimental da pesquisa.
Tabela 3.5: Resumo dos datasets utilizados.
Dataset N. Ataques Assinaturas Expermimentos
ISCXIDS2012 0 3 7
CIC-DoS 26 7 3
CICIDS2017 5 7 3
Bot-IoT 20∗ 7 3
SmartDefender 48 7 3
∗Fragmento PCAP de ataque foi utilizado em 20 ataques.
30 CAPÍTULO 3. NEGAÇÃO DE SERVIÇOS EM REDES IOT
Capítulo 4
Smart-IoT
Este capítulo é dedicado à apresentação e caracterização do Smart-IoT, incluindo uma
descrição de sua arquitetura e de seus mecanismos de detecção e proteção, assim como,
uma avaliação experimental de seu desempenho o comparando a outros trabalhos da lite-
ratura de forma a situar o Smart-IoT no estado da arte.
4.1 Arquitetura Smart-IoT
O sistema Smart-IoT foi projetado para conectar de maneira segura dispositivos IoT
às redes domésticas ou corporativas. Operando como um Ponto de Acesso (PA) sem fio,
o sistema proposto analisa

Continue navegando