Você está na página 1de 12

2019 IEEE 5º Fórum Mundial sobre Internet das Coisas (WF-

IoT)
Assine o DeepL Pro para traduzir documentos maiores.
Visite www.DeepL.com/propara mais informações.

EDIMA: Detecção precoce da actividade da rede


de malwares IoT utilizando técnicas de
aprendizagem automática
Ayush Kumar e Teng Joon Lim
Departamento de Engenharia Electrotécnica e Informática
Universidade Nacional de Singapura
Singapura
ayush.kumar@u.nus.edu, eleltj@nus.edu.sg

então, tem havido uma proliferação de malware IoT. Os


Resumo - A adopção generalizada da Internet das Coisas levou "miúdos" de script, bem como os hackers profissionais de
a muitas questões de segurança. Postar o ataque DDoS baseado blackhat/greyhat têm utilizado o código fonte que foi divulgado
em Mirai em 2016 que comprometeu os dispositivos IoT, uma
série de novos malware utilizando o código fonte de Mirai e
para construir o seu próprio malware de IoT. Estes malwares
visando os dispositivos IoT surgiram, por exemplo, Satori, são geralmente variantes de Mirai usando uma técnica de força
Reaper, Amnésia, Masuta, etc. Estes malwares exploram bruta semelhante de scan de endereços IP aleatórios para
vulnerabilidades de software para infectar dispositivos IoT em 978-1-5386-4980-0/19/$31.00 Qc 2019 IEEE
vez de abrir portas TELNET (como Mirai), tornando-os mais
difíceis de bloquear utilizando soluções existentes, tais como
firewalls. Nesta pesquisa, apresentamos EDIMA, uma solução
modular distribuída que pode ser utilizada para a detecção da
actividade de redes de malware de IoT em redes de grande escala
(por exemplo, ISP, redes empresariais) durante a fase de
scan/infecção e não durante um ataque. EDIMA emprega
algoritmos de aprendizagem de máquinas para classificação de
tráfego de dispositivos de borda, uma base de dados vectorial de
características de tráfego de pacotes, um módulo de política e um
módulo opcional de sub-amostragem de pacotes. Avaliamos o
desempenho da classificação da EDIMA através de experiências
de banco de ensaio e apresentamos os resultados obtidos.
Termos do Índice - Internet das Coisas, IoT, Malware, Mirai,
Reaper, Satori, Botnet, Bot Detection, Machine Learning,
Anomaly De-techtion

I. INTRODUÇÃO
A Internet das Coisas (IoT) [1] é uma rede de dispositivos
de detecção com recursos limitados e capaz de comunicações
com e sem fios com serviços de nuvem. Os dispositivos da
Internet das Coisas estão a ser cada vez mais visados por
atacantes que utilizam malware, uma vez que são mais fáceis
de infectar do que os computadores convencionais. Isto deve-
se a várias razões [2] como a presença de dispositivos
herdados sem actualizações de segurança, baixa prioridade
dada à segurança dentro do ciclo de desenvolvimento, fracas
credenciais de login, etc.
Num ataque amplamente divulgado, o malware IoT Mirai
foi utilizado para propagar o maior ataque DDoS (Distributed
Denial-of- Service) de que há registo a 21 de Outubro de
2016. O ataque teve como alvo os servidores Dyn DNS
(Domain Name Service) [3] e gerou um rendimento de ataque
da ordem de 1,2 Tbps. Desactivou os principais serviços da
Internet, tais como a Amazon, Twitter e Netflix. Os atacantes
tinham infectado dispositivos IoT, tais como câmaras IP e
gravadores DVR com Mirai, criando assim um exército de
bots (botnet) para participar no ataque DDoS.
O código fonte de Mirai foi divulgado em 2017 e, desde
Autho9r7iz8ed-1li-c5en3s8e6d-u4s9e8lim0-it0ed/1to9:/b$-3on1: . I 0 n 0 s t i t © u t o 2 0 P 1 o l 9 i t e I c E n i E c E o deBeja. Downloa2d8ed9on 16,2022deNovembroàs 17:52:06UTCdaIEEE
Xplore.Aplicam-serestrições.
2019 IEEE 5º Fórum Mundial sobre Internet das Coisas (WF-
IoT)

abrir portas TELNET e tentar iniciar sessão usando um


