• Nenhum resultado encontrado

Smart-IoT: um sistema de proteção contra DDoS para rede de Internet das Coisas

N/A
N/A
Protected

Academic year: 2021

Share "Smart-IoT: um sistema de proteção contra DDoS para rede de Internet das Coisas"

Copied!
84
0
0

Texto

(1)

UNIVERSIDADEFEDERALDO RIO GRANDE DO NORTE

UNIVERSIDADEFEDERAL DORIOGRANDE DO NORTE

CENTRO DETECNOLOGIA

PROGRAMA DEPÓS-GRADUAÇÃO EMENGENHARIAELÉTRICA E

DECOMPUTAÇÃ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

(2)

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

(3)

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

(4)
(5)

Aos meus filhos e esposa, João,

Filipe e Christianne, pela paciência

e amor durante a realização deste

trabalho.

(6)
(7)

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.

(8)
(9)

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 aproveita-segurança desaproveita-ses 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.

(10)
(11)

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.

(12)
(13)

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

(14)

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 de continuação do trabalho . . . 56

5.2 Produção Científica . . . 56

(15)

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-tasetSmart 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

(16)
(17)

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

(18)
(19)

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

(20)

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

(21)

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

(22)

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 especialistas em 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 ataata-ques 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.

(23)

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

(24)

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.

(25)

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, envolde-vendo 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.

(26)

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 relacionadas a 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 S2armazena os resultados de S1no último ciclo de detecção normal. No final de

cada ciclo de detecção, a divergência d(S1, S2) entre S1e S2é calculada. Se a diferença

entre as duas tabelas ultrapassar um certo δtestipulado, 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

(27)

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

frameworkhí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 samplinge 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

(28)

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

(29)

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 Yi1e uma tomada inteligente da Belkins2diretamente

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 Linux3e 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

(30)

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,

(31)

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 POX4para 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ção de 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,

(32)

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

(33)

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 esanáli-ses 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

(34)

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.

(35)

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 sobre saú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.

(36)

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.

(37)

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:

Hajimee 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-netse dos ataques DDoS. Entender o modo de operação fundamenta as ações necessárias

(38)

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 execucomunica-ção do ataque. Em seguida, detalha-se cada fase do ataque, como mostrado na Figura 3.1 (De Donno et al. 2018).

Recrutamento Exploração

e 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 normalmente ajustados 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.

(39)

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

(40)

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

(41)

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

(42)

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

(43)

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 ACKfor 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 sinalizadosinalizado-res é 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

(44)

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.

(45)

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 Lab da 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.

Referências

Documentos relacionados

A Lei nº 2/2007 de 15 de janeiro, na alínea c) do Artigo 10º e Artigo 15º consagram que constitui receita do Município o produto da cobrança das taxas

O teste de patogenicidade cruzada possibilitou observar que os isolados oriundos de Presidente Figueiredo, Itacoatiara, Manaquiri e Iranduba apresentaram alta variabilidade

aquilo e comentou na semana passada na palavra livre que a administração começou perdendo tirando a EPAGRI daqui, e acha que perdeu bastante, quando a gente coloca

O objetivo deste trabalho foi validar a aplicação do Female Sexual Function Index (FSFI) em uma amostra de mulheres de casais inférteis que desejam engravidar e de mulheres

5.2 Importante, então, salientar que a Egrégia Comissão Disciplinar, por maioria, considerou pela aplicação de penalidade disciplinar em desfavor do supramencionado Chefe

Assim, este estudo buscou identificar a adesão terapêutica medicamentosa em pacientes hipertensos na Unidade Básica de Saúde, bem como os fatores diretamente relacionados

O presente artigo pretende discutir o exercício do controle de constitucionalidade de leis e atos normativos por de entidades e órgãos não

e/ou em fundos de investimento que compram ativos financeiros negociados no exterior e, consequentemente, sua performance pode ser afetada por requisitos legais