dicionário incorporado de credenciais normalmente utilizadas
(Remaiten, Hajime), ou malware mais sofisticado que
explora vulnerabilidades de software para executar injecções
de comandos remotos em dispositivos de vulnera- ble
(Reaper, Satori, Masuta, Linux.Darlloz, Amnésia, etc.).
Embora a exploração da porta TELNET possa ser contrariada
através da instalação de firewalls (no gateway de acesso do
utilizador) que bloqueiam o tráfego TELNET de
entrada/saída, o malware que explora vulnerabilidades de
software envolvendo protocolos de aplicação tais como
HTTP, SOAP, PHP etc. são mais difíceis de bloquear
utilizando firewalls porque esses protocolos de aplicação
também fazem parte do tráfego legítimo.
Os robots comprometidos por Mirai ou malware IoT
semelhante podem ser utilizados para ataques DDoS,
phishing e spam [4]. Estes ataques podem causar paralisação
da rede por longos períodos que podem levar a perdas
financeiras para as empresas da rede, e fuga de dados
confidenciais dos utilizadores. Bitdefender mencionado no
seu blog em Setembro de 2017 [5] que os investigadores
tinham estimado em pelo menos 100.000 dispositivos
infectados por Mirai ou malware semelhante revelado
diariamente através de dados de telemetria de varrimento
TELNET. Num artigo de Outubro de 2017 [6], os
investigadores da Arbor estimaram que a dimensão real da
rede de bots Reaper flutuou entre 10.000-20.000 bots, mas
avisaram que este número poderia mudar a qualquer
momento, tendo 2 milhões de dispositivos adicionais sido
identificados pelos scanners de botnet como potenciais bots
Reaper. Um relatório do laboratório Kaspersky [7] divulgado
em Setembro de 2018 diz que 121.588 amostras de malware
IoT foram identificadas na primeira metade de 2018, o que
foi três vezes o número de amostras de malware IoT em todo
o ano de 2017.
Além disso, espera-se que muitos dos dispositivos
infectados permaneçam infectados durante muito tempo.
Portanto, existe uma motivação substancial para detectar
estes bots IoT e tomar as medidas adequadas contra eles, de
modo a que não sejam capazes de causar mais danos. Como
referido em [8], a tentativa de garantir que todos os
dispositivos da Internet das coisas sejam seguros por
construção é inútil e é praticável - tecnicamente inviável -
implantar mecanismos tradicionais de detecção e prevenção
baseados em hospedeiros, tais como antivírus, firewalls para
dispositivos de Internet das coisas. Por conseguinte, torna-se
imperativo que os mecanismos de segurança para o
ecossistema IdC sejam concebidos para serem baseados em
redes e não em host-based.
Nesta investigação, propomos uma solução para detectar a
actividade de rede de malware da Internet em redes de grande
escala, tais como redes empresariais e ISP (Internet Service
Provider).

Autho9r7iz8ed-1li-c5en3s8e6d-u4s9e8lim0-it0ed/1to9:/b$-3on1: . I 0 n 0 s t i t © u t o 2 0 P 1 o l 9 i t e I c E n i E c E o deBeja. Downloa2d8ed9on 16,2022deNovembroàs 17:52:06UTCdaIEEE


Xplore.Aplicam-serestrições.
2019 IEEE 5º Fórum Mundial sobre Internet das Coisas (WF-
IoT)

A nossa solução proposta consiste em algoritmos de Também tem havido alguma investigação sobre sistemas de
aprendizagem mecânica (ML) executados no gateway de detecção de intrusão e de anomalias para a Internet das coisas.
acesso do utilizador que detectam a actividade malware com Foi apresentado em [12] um sistema de detecção de intrusão
base nos seus padrões de tráfego de varrimento, uma base de baseado em whitelist-based intrusion detection system for IoT
dados que armazena os padrões de tráfego de varrimento devices (Heimdall). Os autores em [13] propõem um modelo
malware e pode ser utilizada para recuperar ou actualizar de detecção de intrusão para redes de backbone IoT
esses padrões, e um módulo de política que decide o curso de alavancando a redução de duas camadas de dimensão e
acção posterior após o tráfego de gateway ter sido classificado técnicas de classificação de dois níveis - niques para detectar
como malicioso. Inclui também um módulo opcional de sub- ataques U2R (User-to-Root) e R2L (Remote-to- Local).
amostragem de pacotes que pode ser implantado, por Ultimamente, tem havido um interesse na detecção de
exemplo, no caso de empresas onde vários dispositivos IoT botnets e ataques na comunidade de investigação, resultando
(≈ 10-100) estão ligados a um único gateway de acesso. A numa série de documentos que abordam estes problemas. Em
solução de detecção de bot pode ser implementada tanto em [14], a detecção de anomalias baseadas em auto-
gateways de acesso físico fornecidos pelas empresas ISP autocodificadores profundos tem sido utilizada para detectar
como como em funções NFV (Network Function ataques lançados a partir de redes de bots IoT. Alguns
Virtualization) nas instalações/empresas do cliente numa trabalhos concentraram-se na construção de perfis de
arquitectura de rede baseada em SDN-NFV, onde SDN comunicação normais para dispositivos IoT que não se espera
significa "Software-Defined Net- working". que se desviem muito durante um longo período de tempo.
A nossa solução visa, em particular, a varredura de botes e DEFT [15] tem utilizado algoritmos ML em controladores
a infecção de dispositivos vulneráveis. Isto porque a fase de SDN e gateways de acesso para construir impressões digitais
scan- ning e propagação do ciclo de vida do botnet se estende normais de tráfego de dispositivos, enquanto [16] propõe uma
por muitos meses e podemos detectar e isolar os bots antes ferramenta para gerar automaticamente perfis MUD
que eles possam participar num ataque real como o DDoS. Se (Descrição de Utilização do Fabricante) para uma série de
o ataque DDoS já tiver ocorrido (devido a um botnet), detectar dispositivos IoT de consumo. No DIoT [17], os autores
o ataque em si não é assim tão difícil e já existem métodos, propuseram um método para classificar os dispositivos IoT
tanto na literatura como na indústria, de defesa contra tais tipicamente utilizados em vários tipos de dispositivos e
ataques. Uma vez detectados os bots IoT, os operadores de construir os seus perfis de tráfego normal de modo a que um
rede podem tomar contramedidas adequadas, tais como desvio desses perfis seja assinalado como tráfego anómalo.
bloquear o tráfego proveniente de bots IoT e notificar os O nosso trabalho aborda algumas importantes lacunas na
administradores de rede locais. As principais contribuições literatura quando se trata de distinguir entre o tráfego legítimo
deste documento estão listadas abaixo: e o tráfego de IdC. Primeiro, os trabalhos sobre a detecção de
1) Categorizámos a maior parte do actual malware IoT em botnets utilizando as suas características de comunicação CnC
algumas categorias para ajudar a identificar malware [9]-[11], [18] são concebidos para botnets baseados em PC em
semelhante e simplificar a tarefa de conceber métodos de vez de botnets IoT, que são o foco do nosso trabalho. Em
detecção para eles. segundo lugar, não pretendemos detectar botnets (redes de
2) Analisámos os padrões de tráfego para malware IoT de bots), mas sim a actividade de rede gerada por bots
cada categoria através de experiências de bancos de individuais. As redes de botnets de Internet de alta velocidade
ensaio e utilitários de captura de pacotes. tendem a consistir em centenas de milhares a milhões de
3) Propusemos uma solução modular para a detecção da dispositivos espalhados por vastas geografias, pelo que é
actividade malware IoT, utilizando técnicas ML com os impraticável detectar toda uma rede de bots de Internet de alta
padrões de tráfego acima referidos. velocidade. Por conseguinte, não exigimos a agregação
computacionalmente dispendiosa de algo-ritmo como
II. TRABALHO RELACIONADO utilizado em [10], [11].
Terceiro, ao contrário de [14], [17], o nosso objectivo é
Existem vários trabalhos na literatura sobre a detecção de detectar a actividade malware IoT muito antes do ataque real,
botnets baseados em PC usando as suas características de durante a fase de scan/in- fection. Finalmente, em vez de
comunicação com servidor CnC (Command-and-control). recolhermos as impressões digitais do tráfego normal dos
Bothunter [9] constrói um modelo de diálogo de infecção por dispositivos IoT [15], [17] e utilizarmos essas impressões
bot com base no qual três sensores específicos de bot são digitais para a detecção de anomalias, detectamos o tráfego de
construídos e é feita uma correlação entre alarmes de pacotes de varrimento induzido pelo malware gerado pelos
intrusão/scan de entrada e o modelo de diálogo de infecção dispositivos IoT infectados. Isto porque a primeira abordagem
para gerar um relatório consolidado. As semelhanças espaço- sofre de limitações tais como a possibilidade de classificação
temporais entre os bots de uma rede bot em termos de errada de um dispositivo infectado como um tipo de
actividades coordenadas bot-CnC são capturadas a partir do dispositivo legítimo, testando apenas contra malware simples.
tráfego da rede e aproveitadas para a detecção de botnet numa por exemplo, Mirai que pode resultar na não detecção de outro
rede local em Botsniffer [10]. Em BotMiner [11], os autores malware mais sofisticado, etc. Esta última abordagem não está
propuseram um sistema de detecção de botnet que agrupa também livre de limitações, uma vez que não é resistente
tráfego de comunicação CnC semelhante e tráfego de contra novos malwares não descobertos cujas características
actividade maliciosa semelhante, e utiliza a correlação entre de tráfego de scan não foram actualizadas na base de dados.
clusters para detectar bots numa rede monitorizada. Defendemos uma abordagem combinada que consiste tanto na
Uso autorizado e licenciado limitado a: b-on: Instituto Politécnico de Beja. D o w n l o a 2 d 9 e d 0 e m 16,2022 de Novembro às 17:52:06 UTC do IEEE Xplore. Aplicam-
se restrições.
2019 IEEE 5º Fórum Mundial sobre Internet das Coisas (WF-
IoT)

detecção de impressões digitais/anomalia de dispositivos IoT


como na detecção de tráfego de varrimento de malware IoT.
III. ARQUITECTURA EDIMA
A nossa solução proposta para a detecção do tráfego de
pacotes de scan gerado pelo malware IoT através da
utilização do ML

Uso autorizado e licenciado limitado a: b-on: Instituto Politécnico de Beja. D o w n l o a 2 d 9 e d 0 e m 16,2022 de Novembro às 17:52:06 UTC do IEEE Xplore. Aplicam-
se restrições.
2019 IEEE 5º Fórum Mundial sobre Internet das Coisas (WF-
IoT)

Os algoritmos são chamados EDIMA (Early Detection of IoT indústrias, etc., propomos também um módulo de sub-
amostragem opcional, tal como introduzido em [19]. Este
Malware Network Activity) e são mostrados na Fig.1. Foi
concebido para ter uma arquitectura modular com cinco módulo recolhe amostras do tráfego de pacotes de
módulos diferentes: dispositivos IoT tanto ao longo do tempo como através
dos dispositivos e apresenta-os como entrada para o
1) Classificador ML: O classificador ML funciona no módulo classificador ML. O módulo de sub-amostragem
ajudaria a reduzir a sobrecarga computacional para o
portão de acesso ligado aos dispositivos IoT nas
módulo classificador ML por
instalações do cliente ou da empresa. Recolhe as
amostras de tráfego recebidas, extrai os vectores de
características para essas amostras e classifica-as com
base no modelo ML treinado pelo construtor do modelo
ML. Mais detalhes sobre o classificador ML são
fornecidos na secção IV-B.
2) Construtor de Modelos ML: O modelo ML para
classificar o tráfego de gateway de acesso é treinado pelo
construtor do modelo ML utilizando os vectores de
características e etiquetas de classe recuperados da base
de dados de características de tráfego de pacotes como
entradas para um algoritmo de classificação
supervisionado, tais como Naive Bayes (NB), De- cision
Trees (DT), Support Vector Machines (SVM), etc. O
modelo é então enviado para o classificador ML. Sempre
que um novo malware é descoberto, o modelo ML tem
de ser re-treinado e comparado com o modelo ML
existente para desempenho de classificação. Se não
houver uma melhoria significativa no desempenho, o
modelo ML existente continua a ser utilizado, caso
contrário, o modelo ML recondicionado é actualizado
para o módulo classificador ML.
3) Base de dados de características de tráfego de
pacotes: A base de dados armazena uma lista de vectores
de características extraídos de amostras de tráfego
recolhidas de gateways de acesso ligadas a dispositivos
IoT infectados com malware conhecido de IoT, bem
como gateways ligadas a dispositivos não infectados. A
base de dados é actualizada frequentemente para malware
recentemente descoberto. Os vectores de características e
as etiquetas de classe corrrespondentes são recuperados
pelo construtor do modelo ML para treino do
classificador ML pela primeira vez e também para treino
de novo classificador sempre que um novo malware é
descoberto. Prevemos uma comunidade de investigadores
de segurança, pessoal da indústria e utilizadores que
recolherão dados de tráfego para malware IoT através de
honeypots, gateways de acesso de consumidores, etc. Os
vectores de características extraídos das amostras de
dados de tráfego em bruto e as etiquetas de classe
atribuídas a essas amostras serão actualizadas para a base
de dados de características em linha.
4) Módulo de Políticas: O módulo de políticas consiste
numa lista de políticas definidas pelo administrador da
rede que decide o curso das acções a tomar uma vez que
o tráfego de um gateway de acesso tenha sido
classificado como malicioso pelo módulo classificador
ML. Por exemplo, o administrador da rede - istrator pode
bloquear todo o tráfego proveniente de bots e trazê-los de
volta em linha apenas depois de ser confirmado que o
malware foi removido desses dispositivos IoT.
5) Módulo de subamostragem (opcional): Para instalações
com milhares de dispositivos IoT, tais como empresas,

Uso autorizado e licenciado limitado a: b-on: Instituto Politécnico de Beja. Downloa2d9ed1 e m 16 de Novembro de 2022 às 17:52:06 UTC do IEEE Xplore. As restrições são
aplicáveis.
2019 IEEE 5º Fórum Mundial sobre Internet das Coisas (WF-
IoT)

reencaminhando apenas uma fracção do tráfego de


pacotes IoT recebidos.

Fig. 1: Arquitectura EDIMA

IV. EXTRACÇÃO DE CARACTERÍSTICAS DE TRÁFEGO DE


MALWARE IOT
A. Categorização de malwares
Classificámos o malware conhecido da Internet de alta
velocidade em três cate- gorias baseadas no tipo de
vulnerabilidade que visam: TELNET, HTTP POST e HTTP
GET. TELNET é um protocolo de camada de aplicação
utilizado para comunicação bidireccional orientada por bytes.
Tipicamente, um utilizador com um terminal e executando
um programa cliente TELNET, acede a um anfitrião remoto
executando um servidor TELNET, solicitando uma ligação
ao anfitrião remoto e iniciando sessão fornecendo as suas
credenciais. HTTP GET e POST são métodos baseados no
protocolo de aplicação HTTP (HyperText Transfer Protocol),
que são utilizados para solicitar dados e enviar dados para os
recursos do servidor, respectivamente. Por exemplo, o HTTP
GET é normalmente utilizado para solicitar páginas web de
servidores web remotos através de um browser.
Apresentamos as categorias de malware, vários malware
pertencentes a essas categorias e breves descrições do seu
funcionamento no Quadro I.
B. Classificação ML
A classificação é realizada no tráfego de nível de acesso
IoT em vez de tráfego de nível de dispositivo, uma vez que
trabalhar no tráfego agregado é mais rápido e reduz o espaço
de memória re-solicitada. Definimos duas classes de tráfego
a nível de gateway: tráfego benigno e tráfego malicioso. O
tráfego benigno refere-se ao tráfego de gateway sem pacotes
de varrimento induzidos por malware, enquanto que o tráfego
malicioso se refere ao tráfego de gateway que inclui pacotes
de varrimento induzidos por malware de uma das três
categorias de malware. Para a classificação do tráfego de
gateway, temos primeiro de gerar amostras de dados de
formação que consistem em capturas de pacotes pertencentes
a essas classes. O tráfego benigno não é difícil de gerar uma
vez que envolve o funcionamento normal de dispositivos não
infectados. No entanto, o tráfego malicioso conteria tanto
tráfego benigno, como pacotes de scan/infecção gerados por
malware. Para manter as coisas simples, optamos por
recolher o tráfego de gateway estaticamente em intervalos de
sessão fixos. Além disso, aplicamos o algoritmo de
classificação nestas sessões de tráfego em vez de pacotes
individuais, porque a classificação por pacote é
computacionalmente muito mais dispendiosa e não produz
quaisquer benefícios significativos. O

Uso autorizado e licenciado limitado a: b-on: Instituto Politécnico de Beja. Downloa2d9ed2 e m 16 de Novembro de 2022 às 17:52:06 UTC do IEEE Xplore. As restrições são
aplicáveis.
2019 IEEE 5º Fórum Mundial sobre Internet das Coisas (WF-
IoT)

trânsito.
Categoria Malware Descrição 3) Recuperar o classificador formado do construtor do
Mirai Envia pacotes SYN para sonda modelo ML e aplicá-lo nos vectores de características
aberta
Portas TELNET em IP ad- vestidos
extraídos para classificar as sessões correspondentes.
TELNET aleatórios. Se for bem sucedida, A lista de números de portas de destino é feita com base em
tenta lo- gin usando uma lista de informações obtidas a partir de explorações públicas de
Hajime credenciais por defeito [20].
O mesmo mecanismo de malware. Por exemplo, na categoria 'TELNET', porto de
propagação que Mirai, mas sem destino alvo
servidor CnC. Em vez disso, é
construído sobre uma rede P2P.
Remaiten Pur- pose parece ser para melhorar
a secu- ridade dos dispositivos IoT
[21].
O mesmo mecanismo de
propagação que Mirai. Descarrega
Linux.Wifatch binário específico para a
plataforma alvo. Utiliza o IRC
pro- tocol para a comunicação do
servidor CnC [22].
Brickerbot O mesmo mecanismo de
propagação que Mirai.
Aparentemente, tenta proteger
dispositivos IoT de outro malware
[23].
Reescreve o firmware do
dispositivo, ren- dering o
dispositivo permanentemente em
funcionamento [24].
Satori Envia pedido ao NewInternalClient
através do serviço de miniigd
HTTP POST
SOAP (REALTEK SDK) ou envia
pacotes ma- licious para a porta
37215 (Huwaei home gateway)
Masuta [25].
Formulários de pedido SOAP que,
por autenticação, passam e
Linux.Darlloz provocam a execução arbitrária do
código [26].
Envia pedidos HTTP POST
usando PHP 'php-cgi' Information
Disclosure Vulnerability to down-
Ceifeiro load the worm from a malicious
server on an unpatched device
[27]. Primeiro numa lista de portas
TCP para dispositivos de
impressões digitais, depois numa
onda sec- ond de varreduras em
portas TCP executando serviços
web tais como 80, 8080. . . , envia
HTTP POST re-
procura de injecção de comando
[28].
Ceifeiro Comportamento de digitalização
HTTP GET semelhante a
acima, envia um pedido HTTP
para o controlo remoto comando
Amnésia execução, geralmente
através de CGI ou PHP. Faz
pedidos HTTP simples, procura
por uma string especial "Cross
Web Server" na resposta HTTP do
alvo. Se for bem sucedido, envia
mais quatro pedidos HTTP que
contêm cargas úteis de exploração
de quatro comandos shell
diferentes [29].
QUADRO I: Categorias de malwares IoT

Os passos para a classificação do tráfego a nível de gateway


são dados abaixo:
1) Filtrar cada sessão de tráfego para incluir apenas pacotes
TCP com a bandeira SYN activada e números de portas
de destino pertencentes a uma lista de alvos.
2) Extrair os vectores de característica para cada sessão de

Uso autorizado e licenciado limitado a: b-on: Instituto Politécnico de Beja. Downloa2d9ed3 e m 16 de Novembro de 2022 às 17:52:06 UTC do IEEE Xplore. As restrições são
aplicáveis.
2019 IEEE 5º Fórum Mundial sobre Internet das Coisas (WF-
IoT)

Os números são 23 e 2323. Na categoria 'HTTP POST', os Ethernet com espelhamento de porta para espelhar o tráfego
de todos os dispositivos acima (IoT, portátil, smartphone) para
números das portas de destino são 37215, 80, 20736, 36895,
etc. Na categoria 'HTTP GET', o número da porta de destino uma porta Raspberry Pi 3B+ Ethernet e monitorizar o tráfego
destino alvo é sempre 80. acumulado.
Neste trabalho, utilizamos um total de 4 características
para a formação do modelo ML e classificação do tráfego:
1) Número de endereços IP de destino único
2) Número de pacotes por endereço IP de destino
(máximo, mínimo, médio)
A motivação por detrás da selecção da primeira característica
é que o malware gera endereços IP aleatórios e envia-lhes
pedidos maliciosos. Assim, o número de endereços IP de
destino único no caso de tráfego de scannning induzido por
malware será muito mais do que tráfego benigno. A segunda
característica procura explorar o facto de que o malware
normalmente não envia múltiplos pacotes maliciosos para o
mesmo endereço IP (apenas um único pacote é enviado na
maioria dos casos), possivelmente para cobrir o maior
número possível de dispositivos durante a fase de
scan/propagação.
Pode-se argumentar que o autor/atacador de malware pode
adoptar uma estratégia de scan menos agressiva para evitar a
detecção. O atacante incorrerá num custo, em termos do
desempenho do malware, resultando em menos dispositivos
infectados num período de tempo fixo. Planeamos investigar
este desempenho de malware - o comportamento de
varredura de malware é compensado pela formulação de um
problema de optimização no futuro. Por agora, a duração das
sessões de tráfego recolhidas para treino/classificação pode
ser aumentada para contrariar qualquer diminuição nas taxas
de scan pelo atacante.
V. AVALIAÇÃO DE DESEMPENHO
A. Descrição do banco de ensaio
Construímos um banco de ensaio com dispositivos IoT,
um PC portátil, um smartphone dróide e um gateway de
acesso sem fios para recolher o tráfego de ingress/egress no
gateway que faria parte dos dados de formação utilizados
para treinar os algoritmos ML a serem implantados no
módulo ML Classifier. Os dispositivos IoT eram: Ponte
Philips Hue, câmara IP Wi-Fi D-Link DCS-930L e TP-Link
HS110 Smart Wi-Fi Plug. O PC portátil tem um processador
Intel Core i3-5020U 2,2 GHz com 4GB de RAM e executa o
SO Windows 10. Aplicações de rede tais como navegador da
web (acesso a páginas web, sites de streaming de vídeo, por
exemplo, YouTube), cliente de e-mail, plataforma online
com câmara WiFi, etc., foram executadas no PC portátil por
um utilizador. O smartphone Android tem o processador
Cortex- A53 Octa-core 1,6 GHz com 3GB de RAM e corre o
SO Android 8.0. Mais uma vez, o mesmo utilizador
executava aplicações tais como browser de internet, redes
sociais (Facebook/Twitter/LinkedIn), chat (WhatsApp),
aplicação Wi-Fi plug, aplicação Hue etc. no smartphone que
também executava algumas outras aplicações de rede no
back- ground. O gateway de acesso sem fios era um router D-
Link DIR-600 com um processador de rede Atheros AR7240
350 MHz, adaptador de rede Atheros AR9285, 32MB de
RAM, 4MB de flash com suporte de normas 1EEE
802.11b/g/n Wi-Fi. O banco de ensaio é mostrado na Fig. 2.
Utilizámos um comutador TP-Link TL-SG108E Gigabit

Uso autorizado e licenciado limitado a: b-on: Instituto Politécnico de Beja. Downloa2d9ed4 e m 16 de Novembro de 2022 às 17:52:06 UTC do IEEE Xplore. As restrições são
aplicáveis.
2019 IEEE 5º Fórum Mundial sobre Internet das Coisas (WF-
IoT)

(a) Dados de formação sobre dados


(b) Comboio de tráfego TELNET
tráfego benigno malicioso...

Fig. 2: Banco de ensaio utilizado para recolher o tráfego de pacotes para (d) Dados de formação de tráfego
formação ML POST maliciosos
(c) Dados de formação sobre
tráfego benigno

B. Metodologia de Avaliação ML treinado para distinguir entre tráfego benigno e malicioso


com razoável precisão de detecção. No entanto, se a
Como não podemos utilizar malware real devido a distribuição de uma característica sob as duas
considerações legais e éticas, escrevemos scripts para simular
a geração de pacotes maliciosos baseados em exploits
disponíveis publicamente [30] para as vulnerabilidades
exploradas por esses malware. O script gera endereços IP
aleatórios e envia-lhes pedidos maliciosos a fim de executar
ataques de injecção de comandos remotos. Os comandos
injectados eram não maliciosos (por ex. ls -l, uname -a), não
causando assim nenhum dano real a qualquer dispositivo na
rede, mesmo que fosse vulnerável. As taxas de scan/infecção
nos nossos scripts foram concebidas tendo em mente o
comportamento de scan- ning/infecção reportado online e o
código fonte Mirai que é a base da maior parte do actual
malware IoT. Seleccionámos um malware por categoria para a
nossa avaliação de desempenho, uma vez que o malware em
cada categoria tem um comportamento de varrimento/infecção
semelhante.
Um total de 60 sessões de trânsito de 15 minutos de
duração cada foram recolhidas tanto para classes benignas
como para classes maliciosas através do nosso banco de
ensaio. As sessões de tráfego recolhidas para cada caso foram
divididas em dois conjuntos: formação e dados de teste
usando uma divisão de 70:30. Para os dados de formação, as
etiquetas de classe foram atribuídas a cada vector de
características extraídas das sessões de tráfego incluídas nos
dados de formação.

C. Resultados
As distribuições dos valores das características para dados
de treino benignos e ma- liciosos em que o malware pertence
às categorias TELNET, HTTP POST e HTTP GET são
mostradas na Fig. 3 utilizando gráficos de caixa. Os gráficos
de distribuição da característica F1 em condições benignas e
maliciosas em que o malware pertence à categoria TELNET,
são bastante distintos, embora para as outras características
Característica2, Característica3, Característica4, os gráficos
não sejam tão facilmente distinguíveis. Do mesmo modo, as
distribuições de elementos de tráfego HTTP POST e GET em
condições benignas e maliciosas não são completamente
distinguíveis. Se houver uma diferença significativa na
distribuição de uma característica em condições benignas e
maliciosas, essa diferença pode ser aproveitada pelo modelo
Uso autorizado e licenciado limitado a: b-on: Instituto Politécnico de Beja. Downloa2d9ed5 e m 16 de Novembro de 2022 às 17:52:06 UTC do IEEE Xplore. As restrições são
aplicáveis.
2019 IEEE 5º Fórum Mundial sobre Internet das Coisas (WF-
IoT)

(f) Formação de tráfego GET malicioso


(e) Dados de formação sobre tráfego benigno dados
Fig. 3: Distribuição de valores vectoriais de características

Classificador Precisão Precisão Record Pontuação


ar de F1
Floresta Aleatória 88.8% 0.86 1 0.92
k-NN 94.44% 0.92 1 0.96
Gaussiano Naïve Bayes 77.78% 0.75 1 0.86
QUADRO II: Precisão, Precisão, Recall e pontuações F1 para vários
classificadores

as condições não são facilmente distinguíveis, pode


prejudicar o desempenho da detecção.
A biblioteca de algoritmos scikit-learn ML [31] foi
utilizada para fins de formação e classificação. Treinámos os
algoritmos Gaussian Naive Bayes, k-NN (k-Nearest
Neighbor) e Random Forest com os nossos dados de
formação e avaliámos os modelos ML treinados com dados
de teste para as três categorias de malware. A exactidão da
classificação, precisão, recordação e pontuações F-1 obtidas
para os três algoritmos de classificação acima mencionados
são mostradas no Quadro II.
A precisão da classificação refere-se à fracção do número
total de amostras de entrada cujos rótulos são correctamente
previstos por um classificador. A precisão é a razãoTP , onde TP+FP
TP é o número de verdadeiros positivos e FP é o número de
falsos positivos. Representa a capacidade de um classificador
para evitar a rotulagem de amostras negativas como
positivas. A razão é a razãoTP , onde TP é o número de TP+FN
verdadeiros positivos e FN é o número de falsos negativos.
Representa a capacidade de um classificador de evitar rotular
amostras que são positivas como negativas. A pontuação F1
é a média harmónica de precisão e recordação, expressa precisão+recha
como 2 × precisão× recordação . Representa o equilíbrio entre a mada
precisão e a recordação oferecida por um classificador. As
pontuações no Quadro II mostram que o classificador k-NN
tem o melhor desempenho seguido do classificador Random
Forest e do classificador Gaussian Naive Bayes.

Uso autorizado e licenciado limitado a: b-on: Instituto Politécnico de Beja. Downloa2d9ed6 e m 16 de Novembro de 2022 às 17:52:06 UTC do IEEE Xplore. As restrições são
aplicáveis.
2019 IEEE 5º Fórum Mundial sobre Internet das Coisas (WF-
IoT)

http://doi.acm.org/10.1145/2834050.2834095
VI. CONCLUSÃO

Neste documento, propusemos EDIMA, uma solução


modular para a detecção precoce da actividade de rede
originada por malware IoT utilizando técnicas de classificação
ML. O malware IoT existente foi distribuído entre múltiplas
categorias com base nas suas vulnerabilidades de software
alvo. Mais tarde, foram listados os passos para a operação do
classificador ML e as características utilizadas para a
classificação. Um banco de ensaio constituído por PC,
smartphone e dispositivos IoT ligados a um gateway de acesso
foi utilizado para avaliar o desempenho da classificação da
EDIMA. Utilizando capturas de tráfego de pacotes a nível de
gateway de acesso, foram extraídos vectores de características
com etiquetas de classe (benignas ou maliciosas) que lhes
foram atribuídas. Subsequentemente, descrevemos a
distribuição de vectores de características de tráfego benignos
e maliciosos para diferentes categorias de malware. Uma
proporção dos vectores de características extraídos foi
utilizada como dados de treino para treinar poucos algoritmos
padrão ML e os modelos ML assim obtidos foram aplicados
para testar dados com as suas pontuações de classificação
reportadas. Como parte do nosso trabalho futuro, estamos a
trabalhar na implementação do software EDIMA e na sua
avaliação de desempenho. Estamos também a planear - ning
para adaptar algumas técnicas de detecção de botnet de última
geração utilizando características de comunicação bot-CnC e
algoritmos ML para a detecção de actividade malware e
comparar o seu desempenho com o EDIMA.

AGRADECIMENTOS

Esta investigação é apoiada pelo National Research Foun-


dation, Gabinete do Primeiro Ministro, Singapura sob o seu
Corporate Laboratory@University Scheme, National
University of Sin- gapore, e Singapore Telecommunications
Ltd.

REFERÊNCIAS

[1] A. Al-Fuqaha, M. Guizani, M. Mohammadi, M. Aledhari, e


M. Ayyash, "Internet das Coisas": A Survey on Enabling Technologies,
Protocols, and Applications", IEEE Communications Surveys Tutorials,
vol. 17, no. 4, pp. 2347-2376, Fourthquarter 2015.
[2] Y. Yang, L. Wu, G. Yin, L. Li, e H. Zhao, "A Survey on Security and
Privacy Issues in Internet-of-Things", IEEE Internet of Things
Journal, vol. 4, no. 5, pp. 1250-1258, Out 2017.
[3] B. Krebs, "Hacked Cameras, DVRs Powered Today's Massive Internet
Outage," https://krebsonsecurity.com/2016/10/
hacked-cameras-dvrs-powered-todays-massive-internet-outage/, Out
2016.
[4] I. Arghire, "IoT Botnet Used in Website Hacking Attacks", https:
//www.securityweek.com/iot-botnet-used-website-hacking-attacks.
[5] I. Ilascu, "Mirai Code Still Runs on Many IoT Devices,"
https://www.bitdefender.com/box/blog/iot-news/
mirai-code-still-runs-many-iot-devices/.
[6] A. Equipa, "Reaper Madness,"
https://asert.arbornetworks.com/reaper-madness/.
[7] Y. S. M. Kuzin e V. Kuskov, "Novas tendências no mundo das
ameaças IoT,"
https://securelist.com/new-trends-in-the-world-of-iot-threats/87991/.
[8] T. Yu, V. Sekar, S. Seshan, Y. Agarwal, e C. Xu, "Handling a trillion
(unfixable) flaws on a billion devices: Rethinking network security for
the internet-of-things", em Proceedings of the 14th ACM Workshop on
Hot Topics in Networks, ser. HotNets-XIV. Nova Iorque, NY, EUA:
ACM, 2015, pp. 5:1-5:7. [Online]. Available:

Uso autorizado e licenciado limitado a: b-on: Instituto Politécnico de Beja. Downloa2d9ed7 e m 16 de Novembro de 2022 às 17:52:06 UTC do IEEE Xplore. As restrições são
aplicáveis.
2019 IEEE 5º Fórum Mundial sobre Internet das Coisas (WF-
IoT)

[9] G. Gu, P. Porras, V. Yegneswaran, e M. Fong, "Bothunter: Detectar


infecção por malware através de correlação de diálogo orientada por
ids", no 16º USENIX Security Symposium (USENIX Security 07).
Boston, MA: Associação USENIX, 2007. [Online]. Disponível:
https://www.usenix.org/conference/16th-usenix-security-symposium/
bothunter-detecting-malware-infection-through-ids-driven
[10] G. Gu, J. Zhang, e W. Lee, "BotSniffer: Detecting Botnet Command
and Control Channels in Network Traffic," in Network and Distributed
System Security Symposium (NDSS), 2008.
[11] G. Gu, R. Perdisci, J. Zhang, e W. Lee, "BotMiner": Clustering
Analysis of Network Traffic for Protocol- and Structure-independent
Botnet Detection," in Proceedings of the 17th Conference on Security
Symposium, ser. SS'08. Berkeley, CA, EUA: Associação USENIX,
2008, pp. 139-154. [Online]. Disponível:
http://dl.acm.org/citation.cfm?id=1496711.1496721
[12] J. Habibi, D. Midi, A. Mudgerikar, e E. Bertino, "Heimdall:
Mitigating the Internet of Insecure Things", IEEE Internet of Things
Journal, vol. 4, no. 4, pp. 968-978, Ago 2017.
[13] H. H. Pajouh, R. Javidan, R. Khayami, D. Ali, e K. K. R. Choo, "A
Two-layer Dimension Reduction and Two-tier Classification Model
for Anomaly-Based Intrusion Detection in IoT Backbone Networks,"
IEEE Transactions on Emerging Topics in Computing, vol. PP, no. 99,
pp. 1-1, 2016.
[14] Y. Meidan, M. Bohadana, Y. Mathov, Y. Mirsky, D. Breitenbacher,
A. Shabtai, e Y. Elovici, "N-baiot: Network-based detection of iot
botnet attacks using deep autoencoders", CoRR, vol. abs/1805.03409,
2018. [Online]. Disponível em: http://arxiv.org/abs/1805.03409
[15] V. Thangavelu, D. M. Divakaran, R. Sairam, S. S. Bhunia, e
M. Gurusamy, "Deft: A distributed iot fingerprinting technique", IEEE
Internet of Things Journal, pp. 1-1, 2018.
[16] A. Hamza, D. Ranathunga, H. H. Gharakheili, M. Roughan, e
V. Sivaraman, "Claro como a lama": Generating, validating and
applying iot behavioral profiles," in Proceedings of the 2018 Workshop
on IoT Security and Privacy, ser. IoT S&P '18. Nova Iorque, NY,
EUA: ACM, 2018, pp. 8-14. [Online]. Available:
http://doi.acm.org/10.1145/3229565.3229566
[17] T. D. Nguyen, S. Marchal, M. Miettinen, M. H. Dang, N. Asokan, e
A. Sadeghi, "Dïot: A crowdsourced self-learning approach for detectted
iot compromised devices", CoRR, vol. abs/1804.07474, 2018. [Online].
Disponível em: http://arxiv.org/abs/1804.07474
[18] C. Livadas, R. Walsh, D. Lapsley, e W. T. Strayer, "Using Machine
Learning Techniques to Identify Botnet Traffic," in Proceedings.
2006 31st IEEE Conference on Local Computer Networks, Nov 2006,
pp. 967-974.
[19] A. Kumar e T. J. Lim, "Early Detection Of Mirai-Like IoT Bots In
Large-Scale Networks Through Sub-Sampled Packet Traffic
Analysis," in Proceedings of the 2nd Future of Information and
Communication Conference, Springer Lecture Notes in Networks and
Systems (To be published), vol. 70, 2019.
[20] C. Kolias, G. Kambourakis, A. Stavrou, e J. Voas, "DDoS in the
IoT: Mirai and Other Botnets", Computer, vol. 50, no. 7, pp. 80-84,
2017.
[21] W. Grange, "Hajime worm battle Mirai for control of the Internet of
Things," https://symc.ly/2q1q7Mj.
[22] L. Constantin, "O seu router doméstico baseado em Linux poderia
sucumbir a um novo worm Telnet, Remaiten,"
https://bit.ly/2QUIADs.
[23] M. Ballano, "Haverá por aí um vigilante da Internet das Coisas"
https://symc.ly/2Hh9fuB.
[24] C. Cimpanu, "BrickerBot Autor se aposenta afirmando ter tijolo
mais de 10 milhões de dispositivos IoT," https://bit.ly/2BkaUvd.
[25] C. X. C. Zheng e Y. Jia, "IoT Malware Evolves to Harvest Bots by
Exploiting a Zero-day Home Router Vulnerability,"
https://bit.ly/2SVVh2x.
[26] A. Anubhav, "Masuta : Satori Creators' Second Botnet Weaponizes A
New Router Exploit", https://bit.ly/2FGgav7.
[27] K. Hayashi, "Linux Worm Targeting Hidden
Devices," https://symc.ly/2CnM786.
[28] Radware, "Reaper Botnet," https://bit.ly/2HeVMn5.
[29] C. Z. C. Xiao e Y. Jia, "New IoT/Linux Malware Targets DVRs,
Forms Botnet," https://bit.ly/2VX7JRN.
[30] O. Security, "Exploit Database," https://www.exploit-db.com/.
[31] scikit learn, "Machine Learning in
Python," https://scikit-learn.org/stable/.

Uso autorizado e licenciado limitado a: b-on: Instituto Politécnico de Beja. Downloa2d9ed8 e m 16 de Novembro de 2022 às 17:52:06 UTC do IEEE Xplore. As restrições são
aplicáveis.

Você também pode gostar