Buscar

Identificação de Atributos Relevantes em Cyber Segurança

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 62 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 62 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 62 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

BRUNO FERREIRA LEAL 
 
 
 
 
 
 
 
 
IDENTIFICAÇÃO DE ATRIBUTOS RELEVANTES EM 
CYBER SEGURANÇA 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
São José do Rio Preto 
2018 
Câmpus de São José do Rio Preto 
 
 
BRUNO FERREIRA LEAL 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
IDENTIFICAÇÃO DE ATRIBUTOS RELEVANTES EM 
CYBER SEGURANÇA 
 
 
Trabalho de Conclusão de Curso (TCC) 
apresentado como parte dos requisitos para 
obtenção do título Bacharel em Ciência da 
Computação, junto ao Departamento de 
Ciências da Computação e Estatística, do 
Instituto de Biociências, Letras e Ciências 
Exatas da Universidade Estadual Paulista 
“Júlio de Mesquita Filho”, Câmpus de São 
José do Rio Preto. 
 
 
 
Orientador: Prof. Dr. Adriano Mauro Cansian 
 
 
 
 
 
 
 
 
São José do Rio Preto 
2018 
 
 
BRUNO FERREIRA LEAL 
 
 
 
 
 
 
 
 
 
 
IDENTIFICAÇÃO DE ATRIBUTOS RELEVANTES EM 
CYBER SEGURANÇA 
 
 
Trabalho de Conclusão de Curso (TCC) 
apresentado como parte dos requisitos para 
obtenção do título Bacharel em Ciência da 
Computação, junto ao Departamento de 
Ciências da Computação e Estatística, do 
Instituto de Biociências, Letras e Ciências 
Exatas da Universidade Estadual Paulista 
“Júlio de Mesquita Filho”, Câmpus de São 
José do Rio Preto. 
 
 
Comissão Examinadora 
 
Profª. Drª. Adriano Mauro Cansian 
UNESP – Câmpus de São José do Rio Preto 
Orientador 
 
Prof. Dr. Geraldo Francisco Donegá Zafalon 
UNESP – Câmpus de São José do Rio Preto 
 
Prof. Dr. Leandro Alves Neves 
UNESP – Câmpus de São José do Rio Preto 
 
 
São José do Rio Preto 
2018 
 
 
 
 
AGRADECIMENTOS 
 
 
 
Primeiramente agradeço a Deus e minha família por todo suporte prestado ao 
longo destes anos. 
 Agradeço ao meu pai José, minha mãe Adriana, meus irmãos Marlon e Luana 
pelo incentivo aos estudos desde muito tempo atrás. 
 Agradeço à minha noiva Marcia que também foi um dos pilares para eu 
pudesse chegar até aqui. 
 Também agradeço aos meus tios Amado e Maria por tudo que fizeram. Ao 
meu primo Jonathas também pelo incentivo. E a minha avó Veneranda que nunca 
esquecerei. 
Agradeço aos atuais membros do laboratório ACME!, Leandro Gonçalves, 
Amanda Barbosa, Pedro Ferracini, Álvaro Pompeu, Rafael Luizete, Leopoldo 
Ferreira, Marcos Silveira e Vinicios Barretos, pelos conhecimentos compartilhados e 
auxílio no desenvolvimento deste projeto, assim como outros membros que já se 
foram mas contribuíram igualmente. 
Ao meu orientador Prof. Dr. Adriano Mauro Cansian pelos conhecimentos 
passados e pela orientação, contribuindo significativamente para minha formação 
acadêmica e pessoal. 
Aos amigos feitos durante o curso, Amanda Barbosa, João Otavio e todos 
outros que se eu for listar não caberá aqui. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
“O que acontece não é tão importante quanto como você reage ao que acontece.” 
Ellen Glasgow 
 
 
 
 
 
 
RESUMO 
 
 
 
A utilização de assinaturas de ataques para identificar atividades maliciosas em redes 
de computadores tem sido uma abordagem amplamente utilizada em IDSs devido sua 
baixa taxa de falsos-positivo. No entanto, o custo para se produzir novas assinaturas 
que acompanhem o surgimento de novos ataques e variações de ataques existentes 
tem sido um desafio para estes sistemas. Em vista disto, no presente trabalho é 
proposta uma abordagem baseada na utilização de algoritmos de aprendizado de 
máquina não-supervisionados para realizar o agrupamento das assinaturas mais 
similares dentre aquelas que caracterizam determinado ataque, assim, reduzindo 
significantemente a quantidade de assinaturas redundantes. Então, a partir do 
agrupamento com maior quantidade de assinaturas, Pontos de Cortes (PC) foram 
aplicados sobre os atributos identificados até que fossem identificados cada Ponto de 
Corte Ótimo (PCO) determinante dos atributos suficientemente relevantes para 
caracterização das classes de ataque analisadas e suas variações. 
 
Palavras-chave: Cyber Segurança, Atributos Relevantes, Assinatura de Ataque, 
Sistema de Detecção de Intrusão. 
 
 
 
 
 
 
 
ABSTRACT 
 
 
 
The use of attack signatures to identify malicious activity in computer networks has 
been a widely used approach in IDSs because of its low false-positive rate. However, 
the cost of producing new signatures that accompany the emergence of new attacks 
and variations of existing attacks has been a challenge for these systems. In this 
work, we propose an approach based on the use of unsupervised machine learning 
algorithms to perform the grouping of the most similar signatures among those that 
characterize a given attack, thus significantly reducing the number of redundant 
signatures. Then, from the cluster with the largest number of signatures, Cut Points 
(PC) were applied on the identified attributes until each of the Optimum Cutting 
Point (PCO) was determined determining the attributes relevant enough to 
characterize the attack classes analyzed and their attributes. variations. 
 
Keywords: Cyber Security, Relevant Attributes, Attack Signature, Intrusion 
Detection System 
 
 
i 
 
 
 
 
LISTA DE FIGURAS 
 
 
 
Figura 1: Estrutura regra Suricata IDS. ...................................................................... 10 
Figura 2: Estrutura regra SNORT IDS. ...................................................................... 11 
Figura 3: Arquitetura do sistema. ............................................................................... 17 
Figura 4: Arquitetura generalizada do sistema para N conjunto de assinaturas. ........ 18 
Figura 5: Método de análise de atributos. .................................................................. 20 
Figura 6: Visão geral do ambiente virtual de coleta de fluxo. ................................... 29 
Figura 7: Escolha do ponto de corte ótimo. ............................................................... 35 
Figura 8: Ataque de negação de serviço..................................................................... 37 
Figura 9: Ataque de varredura de vulnerabilidades. .................................................. 37 
Figura 10: Ataque de varredura de serviços. .............................................................. 38 
Figura 11: Ataque de força bruta. ............................................................................... 39 
Figura 12: Redução da quantidade de atributos componentes das assinaturas. ......... 40 
 
 
ii 
 
 
 
 
LISTA DE TABELAS 
 
 
 
Tabela 1: Descrição elementos regra Suricata IDS. ................................................... 11 
Tabela 2: Descrição elementos regra SNORT IDS. ................................................... 12 
Tabela 3: Atributos de fluxos de rede. ....................................................................... 16 
Tabela 4: Matriz de confusão. .................................................................................... 27 
Tabela 5: Quantidade de fluxos coletados por tipo. ................................................... 29 
Tabela 6: Resultado agrupamento utilizando o algoritmo DBSCAN. ....................... 31 
Tabela 7: Resultado agrupamento utilizando o algoritmo Hierarchical Clustering. . 32 
Tabela 8: Resultado agrupamento utilizando o algoritmo K-Means.......................... 32 
Tabela 9: Resultado agrupamento utilizando o algoritmo Spectral Clustering. ........ 33 
Tabela 10: Proporção de assinaturas por cluster para o ataque de força bruta. ......... 33 
Tabela 11: Análise do PCO por classe de ataque. ...................................................... 36 
 
 
iii 
 
 
 
 
LISTA DE ABREVIATURAS E SIGLAS 
 
 
 
ARFF: Attribute-Relation File Format 
CERT.br: Centro de Estudos, Resposta e Tratamento de Incidentes de Segurança no 
Brasil 
CTI: Cyber Threat Intelligence 
DBN: Deep Belief Network 
DPI:Deep Package Inspection 
FN: False Negative 
FP: False Positive 
FPR: False Positive Rate 
FRFS: Fuzzy Rough Set Feature Selection 
FTP: File Transfer Protocol 
HIDS: Host-Based Intrusion Detection System 
IaaS: Infrastructure as a Service 
IDS: Intrusion Detection System 
IETF: Internet Engineering Task Force 
IPS: Intrusion Prevention System 
Fintech: Financial Technology 
MEA: Módulo de Extração de Atributos 
MIFS: Mutual Information based Feature Selection 
NGFW: Next Generation Firewall 
NIDS: Network-Based Intrusion Detection System 
PaaS: Platform as a Service 
PC: Ponto de Corte 
PCO: Ponto de Corte Ótimo 
SaaS: Software as a Service 
SSH: Secure Shell 
SVM: Support Vector Machine 
TN: True Negative 
iv 
 
TP: True Positive 
TPR: True Positive Rate 
UTM: Unified Threat Management 
 
v 
 
 
 
 
ÍNDICE 
 
 
 
CAPÍTULO 1 - Introdução .......................................................................................... 1 
1.1 Motivação ........................................................................................................... 2 
1.2 Objetivo .............................................................................................................. 4 
1.3 Organização da Monografia ............................................................................... 4 
CAPÍTULO 2 - Revisão Bibliográfica......................................................................... 5 
2.1 Fluxo de Dados ................................................................................................... 5 
2.2 Ataque à Rede de Computadores ....................................................................... 6 
2.2.1 Ataque de força bruta ................................................................................... 7 
2.2.2 Ataque de negação de serviço ...................................................................... 7 
2.2.3 Ataque de varredura ..................................................................................... 8 
2.3 Sistema de Detecção de Intrusão ........................................................................ 8 
2.3.1 Sistema de detecção de intrusão por abuso .................................................. 8 
2.3.2 Sistema de detecção de intrusão por anomalia............................................. 9 
2.4 Assinatura de Ataques ........................................................................................ 9 
2.4.1 Modelo de assinatura Suricata IDS ............................................................ 10 
2.4.2 Modelo de assinatura SNORT IDS ............................................................ 11 
2.5 Aprendizado de Máquina ................................................................................. 12 
2.6 Trabalhos Correlatos ........................................................................................ 13 
CAPÍTULO 3 - Descrição do Projeto ........................................................................ 15 
3.1 Conjunto de Assinatura de Entrada .................................................................. 15 
3.2 Arquitetura do Sistema ..................................................................................... 16 
3.2.1 Obtenção do conjunto de assinaturas ......................................................... 18 
vi 
 
3.2.2 Módulo de extração de atributos (MEA) ................................................... 18 
3.2.3 Seletor de assinaturas ................................................................................. 20 
3.3 Ferramentas Utilizadas ..................................................................................... 20 
3.4 Considerações Finais ........................................................................................ 21 
CAPÍTULO 4 - Experimentos e Resultados .............................................................. 22 
4.1 Métricas para Análise dos Algoritmos de Agrupamento ................................. 23 
4.1.1 Homogeneidade ......................................................................................... 23 
4.1.2 Completude ................................................................................................ 24 
4.1.3 Pureza......................................................................................................... 25 
4.1.4 Coeficiente de silhueta ............................................................................... 25 
4.2 Métricas para Análise dos Resultados .............................................................. 26 
4.3 Ambiente de Simulação e Coleta ..................................................................... 28 
4.4 Teste e Análise dos Resultados ........................................................................ 30 
4.4.1 Algoritmos de agrupamento....................................................................... 30 
4.4.2 Identificação de atributos relevantes.......................................................... 34 
4.5 Considerações Finais ........................................................................................ 40 
CAPÍTULO 5 - Conclusão ......................................................................................... 41 
5.1 Conclusões Gerais ............................................................................................ 41 
5.2 Dificuldades Encontradas ................................................................................. 42 
5.3 Trabalhos Futuros ............................................................................................. 42 
REFERÊNCIAS BIBLIOGRÁFICAS ....................................................................... 44 
 
 
 
1 
 
 
 
 
 
 
 
 
 
 
 
CAPÍTULO 1 - Introdução 
 
 
 
 
 
 
O aumento do acesso à internet e de dispositivos que estão interconectados 
através dela é notório ao longo dos anos. Estima-se que em 2019 haverá por volta de 
40 bilhões de dispositivos interconectados, um crescimento de cerca de 400% em 
relação aos 10 bilhões existentes em 2013 (THIERER; CASTILLO, 2015). Tal 
crescimento reflete diretamente na forma de interação entre as pessoas, no modo de 
geração e absorção de conteúdo, e até mesmo na forma como serviços e aplicações 
são ofertados, como é o caso de ambientes em nuvem que oferecem sob demanda: 
serviços de software - SaaS (do inglês, Software as a Service), serviços de plataforma 
- PaaS (do inglês, Platform as a Service) e serviços de infraestrutura - IaaS (do 
inglês, Infrastructure as a Service) (KRISHNA, 2015). Como consequência de tal 
fenômeno, o tempo que as pessoas despendem conectadas à Internet e o volume de 
dados gerado tem crescido constantemente (HAZAS et al., 2016). 
Com a amplificação do acesso à internet e suas diferentes formas de uso, 
expandiu-se também a variedade de alvos e o modo como cibercriminosos podem 
explorar ferramentas, sistemas web, e aplicações por meio de falhas ou até mesmo do 
próprio funcionamento dos protocolos de comunicação de rede (MANSFIELD-
2 
 
 
 
DEVINE, 2015). Se em outrora atacantes tinham como alvos segmentos ou 
aplicações específicas devido à pequena diversidade e dificuldade de acesso 
existente, sem estas restrições, instituições financeiras (fintechs), médicas e 
educacionais, públicas ou governamentais, tornaram-se alvos também visados. No 
ano de 2017, 24% das brechas exploradas por indivíduos mal intencionados foram 
em instituições de saúde, e 58% das vítimas de ataques cibernéticos no mundo foram 
categorizadas como sendo negócios de pequeno porte (VERIZON, 2018). 
A fim de lidar com tais ameaças, difundiram-se meios e ferramentas que se 
propõem a evitar, mitigar ou identificar um ataque o mais rápido possível. Soluções 
como Sistema de Detecção de Intrusão (IDS, sigla em inglês), Sistema de Prevenção 
de Intrusão (IPS, sigla em inglês), Gerenciamento Unificado de Ameaças (UTM, 
sigla em inglês) e Firewall de Próxima Geração(NGFW, sigla em inglês) tem 
ganhado espaço, tornando-se alternativas interessantes para instituições que buscam 
agregar segurança às suas redes e aplicações (NEELY, 2016). Ainda, como reflexo 
desta preocupação, o compartilhamento de informações sobre ataques por meio de 
canais públicos de divulgação de ameaças, os chamados Feeds abertos de Cyber 
Threat Intelligence (CTI), tem contribuído para reduzir a quantidade de alvos 
afetados por ataques identificados e previamente divulgados para a comunidade de 
segurança de informação (JASPER, 2017). 
Contudo, a velocidade com que variações e mutações de um mesmo ataque 
têm surgido dificulta a reutilização de informações como as fornecidas pelos Feeds 
de CTI, uma vez que mudanças simples no comportamento de um determinado 
ataque pode descaracterizá-lo se comparado as informações compartilhadas 
previamente, possibilitando, por sua vez, a evasão de sistemas de detecção que 
utilizam como base tais informações. 
 
 
1.1 Motivação 
 
Diante do volume de dados a ser processado, a utilização de abordagens 
consideradas convencionais para identificação de atividades maliciosas, como a 
análise do conteúdo que está sendo transmitido na rede realizada por alguns IDSs, 
3 
 
 
 
tem se mostrado inviável. Isto acontece devido ao alto processamento envolvido no 
processo de Inspeção Profunda de Pacotes (DPI, sigla em inglês) (FALLAHI; SAMI; 
TAJBAKHSH, 2016), uma vez que este é diretamente proporcional ao volume de 
dados a ser analisado (KAZEMI; FANIAN, 2015). Em vista disso, estudos voltados 
para a identificação de eventos de rede por meio da análise de fluxo têm sido 
explorados em trabalho como os de (CORRÊA, 2009), (FERREIRA, 2016) e 
(GALHARDI, 2017), em que IDSs baseados na análise deste fluxo são propostos. 
Além disso, outro problema relacionado às abordagens convencionais de 
monitoramento de ameaças, é a não detecção de variações de ataques ou eventos de 
rede pertencentes a uma mesma classe de atividade, característica comum em IDSs 
que utilizam assinaturas como método de detecção, por exemplo. No entanto, a 
redução da taxa de falso-positivo atrelada ao método de detecção por assinaturas 
permite que analistas de segurança da informação deem prioridade para o tratamento 
de eventos que podem realmente gerar riscos para o ambiente. Além disto, a não 
detecção de variações de eventos relacionados a uma mesma classe de atividade, 
mesmo havendo assinaturas para elementos pertencentes a tal classe, é um problema 
recorrente deste método, permitindo que indivíduos maliciosos explorem tal 
característica e evadam estes IDSs alterando singelamente seu método de ataque. 
Neste contexto, a utilização de abordagens utilizando aprendizado de máquina 
e inteligência artificial para detecção de atividades maliciosas com comportamentos 
similares tem se mostrado um campo promissor. Em (ASHFAQ et al., 2017), 
(KAKIHATA et al., 2017) e (RAO; BATTULA; KRISHNA, 2017) são apresentadas 
metodologias que, com o aprendizado de máquina, são obtidas acurácias acima de 
90% na caracterização de eventos. A eficiência adquirida utilizando tal abordagem, 
aliada a análise de eventos de rede baseado em fluxo, constituíram a motivação 
principal para o desenvolvimento deste trabalho. 
 
 
 
 
 
 
4 
 
 
 
1.2 Objetivo 
 
Este trabalho tem como objetivo a identificação de atributos relevantes em 
assinaturas de eventos de rede por meio da aplicação de métodos de aprendizado de 
máquina e do correlacionamento de atributos comuns pertencentes à mesma classe 
comportamental de determinado evento. Desta forma, permitindo que sejam 
identificados apenas aqueles suficientemente relevantes para caracterização de tal 
classe e, por sua vez, a criação de assinaturas genéricas para as mesmas. 
 
 
1.3 Organização da Monografia 
 
Esta monografia está dividida em quatro seções principais, incluindo a atual. 
No Capítulo 2, é realizada uma revisão bibliográfica a fim de contextualizar o leitor 
sobre os conceitos e tecnologias utilizadas para o desenvolvimento desta pesquisa. 
No Capítulo 3, é feita uma descrição do sistema, sua arquitetura e componentes, além 
da metodologia utilizada para o cumprimento dos objetivos propostos. No Capítulo 
4, são apresentados os testes realizados e resultados obtidos para o modelo proposto. 
Por fim, no Capítulo 5, são apresentadas as conclusões obtidas, as dificuldades 
encontradas e propostas de trabalhos futuros. 
 
 
 
 
 
 
 
 
 
 
 
 
5 
 
 
 
 
 
 
 
 
 
 
 
CAPÍTULO 2 - Revisão Bibliográfica 
 
 
 
 
 
 
Este capítulo tem por objetivo apresentar a fundamentação teórica necessária 
para o entendimento do trabalho, introduzindo os conceitos e tecnologias utilizadas 
para o desenvolvimento do mesmo, bem como trabalhos correlatos ao projeto. 
 
 
2.1 Fluxo de Dados 
 
A extração de informações sintetizadas a partir de um conjunto de dados reduz 
consideravelmente a quantidade de informação a ser analisada independentemente do 
objetivo traçado para tal análise. Em redes de computadores toda a troca de dados 
entre dispositivos interconectados é conhecida como tráfego (KUROSE; ROSS, 
2016). A exportação de fluxo de dados é uma técnica que permite a sumarização e 
contabilização de todo tráfego envolvido na comunicação entre os elementos da rede 
a partir de um ponto de observação na topologia da mesma (OLIVEIRA, 2016). 
A fim de padronizar as informações que compõem o fluxo de dados na 
Internet, o IETF (do inglês, Internet Engineering Task Force), órgão regulador da 
6 
 
 
 
Internet, em 2013 redefiniu através do RFC 7011 o protocolo IPFIX, que especifica 
de forma detalhada quais campos devem compor um fluxo de dados (CLAISE; 
TRAMMELL; AITKEN, 2013). A criação e especificação de tal protocolo 
uniformiza o processo de exportação e coleta de informações de dispositivos de rede, 
como roteadores e switchs, proporcionando maior eficiência no processo de 
armazenamento e análise de tais informações. 
O Netflow, definido pelo RFC 3954, é um protocolo privado de exportação de 
fluxo de dados criado pela Cisco para ser incorporado a seus equipamentos 
(CLAISE, 2004). Em sua versão 5, o Netflow passou a ser amplamente difundido e 
adotado por outras empresas do mesmo segmento e se tornou base para a criação do 
IPFIX. O Netflow V9 é a evolução do Netflow V5 e agrega campos provenientes do 
protocolo de rede IPv6, permitindo a extração de características do fluxo não 
presentes no IPv4, protocolo sobre o qual o Netflow V5 se baseia. Além disso, a 
implementação de templates no Netflow V9 permite a definição de quais 
informações serão exportadas para análise, garantindo que apenas dados relevantes 
sejam sumarizados e contabilizados no processo de análise. 
 
 
2.2 Ataque à Rede de Computadores 
 
A fim de obter informações sigilosas a respeito de dados de usuários ou até 
mesmo expor falhas de segurança de determinado ambiente ou aplicação, ataques à 
rede de computadores fazem uso de vulnerabilidades para evadir sistemas de 
proteção e, por muitas vezes, causar danos alterando o funcionamento normal da rede 
e dos dispositivos conectados a ela (HOQUE et al., 2014). 
Ataques às redes de computadores podem ser classificados em duas categorias: 
passivos e ativos. Ataques passivos são aqueles em que o invasor captura os dados 
transmitidos e analisa o tráfego de rede para obter informações e identificar padrões 
de uso da mesma. Enquanto que, em ataques ativos o invasor executa comandos, 
utiliza de aplicações maliciosas, conhecidas como malware, ou induzem usuários a 
realizarem operações que alterem o funcionamento normal da rede (PAWAR; 
ANURADHA, 2015). 
7 
 
 
 
A seguir são descritos alguns dos ataques mais recorrentes em redes de 
computadores e amplamente abordados na literatura. 
 
 
2.2.1 Ataque de força bruta 
 
Ataques de força bruta são ataques voltados parasistemas que utilizam 
métodos de autenticação baseados em credenciais de acesso como usuário e senha. 
Indivíduos maliciosos se propõem a explorar aplicações que utilizam este método de 
autenticação, como SSH (do inglês, Secure Shell), FTP (do inglês, File Transfer 
Protocol) e aplicações web, a partir de sucessivas tentativas de descoberta destas 
credenciais, tendo com o objetivo obter acesso ao sistema ou a aplicação alvo 
(NAJAFABADI et al., 2015). Também, a utilização de senhas padrões ou de 
variações simples contendo apenas algumas letras e números permite que mutações 
deste ataque tenham alta taxa de sucesso, como a utilização de dicionários contendo 
combinações pré-determinadas de possíveis credenciais que tenham alta taxa de 
acerto (SATOH; NAKAMURA; IKENAGA, 2015). 
 
 
2.2.2 Ataque de negação de serviço 
 
Por meio de acessos coordenados de diferentes fontes, geralmente espalhadas 
pelo mundo, ataques de negação de serviço têm por objetivo sobrecarregar 
determinado serviço de modo que ele se torne indisponível (HOQUE et al., 2014). 
Tornar um determinado serviço indisponível para outras pessoas pode gerar perdas 
imensuráveis, uma vez que simplesmente impedir o acesso à informação em 
determinada circunstância pode gerar perdas não só financeiras, mas também de 
confiabilidade naquele serviço (D’CRUZE et al., 2018). Cerca de 26,41% dos 
ataques reportados ao CERT.br (Centro de Estudos, Resposta e Tratamento de 
Incidentes de Segurança no Brasil) no ano de 2017 foram de negação de serviço 
(CERT.BR, 2018). 
 
8 
 
 
 
2.2.3 Ataque de varredura 
 
A obtenção de informações a respeito do alvo pode ser considerada como 
uma etapa de preparação de indivíduos maliciosos antes de executarem ataques mais 
elaborados. Ataques de varredura possibilitam que atacantes descubram informações 
como quais serviços estão sendo executados em determinada rede, a versão do 
sistema operacional utilizado pelo alvo e portas vulneráveis ao ataque, de modo que 
permitem um ataque direcionado considerando as informações obtidas (HOQUE et 
al., 2014). Cerca de 53,16% dos ataques reportados ao CERT.br no ano de 2017 
foram de varredura (CERT.BR, 2018). 
 
 
2.3 Sistema de Detecção de Intrusão 
 
A utilização de sistemas para a identificação de atividades maliciosas de forma 
passiva, por meio de IDSs, ou de forma ativa, por meio de IPSs, tem como objetivo 
auxiliar na detecção e emissão de alertas de ameaças e na adoção de contra medidas 
contra as mesmas. IDSs ainda podem variar de acordo com o método de detecção 
empregado, podendo ser baseado em abuso ou anomalia, de acordo o ambiente a ser 
monitorado, podendo ser baseado em host1, os chamados HIDS (do inglês, Host-
Based Intrusion Detection System), ou baseado em rede, os chamados NIDS (do 
inglês, Network Based Intrusion Detection System) (OLIVEIRA, 2016). 
 
 
2.3.1 Sistema de detecção de intrusão por abuso 
 
Sistemas de detecção de intrusão baseados em abuso têm como característica 
principal a identificação de atributos que caracterizam determinada atividade que 
fora conhecida previamente no ambiente monitorado. A partir de tais atributos são 
 
1
 Host é um elemento computacional presente na extremidade de rede de computadores e que a s 
utilizam para a comunicação de dados entre si e um sistema final. 
9 
 
 
 
definidas assinaturas que distinguem dado comportamento de forma única dos 
demais observados (HINDY et al., 2018). Os IDSs utilizam estas assinaturas em um 
processo de comparação com dados trafegando na rede ou no host. Ao serem 
encontradas similaridades um alerta sobre tal correspondência é emitido para um 
analista com o intuito de notificar a presença de tal comportamento no ambiente 
monitorado e a tomada de medidas a respeito do mesmo. 
 
 
2.3.2 Sistema de detecção de intrusão por anomalia 
 
Sistemas de detecção de intrusão baseados em anomalia têm como principal 
característica a identificação de comportamentos divergentes do usual no ambiente 
monitorado. Tal característica é importante devido sua sensibilidade ante atividades 
maliciosas nunca antes vistas no sistema (HINDY et al., 2018). No entanto, a alta 
taxa de alertas gerados para eventos não maliciosos, ou seja, de falsos-positivo, reduz 
sua eficiência de uso da perspectiva de analistas, visto que o tempo gasto na 
identificação e tratamento de falsos-positivo é muito custoso considerando-se a 
criticidade associada a tomada de decisões para verdadeiros-positivo. 
 
 
2.4 Assinatura de Ataques 
 
Assinaturas são padrões que podem ser utilizados para identificar e representar 
de forma única pessoas, objetos e comportamentos. Em Segurança da Informação, 
assinaturas de ataques são padrões usados para identificar eventos maliciosos 
levando em consideração características pertencentes ao mesmo (MIRELES; CHO; 
XU, 2016), como quantidade de dados transmitidos em uma comunicação, tempo 
entre tentativas de acesso mal sucedidas e alterações comportamentais no uso da 
rede, de dispositivos ou aplicações. 
Como apresentado na Seção 2.3.1, IDSs baseados em abuso utilizam de 
assinaturas para identificar eventos de rede, agregando maior acurácia a seu sistema 
de detecção já que suas métricas de classificação exigem a combinação exata de 
10 
 
 
 
determinada atividade de rede com uma de suas assinaturas para que seja realizada a 
caracterização de determinado ataque. 
Nas Seções 2.4.1 e 2.4.2 foram descritas brevemente os modelos de assinaturas 
utilizados pelos IDSs Suricata e SNORT, respectivamente, ambos baseados em 
abuso. 
 
 
2.4.1 Modelo de assinatura Suricata IDS 
 
O Suricata é um NIDS baseado em assinatura, além de IPS e Monitorador de 
Segurança da Rede de alta performance (SURICATA, 2018). A partir de uma base 
de regras pré-definidas, que caracterizam suas assinaturas, o Suricata emite alertas 
uma vez que haja correspondência entre o fluxo analisado e uma de suas assinaturas 
(WANKHADE, 2016). 
A estrutura de formação de regras do Suricata é apresentada na Figura 1. 
 
Figura 1: Estrutura regra Suricata IDS. 
 
Fonte: produzida pelo próprio autor. 
 
Na Tabela 1, apresenta-se uma breve descrição de cada componente da 
estrutura de formação de regra do Suricata. 
 
 
 
 
 
 
 
 
 
 
action header options 
11 
 
 
 
Tabela 1: Descrição elementos regra Suricata IDS. 
Elemento Descrição 
action 
determina o que irá acontecer quando houver 
uma correspondência com a assinatura. Ex: 
emitir um alerta. 
header 
onde são definidos o protocolo, endereços IP, 
portas e a direção do fluxo a que a regra se 
aplica. 
rule options 
define opções da regras como, mensagem 
referente a regra e conteúdo a ser analisado. 
Fonte: produzida pelo próprio autor. 
 
 
2.4.2 Modelo de assinatura SNORT IDS 
 
Assim como o Suricata, o SNORT é um NIDS baseado em assinatura que 
permite, além de outras coisas, a análise do trafego de rede em tempo real (SNORT, 
2018). As assinaturas utilizadas pelo SNORT são constituídas de regras que definem 
um determinado comportamento de interesse na rede (GHAFIR et al., 2016). 
A estrutura de formação de regras do SNORT é apresentada na Figura 2. 
 
Figura 2: Estrutura regra SNORT IDS. 
 
Fonte: produzida pelo próprio autor. 
 
Na Tabela 2, apresenta-se uma breve descrição da função de cada elemento que 
compõe a estrutura de formação de regra do SNORT. 
 
 
 
 
action proto source dir dest ( body ) 
12 
 
 
 
Tabela 2: Descrição elementos regra SNORT IDS. 
Elemento Descrição 
action 
diz ao Snort o que fazer quando uma regra "dispara", isto é, 
quando a assinatura coincide. Neste caso, o Snort irá registrar o 
evento. Ele também pode fazer algo como bloquear o fluxo ao 
executar inline. 
proto 
diz ao Snort qual protocolo se aplica. Isso pode ser ip, icmp, tcp, 
udp, http, etc. 
source 
especifica o endereçoIP e a porta de envio, sendo que qualquer 
um deles pode ser a palavra-chave any, que é um caractere 
curinga. 
dir 
deve ser unidirecional como mostra a Figura 3a ou bidirecional 
indicado por <>, como mostra a Figura 3b. 
dest semelhante à fonte, mas indica o fim de recepção. 
( body ) detecção e outras informações contidas em parênteses. 
Fonte: produzida pelo próprio autor. 
 
 
2.5 Aprendizado de Máquina 
 
Permitir que máquinas aprendam mediante novas informações dadas como 
entrada e as interpretem de maneira automatizada seguindo um modelo 
predeterminado têm proporcionado estudos e avanços em diversos segmentos, sejam 
eles públicos ou privados, na área financeira, hospitalar ou de estudo de consumo. 
Aprendizado de máquina consiste em um conjunto de técnicas matemáticas e 
estatísticas aplicadas em sistemas computacionais que permitem realizam o 
processamento de grandes volumes de dados a fim de extrair informações, detectar 
padrões e realizar inferências a partir dos dados analisados (CHIO; FREEMAN, 
2018). 
13 
 
 
 
Algoritmos de aprendizado de máquina são classificados em dois grandes 
grupos, sendo eles: algoritmos de aprendizado supervisionado e algoritmos de 
aprendizado não supervisionado. Algoritmos de aprendizado supervisionado utilizam 
de conjuntos de dados previamente classificados pertencentes ao domínio do 
problema a ser tratado para “ensinar” o modelo o proposto, que posteriormente é 
avaliado submetendo-se um novo conjunto de testes pertencente ao mesmo domínio 
do problema para averiguar a acurácia do modelo e então realizar predições (REESE 
et al., 2017). Por sua vez, algoritmos de aprendizado não supervisionado utilizam de 
modelos que tem como objetivo encontrar relações entre os dados fornecidos, no 
entanto, diferentemente do modelo supervisionado, tais dados não possuem qualquer 
tipo de classificação prévia, deixando a cargo do modelo o agrupamento e 
classificação dos dados de acordo com parâmetros pré-estabelecidos (REESE et al., 
2017). 
 
 
2.6 Trabalhos Correlatos 
 
A identificação e extração de características representadas por atributos 
presentes em fluxos de rede que caracterizam atividades maliciosas têm sido uma 
área de estudo amplamente abordada na comunidade de segurança, muito devido ao 
fato de que tais atributos quando combinados permitem, como descrito na Seção 2.5., 
a criação de assinaturas de ataques. No entanto, a fim de lidar com o volume de 
dados a serem processados, bem como a grande variedade de atividades maliciosas 
existem atualmente, tais estudos têm se voltado tanto à identificação de tais atributos 
quanto e criação automatizada de assinaturas a partir deles, como abordado nos 
trabalhos de (ELEJLA et al., 2018), (SHARMA; SINGLA; GULERIA, 2018) e 
(SHIM et al., 2018). 
David e Netanyahu (DAVID; NETANYAHU, 2015) utilizam em seu trabalho 
Redes De Confiança Profundas (DBN, sigla em inglês), uma classe de aprendizado 
de máquina não supervisionado baseada em Redes Neurais, para a criação de vetores 
de características para malwares. Uma vez criados, os vetores de características 
distinguem classes de softwares maliciosos e são utilizados como base para a geração 
14 
 
 
 
automatizada de assinaturas para os mesmos. Os resultados apresentados pelos 
autores mostram que as assinaturas geradas a partir das características extraídas pelo 
DBN atingem cerca de 98,6% de precisão na detecção de variantes de malwares 
pertencentes a uma mesma família. 
No trabalho de Huda et al. (HUDA et al., 2017) os autores enfatizam o fato de 
que continuamente ataques sofrem variações para contornar e se esconder de IDSs e 
outros sistemas de detecção convencionais, em vista disso, os autores utilizam 
algoritmos de agrupamento semi-supervisionado para a identificação de ataques 
desconhecidos, extraindo características dos ataques intrínsecas aos agrupamentos 
gerados. Uma vez obtida, tais características são integradas ao sistema de 
classificação do mecanismo de detecção proposto. A abordagem proposta utiliza o 
algoritmo K-means para a formação dos agrupamentos dos quais são extraídos os 
atributos adicionados ao Sistema de Classificação de Vetores de Suporte (SVM, sigla 
em inglês). A principal contribuição da abordagem proposta é que ela não requer 
esforço especializado para atualizar o banco de dados do mecanismo de detecção, 
fazendo-o de maneira automatizada a partir das características obtidas previamente. 
Os autores em (YANG; WANG; ZHONG, 2014) utilizaram de métodos 
supervisionados e não supervisionados de aprendizado de máquina para geração 
automática de assinatura de ataques. No modelo proposto, foi utilizado o algoritmo 
supervisionado de árvore de decisão para classificar o fluxo de rede entre normal e 
anormal de acordo com características presentes nas camadas de rede e de transporte. 
Nos dados considerados anormais pelo algoritmo supervisionado, os autores também 
se utilizaram do algoritmo K-means para realizar o agrupamento dos k subconjuntos 
de dados com atributos relativamente semelhantes. Para cada k-subconjunto extraiu-
se características dos elementos pertencentes ao mesmo, características a partir das 
quais foram elaboradas as assinaturas. A principal contribuição dada pelos autores 
consiste na efetividade no agrupamento de elementos semelhantes, cerca de 96%. 
Alinhando-se aos trabalhos correlatos, o presente trabalho discute um modelo 
de extração de atributos suficientemente relevantes que caracterizam classes de 
ataques, ora agrupados de acordo similaridades. 
 
 
15 
 
 
 
 
 
 
 
 
 
 
 
CAPÍTULO 3 - Descrição do Projeto 
 
 
 
 
 
 
Este capítulo tem como objetivo apresentar a metodologia utilizada durante a 
elaboração deste trabalho. Nas Seções 3.2, 3.3 e 3.4 foram apresentados o método de 
obtenção dos conjuntos de assinaturas a serem analisadas, a arquitetura do sistema 
proposto e as ferramentas utilizadas para o desenvolvimento do projeto, 
respectivamente. 
 
 
3.1 Conjunto de Assinatura de Entrada 
 
Os conjuntos de assinaturas dos quais serão obtidos os atributos para análise 
foram gerados de forma automatizada a partir da avaliação do fluxo de rede abordada 
no trabalho de outro membro2 do laboratório ACME, local onde esta pesquisa foi 
realizada. Tanto o conjunto de assinaturas fornecido como entrada, quanto as 
assinaturas geradas pelo trabalho proposto podem ser adequadas aos principais IDSs 
baseados em assinatura da atualidade, como SNORT IDS e Suricata IDS. Na Tabela 
 
2
 Leandro Bertini Lara Gonçalves 
16 
 
 
 
3, apresenta-se todos os possíveis atributos componentes das assinaturas de entrada e 
que, consequentemente, serão analisados. 
 
Tabela 3: Atributos de fluxos de rede. 
Atributo Descrição 
 
Atributo Descrição 
srcaddr Endereço da origem do fluxo dpkts_response 
Número de pacotes 
enviados pelo destino 
destaddr 
Endereço do destino do 
fluxo 
TCP_dest_A 
Presença de flag TCP ACK 
de pacotes do destino 
srcport 
Número da porta da camada 
de transporte da origem 
TCP_dest_F 
Presença de flag TCP FIN 
de pacotes do destino 
destport 
Número da porta da camada 
de transporte destino 
TCP_dest_R 
Presença de flag TCP RST 
de pacotes do destino 
proto 
Protocolo de transporte 
utilizado 
TCP_dest_S 
Presença de flag TCP SYN 
de pacotes do destino 
first Tempo de início do fluxo TCP_src_A 
Presença de flag TCP ACK 
de pacotes da origem 
last Tempo de fim do fluxo TCP_src_F 
Presença de flag TCP FIN 
de pacotes da origem 
doct_response 
Número de bytes enviados 
pelo destino 
TCP_src_R 
Presença de flag TCP RST 
de pacotes da origem 
doct_source 
Número de bytes enviados 
pela origem 
TCP_src_S 
Presença de flag TCP SYN 
de pacotes da origem 
dpkts_source 
Número de pacotes enviados 
pela origem 
 
Fonte: produzida pelo próprio autor. 
 
 
3.2 Arquitetura doSistema 
 
A arquitetura proposta para execução do projeto, descrita na Figura 3, foi 
segmentada em três componentes principais, sendo eles: Conjunto de Assinaturas, 
17 
 
 
 
Módulo de Extração de Atributos (MEA) e o Gerador de Assinatura. A importância 
de cada componente, bem como o papel desempenhado por eles são descritos de 
forma detalhada nas Seções 3.2.1, 3.2.2 e 3.2.3, respectivamente. 
 
Figura 3: Arquitetura do sistema. 
Fonte: produzida pelo próprio autor. 
 
Na Figura 4, ilustra-se a generalização da arquitetura apresentada na Figura 3 
para N conjuntos distintos de assinaturas fornecidos como entrada. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
18 
 
 
 
Figura 4: Arquitetura generalizada do sistema para N conjunto de assinaturas. 
 
Fonte: produzida pelo próprio autor. 
 
 
3.2.1 Obtenção do conjunto de assinaturas 
 
Este componente é responsável pelo pré-processamento de cada conjunto Ai de 
assinaturas, tal que, Ai = {assinatura1, assinatura2, …, assinaturaj}, i = 1, 2, …, N, j = 
1, 2, ..., M, sendo N o número de conjuntos de entrada representado da Figura 3.2 e 
M a quantidade de assinaturas presente no conjunto. 
Nesta etapa, os atributos e valores de cada assinatura do conjunto Ai são 
reorganizados seguindo o formato de arquivo ARFF (do inglês, Attribute-Relation 
File Format). Arquivos no formato ARFF são amplamente usados para representar 
conjuntos de dados a serem processados por algoritmos de aprendizado de máquina 
(WITTEN et al., 2016). 
 
 
3.2.2 Módulo de extração de atributos (MEA) 
 
O MEA é o componente responsável pelo processamento das informações de 
entrada, estas formatadas e, assim, aptas para a realização da análise e extração dos 
atributos mais relevantes a partir das mesmas. 
Uma vez que as assinaturas analisadas não possuem qualquer tipo de 
classificação baseada em seus atributos, o primeiro procedimento realizado pelo 
19 
 
 
 
MEA é a formação de grupos disjuntos de assinaturas, conhecidos como clusters, 
que mais se assemelham umas às outras, ou seja, foi realizado um processo de 
clusterização (WITTEN et al., 2016). Para a realização desta etapa foi utilizado o 
algoritmo de aprendizado de máquina não supervisionado K-means, em que o valor 
de K, que representa a quantidade de clusters que serão formados, foi estimado de 
forma empírica. 
Posteriormente, sobre o cluster com maior quantidade de instâncias de 
assinaturas da mesma classe foram aplicados dois métodos distintos de análise. 
Ambos os métodos propostos consideram a análise quantitativa da ocorrência de 
cada atributo no cluster. Na primeira abordagem, ilustrada na Figura 3.3, 
inicialmente os atributos são ordenados de modo decrescente segundo o número de 
ocorrência da cada um deles, na sequência é feita uma análise da variação 
quantitativa entre os atributos adjacentes, em que a maior variação encontrada se 
tornará o “ponto de corte” que definirá quais atributos são relevantes. Na segunda 
abordagem, ilustrada na Figura 5, o “ponto de corte” é definido a partir do cálculo do 
limite superior do valor médio de ocorrência dos atributos somado do desvio padrão. 
 A partir da combinação dos pontos de corte obtidos por meio dos métodos de 
análise são identificados os atributos mais relevantes referentes àquela classe de 
assinatura. A combinação dos métodos permite uma maior acurácia com relação às 
características obtidas. 
 
 
 
 
 
 
 
 
 
 
 
 
20 
 
 
 
Figura 5: Método de análise de atributos. 
 
 
Fonte: produzida pelo próprio autor. 
 
 
3.2.3 Seletor de assinaturas 
 
De posse dos atributos mais relevantes fornecidos pelo MEA, um subconjunto 
de assinaturas é extraído a partir da combinação destes. Os valores que compõem os 
pares {atributo, valor} para formação da assinatura são fornecidos a partir da análise 
estatística de valores de atributos genéricos das assinaturas abordada no trabalho de 
outro membro3 do laboratório ACME!. 
 
 
3.3 Ferramentas Utilizadas 
 
O projeto foi desenvolvido utilizando a linguagem Python. Sua escolha deve-se 
a gama de bibliotecas e plataformas existentes para implementação e utilização de 
algoritmos de aprendizado de máquina disponíveis para a linguagem (REESE et al., 
2017). Dentre estas, está a biblioteca Scikit-Learn, que contém em sua coleção de 
algoritmos estatísticos e de aprendizado de máquina aqueles utilizados no 
desenvolvimento deste projeto. Além disso, o Scikit-Learn contém ferramentas que 
 
3
 Amanda Barbosa Sobrinho 
∆2 
∆N 
∆1 ∆0 
Ponto de corte 
21 
 
 
 
permitem o pré-processamento, classificação, clusterização e visualização dos dados 
analisados (SCIKIT-LEARN, 2018). 
 
 
3.4 Considerações Finais 
 
Neste capítulo foram descritos o funcionamento do projeto e de seus 
componentes, bem como toda linha de raciocínio seguida para sua elaboração, de 
forma a justificar cada etapa adotada no processo de obtenção dos atributos 
procurados. Além disso, também foram explicitadas quais as tecnologias e 
ferramentas empregadas em sua construção. 
O próximo capítulo apresenta brevemente as próximas etapas do projeto, bem 
como o cronograma para finalização do mesmo. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
22 
 
 
 
 
 
 
 
 
 
 
 
CAPÍTULO 4 - Experimentos e Resultados 
 
 
 
 
 
 
Neste capítulo são apresentados os experimentos realizados e os resultados 
obtidos a partir da abordagem proposta nesta pesquisa. A fim de validar o método 
proposto, foram realizados testes em dois conjuntos distintos de dados contendo 
informações sobre fluxo de rede malicioso e fluxo de rede normal, respectivamente. 
Na Seção 4.1 são descritas as métricas utilizadas para realizar a análise dos 
algoritmos de agrupamento abordados no projeto. Na Seção 4.2 são expostas as 
métricas utilizadas para realizar a análise dos resultados do modelo proposto como 
um todo. Na Seção 4.3 é apresentado o ambiente no qual foram coletados os dados 
que originaram as assinaturas bases para a validação do modelo. Na Seção 4.4 são 
descritos os resultados obtidos a partir dos experimentos realizados. Por fim, na 
Seção 4.5 são feitas as considerações finais sobre os resultados obtidos e o 
desempenho da metodologia proposta. 
 
 
 
 
23 
 
 
 
4.1 Métricas para Análise dos Algoritmos de Agrupamento 
 
A utilização de algoritmos de aprendizado de máquina não-supervisionado, 
como os de agrupamento utilizados neste trabalho, tem sido amplamente aplicado na 
literatura para identificar relações entre dados que a princípio são totalmente 
independentes uns dos outros. No entanto, apesar da aplicação massiva destas 
técnicas para solucionar tal demanda, a avaliação da qualidade das relações 
identificadas por estes é essencial para atestar a confiabilidade e integridade dos 
agrupamentos gerados. 
A escolha do melhor algoritmo de agrupamento para o cenário deste trabalho 
justifica-se a partir da análise de métricas como Homogeneidade, Completude, 
Pureza e Coeficiente de Silhueta, descritas nas Seções 4.1.1, 4.1.2, 4.1.3 e 4.1.4, 
respectivamente. Ainda, para a discussão das métricas analisadas as seguintes 
asserções devem ser adotadas: 
 - quantidade de instâncias presentes no conjunto de dados analisado 
 - conjunto de classes associada às instâncias 
 - conjunto de agrupamentos associado às instâncias 
 - tabela de contingência produzida a partir do algoritmo de 
agrupamento 
 - número de instâncias membro da classe e pertencente ao agrupamento 
. 
 
 
4.1.1 Homogeneidade 
 
No contexto de agrupamento, a homogeneidade (h) refere-se à taxa de 
pertencimento exclusivo de determinada instância a um dado agrupamento, ou seja, 
um algoritmo homogêneo deve atribuir apenas uma única classe a cada instância de 
um conjunto de dados. Em uma escala de zero a um, quanto mais próximo de um, 
mais homogêneo éo agrupamento. Na Equação 1, descreve-se a formulação 
matemática que representa o cálculo da homogeneidade de um agrupamento. Na 
24 
 
 
 
Equação 2, apresentaa-se o cálculo da entropia das instâncias pertences a cada classe 
condicionada ao agrupamento associado às mesmas. Já, na Equação 3, ilustra-se 
unicamente o cálculo da entropia das instâncias pertences a cada classe. 
 
 
 
 
 
 
4.1.2 Completude 
 
Um agrupamento é considerado completo (c) se todas as instâncias de uma 
determinada classe são atribuídas a um mesmo agrupamento. Em uma escala de zero 
a um, quanto mais próximo de um, mais completo é o agrupamento. Na Equação 4, 
apresenta-se a formulação matemática que descreve o cálculo da completude de um 
agrupamento. Na Equação 5, descreve-se o cálculo da entropia das instâncias 
pertences a cada agrupamento, condicionada à classe associadas às mesmas. Já, na 
Equação 6, ilustra-se unicamente o cálculo da entropia das instâncias pertences a 
cada agrupamento. 
 
 
 
 
 
, se 
, caso contrário 
onde, 
(Equação 1) 
(Equação 2) 
(Equação 3) 
25 
 
 
 
 
 
 
 
 
 
4.1.3 Pureza 
 
Para calcular a pureza, cada agrupamento é associado à classe de instância mais 
frequentes no mesmo, em seguida, a precisão dessa atribuição é medida através da 
razão entre o número de agrupamentos cujas classes foram atribuídas corretamente, e 
o número total de instâncias dos agrupamentos identificados. Na Equação 7, 
descreve-se como é realizado o cálculo da pureza. Onde, é número de classes 
existentes, é o número total de agrupamentos, é o tamanho do cluster , e é 
o número de instâncias da classe no cluster . Em uma escala de zero a um, quanto 
mais próximo de um, mais puro é o agrupamento. 
 
 
 
4.1.4 Coeficiente de silhueta 
 
O coeficiente de silhueta, métrica de maior relevância para a escolha do 
algoritmo utilizado, descreve o quão bem o modelo que define o agrupamento condiz 
com os dados que estão sendo analisados. Para tal, ele considera a distância 
euclidiana entre os elementos pertencentes ao mesmo agrupamento e a distância 
entre os elementos pertencentes aos agrupamentos vizinhos. O cálculo do coeficiente 
, caso contrário 
, se 
onde, 
Pureza 
(Equação 4) 
(Equação 5) 
(Equação 6) 
(Equação 7) 
26 
 
 
 
de silhueta, , para cada instância, , é representado na Equação 8. Em uma escala 
de menos um a um, em que quanto mais próximo de um, melhor definida a instância 
está nos limites que definem o modelo. O valor 0 indica que a instância está ligada 
ou muito próxima do limite do modelo entre dois agrupamentos vizinhos. Valores 
negativos indicam que essas instâncias podem ter sido atribuídas ao agrupamento 
errado. 
 
 
em que, 
 
 – distância média entre uma amostra e todos os outros pontos da 
mesma classe 
 – distância média entre uma amostra e todos os outros pontos no 
próximo cluster mais próximo 
 
 
4.2 Métricas para Análise dos Resultados 
 
A avaliação do modelo proposto consistente essencialmente na análise binária da 
identificação, ou não, de um evento de rede definido por meio do conjunto de 
assinaturas geradas para o mesmo. Neste contexto, para a avaliação do método 
proposto foram utilizadas métricas amplamente empregadas para análise binária de 
sistema de detecção de intrusão. Quando um caso positivo é detectado corretamente a 
partir de uma assinatura pré definida para o mesmo têm-se um verdadeiro positivo 
(TP), caso contrário, têm-se um falso negativo (FN). No entanto, da perspectiva dos 
casos negativos, quando estes são detectados corretamente, têm-se um verdadeiro 
negativo (TN), caso contrário, têm-se um falso positivo (FP). A matriz de confusão 
apresentada na Tabela 4 descreve a visualização dos casos descritos. 
 
(Equação 8) 
27 
 
 
 
 
 
Tabela 4: Matriz de confusão. 
 Valor Predito 
 
Positivo 
(Anomalia) 
Negativo 
(Normal) 
Valor Real 
Positivo 
(Anomalia) 
TP FN 
Negativo 
(Normal) 
FP TN 
Fonte: produzida pelo próprio autor. 
 
A partir dos valores oriundos da matriz de confusão métricas expressivas a 
respeito do modelo são derivadas. Algumas delas são: 
 Sensibilidade, ou taxa de verdadeiros positivos (TPR): representada na 
Equação 9, descreve-se a relação entre todos os casos positivos corretamente 
classificados sobre o total de casos corretamente classificados. 
 
 
 
 Especificidade, ou taxa de falsos positivos (FPR): representada na Equação 
10, descreve-se a relação entre todos os casos negativos corretamente 
classificados sobre o total de casos erroneamente classificados. 
 
 
 
 Precisão: representada na Equação 11, descreve-se a relação entre todos os 
casos positivos corretamente classificados sobre o total de casos classificados 
como positivo. 
 
 
(Equação 11) 
(Equação 9) 
(Equação 10) 
28 
 
 
 
 Acurácia: representada na Equação 12, descreve-se a relação entre todos os 
casos corretamente classificados sobre o total de casos analisados. Esta 
métrica é diretamente relacionada à performance do modelo. 
 
 
 
 
4.3 Ambiente de Simulação e Coleta 
 
O modelo proposto neste trabalho é fundamentado na análise dos atributos 
presentes em assinaturas de eventos de rede gerados único e exclusivamente a partir 
do cabeçalho presente nos fluxos que os caracterizam. Logo, para que se pudesse 
avaliar o modelo, um conjunto considerável de assinaturas se fez necessário. A 
geração dos fluxos que deram origem a tais assinaturas foi realizada em um ambiente 
virtual construído a partir do uso de máquinas virtuais (VMs) sobre o software 
VirtualBox (VIRTUALBOX, 2018) em sua versão 5.2. 
O ambiente virtual, ilustrado na Figura 6, é composto por nove máquinas 
virtuais distribuídas da seguinte forma: cinco pertencentes ao grupo alvo dos ataques, 
três pertencentes ao grupo de máquinas atacantes e uma representando o roteador 
responsável por manter a comunicação entre os grupos de VMs existentes. Este 
ambiente permitiu a realização de ataques simulados como, ataque de negação de 
serviço (DoS), ataque de força bruta, ataque de varredura de serviços em execução e 
ataques de varredura de vulnerabilidades em serviços web. Os fluxos referentes aos 
ataques foram coletados e armazenados em uma base de dados para análise posterior 
das assinaturas geradas a partir dos mesmos, assim como um conjunto de fluxos 
legítimos originados e coletados do laboratório ACME!. 
 
(Equação 12) 
29 
 
 
 
Figura 6: Visão geral do ambiente virtual de coleta de fluxo. 
 
Fonte: produzida pelo próprio autor. 
 
Na Tabela 5, apresenta-se a quantidade de fluxos coletados para cada ataque 
simulado no ambiente virtual, assim como a quantidade de assinaturas geradas a 
partir dos mesmos. Também foram coletados 120.000 exemplares de fluxo legítimo 
para fins comparativos. 
 
Tabela 5: Quantidade de fluxos coletados por tipo. 
Tipo de Fluxo Quantidade Assinaturas 
Ataque de Negação de Serviço 50.002 50 
Ataque de Força Bruta 50.002 50 
Ataque de Mapeamento de Serviço em host 50.002 50 
Ataque de Mapeamento de Vulnerabilidades 50.002 50 
Legítimo 120.000 --- 
Fonte: produzida pelo próprio autor. 
 
 
 
 
30 
 
 
 
4.4 Teste e Análise dos Resultados 
 
Nesta Seção serão tratados os testes e resultados pertinentes ao modelo 
proposto. Na Seção 4.4.1 são apresentados os resultados obtidos no processo de 
eleição do algoritmo de agrupamento utilizado no modelo. Na Seção 4.4.2 é descrito 
os resultados obtidos a partir da identificação dos atributos mais relevantes para 
caracterizar um evento de rede, voltado para os ataques analisados. 
 
 
4.4.1 Algoritmos de agrupamento 
 
Os testes para a escolha do algoritmo de aprendizado de máquina não 
supervisionado voltado para agrupamento das assinaturas mais semelhantes dentro 
do conjunto de assinaturas obtido ocorreu em função dos seguintes fatores: 
 Algoritmo: foram consideradospara o modelo quatro dos principais 
algoritmos de agrupamento amplamente utilizados na literatura, sendo eles: 
DBSCAN, Hierarchical Clustering, K-Means e Spectral Clustering. Além 
disso, para cada algoritmo, foram utilizadas suas implementação padrões do 
Scit-Learn, respectivamente. 
 Quantidade de agrupamentos: a quantidade de agrupamentos, fator 
diretamente relacionado ao modo como os dados são agrupados nos 
respectivos algoritmos, também foi determinante na escolha do algoritmo 
utilizado no modelo. Para cada um dos algoritmos de analisados, foram 
realizadas execuções considerando 2, 3, 4, 5 e 6 agrupamentos. 
Ao final dos testes, assim como observado nos trabalho citados da Seção 2.6, o 
algoritmo K-Means se provou a melhor escolha para o agrupamento dos conjuntos de 
assinaturas dados como entrada. Em sua execução considerando 5 agrupamentos, o 
algoritmo K-Means apresentou uma taxa de 88.25% de adequação do modelo aos 
dados analisados. Tal valor, observado através do cálculo do coeficiente de silhueta, 
foi determinante para a escolha da utilização do algoritmo no modelo. Além disso, o 
algoritmo foi o que se mostrou mais consistente quanto à homogeneidade, 
completude e pureza dos agrupamentos realizados, tais métricas foram introduzidas 
31 
 
 
 
nas Seções 4.1.1, 4.1.2 e 4.1.3, assim como o coeficiente de silhueta introduzido na 
Seção 4.1.4. 
Na Tabela 6, apresenta-se os resultados dos testes realizados para o algoritmo 
DBSCAN sobre as assinaturas referentes ao ataque de força bruta. Observa-se que o 
algoritmo se comportou mal diante as métricas analisadas. Uma vez que, os únicos 
resultados com pontuação acima de 50% foram no cálculo da Pureza utilizando dois 
e cinco agrupamentos. 
 
Tabela 6: Resultado agrupamento utilizando o algoritmo DBSCAN. 
Qtd. Cluster Homogeneidade Completude Pureza 
Coeficiente 
de Silhueta 
2 0.10289 0.04788 0.38639 0.18589 
3 0.27206 0.20060 0.59091 0.18589 
4 0.18780 0.16698 0.47727 0.18589 
5 0.24318 0.23912 0.52273 0.18589 
6 0.15828 0.18710 0.31818 0.18589 
Fonte: produzida pelo próprio autor. 
 
Na Tabela 7, apresenta-se os resultados dos testes realizados para o algoritmo 
Hierarchical Clustering sobre as assinaturas referentes ao ataque de força bruta. 
Observa-se que apesar do modelo que define o algoritmo, em sua configuração 
padrão, possuir 64.84% de adaptação diante os dados analisados, o mesmo se 
comportou de forma razoável quanto à pureza obtida e mal considerando as demais 
métricas avaliadas. 
 
 
 
 
 
 
32 
 
 
 
Tabela 7: Resultado agrupamento utilizando o algoritmo Hierarchical Clustering. 
Qtd. Cluster Homogeneidade Completude Pureza 
Coeficiente 
de Silhueta 
2 0.06721 0.09815 0.56818 0.64846 
3 0.07839 0.17757 0.45455 0.64846 
4 0.09263 0.15848 0.43182 0.64846 
5 0.09737 0.29726 0.34091 0.64846 
6 0.07378 0.24367 0.29545 0.64846 
Fonte: produzida pelo próprio autor. 
 
Na Tabela 8, apresenta-se os resultados dos testes realizados para o algoritmo K-
Means sobre as assinaturas referente ao ataque de força bruta. Observa-se que o 
modelo que define o algoritmo, em sua configuração padrão e utilizando cinco 
agrupamentos, mostrou-se promissor quanto sua adaptação aos dados analisados, 
obtendo pontuação de 88.25% no coeficiente de silhueta, assim como na pureza 
obtida no agrupamento, obtendo pontuação de 61.36%. Apesar de ter apresentado um 
comportamento razoável considerando as demais métricas avaliadas, o algoritmo K-
Means com cinco agrupamentos foi o que apresentou melhor performance quanto ao 
que lhe foi proposto, seguido pelos algoritmos Hierarchical Clustering utilizando 
dois agrupamentos e K-Means utilizando seis agrupamentos. 
 
Tabela 8: Resultado agrupamento utilizando o algoritmo K-Means. 
Qtd. Cluster Homogeneidade Completude Pureza 
Coeficiente 
de Silhueta 
2 0.00449 0.01240 0.56818 0.58161 
3 0.06016 0.07220 0.43182 0.50252 
4 0.09304 0.22125 0.43182 0.57805 
5 0.22784 0.27689 0.61364 0.88254 
6 0.14550 0.32008 0.31818 0.63821 
Fonte: produzida pelo próprio autor. 
 
Na Tabela 9, apresenta-se os resultados dos testes realizados para o algoritmo 
Spectral Clustering sobre as assinaturas referentes ao ataque de força bruta. Observa-
33 
 
 
 
se que apesar do modelo que define o algoritmo, em sua configuração padrão, 
possuir 53.21% de adaptação diante os dados analisados, o mesmo se comportou de 
forma razoável quanto à pureza obtida e mal considerando as demais métricas 
avaliadas. 
 
Tabela 9: Resultado agrupamento utilizando o algoritmo Spectral Clustering. 
Qtd. Cluster Homogeneidade Completude Pureza 
Coeficiente 
de Silhueta 
2 0.01751 0.00898 0.59091 0.53219 
3 0.14309 0.11518 0.56818 0.53219 
4 0.12489 0.12749 0.45455 0.53219 
5 0.17990 0.19727 0.43182 0.53219 
6 0.10235 0.13492 0.31818 0.53219 
Fonte: produzida pelo próprio autor. 
 
A execução do algoritmo K-Means sobre as assinaturas representativas do 
ataque de força bruta, considerando cinco agrupamentos, permitiu a construção da 
Tabela 10. Na Tabela 10, descreve-se a proporção de assinaturas em cada grupo 
formado, destacando-se o grupo um, com cerca de 52% das assinaturas analisadas, as 
quais passaram pelo método de seleção de atributos ilustrado na Figura 3. 
 
Tabela 10: Proporção de assinaturas por cluster para o ataque de força bruta. 
Qtd. Cluster Qtd. Assinaturas Proporção 
0 8 16% 
1 26 52% 
2 9 18% 
3 4 8% 
4 3 6% 
Fonte: produzida pelo próprio autor. 
 
 
 
 
34 
 
 
 
4.4.2 Identificação de atributos relevantes 
 
Para cada classe de ataque foi estendida a análise descrita na Tabela 10. De 
posse da proporção de assinaturas em cada agrupamento, os testes a seguir foram 
aplicados estritamente sobre aquele com maior ocorrência de assinaturas. Tal 
abordagem, a exemplo de Tabela 10, reduziu em cerca de 48% a quantidade de 
assinaturas que definem o ataquem, o que, por si só, representa um ganho de 
desempenho computacional considerável com relação ao processamento necessário 
para análise das assinaturas e identificação dos eventos na rede. 
De posse do conjunto de assinaturas mais semelhantes entre si foi realizada a 
contagem da ocorrência dos atributos descritos na Tabela 3. Os atributos 
considerados qualitativos, que sempre quando presentes serão considerados como 
parte essencial componente da assinatura, como SrcAddr, DestAddr, PortSrc, PortDst 
e Proto, não fizeram parte da contagem. Para os demais atributos, estes considerados 
quantitativos, foram analisadas quais assinaturas continham aqueles presentes a partir 
da definição do ponto de corte (PC) sobre o histograma dos atributos. 
A Figura 7 ilustra o processo de escolha do ponto de corte ótimo (PCO) sobre 
o histograma organizado em ordem descrente referente à ocorrência dos atributos nas 
assinaturas de ataque de varredura de vulnerabilidades. Descartados os atributos que 
não tiveram presença em nenhuma das assinaturas do conjunto, o PC1 foi disposto 
logo à frente do primeiro conjunto de atributos com menor ocorrência, então, todas 
as assinaturas contendo todos os atributos à esquerda do ponto de corte foram 
avaliadas novamente. O PC2 foi disposto logo à frente do segundo conjunto de 
atributos com menor ocorrência, então, novamente todas as assinaturas contendo 
todos os atributos à esquerda do ponto de corte foram avaliadas. 
 
 
 
 
 
 
 
35 
 
 
 
Figura 7: Escolha do ponto de corte ótimo. 
 
Fonte: produzida pelo próprio autor. 
 
Para cada ponto de corte foram avaliadas a sensibilidade, especificidade, 
precisão e acurácia das assinaturas resultantes, métricas estas descritas na Seção 4.3. 
O PCO representa o instante a partir do qual as assinaturas definidas através dos 
atributos analisados obtiveram o melhor desempenho seguindo o modelo proposto, 
obtendo-se, assim, o conjunto de atributos mais relevantes para a detecção do 
respectivo evento na rede. 
Uma análise dos resultadosobtidos para todos os PC, incluindo o PCO, de 
cada conjunto de assinaturas analisada permitiu a criação da Tabela 11. Em termos 
gerais, todos os PCOs obtiveram bons resultados com relação ao desempenho obtido 
considerando todas as assinaturas de cada conjunto de ataque. 
 
 
 
 
 
 
PC1 PC2 PCO PC0 
36 
 
 
 
Tabela 11: Análise do PCO por classe de ataque. 
Tipo de Ataque PC Sensibilidade Especificidade Precisão Acurácia 
Negação de 
Serviço 
#1 0.95230 0.22000 0.54973 0.58615 
#2 0.87534 0.35054 0.49327 0.73654 
PCO 0.76325 0.71800 0.84054 0.98238 
Varredura de 
Vulnerabilidade 
#1 0.29981 0.86543 0.89198 0.65432 
#2 0.47279 0.74541 0.93156 0.70540 
PCO 0.83545 0.92455 0.95790 0.97076 
Varredura de 
Serviços 
#1 0.56455 0.48520 0.71910 0.88113 
#2 0.73211 0.65465 0.85770 0.76321 
#3 0.71023 0.61135 0.85889 0.87330 
#4 0.89231 0.78846 0.91621 0.93400 
PCO 1.0000 0.98200 0.91645 0.94231 
Força Bruta 
#1 1.00000 0.26000 0.57471 0.63000 
#2 0.85055 0.62210 0.68944 0.71204 
PCO 0.86570 0.93102 0.88132 0.90564 
#3 0.68545 0.77645 0.59220 0.60410 
Fonte: produzida pelo próprio autor. 
 
Na Figura 8, observa-se que houveram melhorias significativas na 
sensibilidade, precisão e acurácia na detecção do ataque de negação de serviço, 
considerando-se apenas assinaturas que continham os atributos identificados como 
suficientemente relevantes para esta classe de ataque. No entanto, houve um 
detrimento da especificidade na detecção, comparando-se o subconjunto de 
assinaturas obtido em relação à análise realizada com todas as assinaturas do 
conjunto de entrada, estas últimas abrangendo todos os atributos da classe. 
 
 
 
 
 
 
37 
 
 
 
Figura 8: Ataque de negação de serviço. 
 
Fonte: produzida pelo próprio autor. 
 
Na Figura 9, observa-se que houveram perdas na sensibilidade, 
especificidade, precisão e acurácia na detecção do ataque de varredura de 
vulnerabilidade, considerando-se apenas assinaturas que continham os atributos 
identificados como suficientemente relevantes para esta classe de ataque em ralação 
à análise realizada com todas as assinaturas do conjunto de entrada, estas últimas 
abrangendo todos os atributos da classe. 
 
Figura 9: Ataque de varredura de vulnerabilidades. 
 
Fonte: produzida pelo próprio autor. 
38 
 
 
 
 
Na Figura 10, observa-se que houveram melhorias significativas na 
especificidade, precisão e acurácia na detecção do ataque de varredura de serviços, 
considerando-se apenas assinaturas que continham os atributos identificados como 
suficientemente relevantes para esta classe de ataque. Observa-se tal resultado 
comparando o subconjunto de assinaturas obtido em relação à análise realizada com 
todas as assinaturas do conjunto de entrada, estas últimas abrangendo todos os 
atributos da classe. 
 
Figura 10: Ataque de varredura de serviços. 
 
Fonte: produzida pelo próprio autor. 
 
Na Figura 11, observa-se que houveram melhorias na sensibilidade e acurácia 
na detecção do ataque de força bruta, considerando-se apenas assinaturas que 
continham os atributos identificados como suficientemente relevantes para esta 
classe de ataque. No entanto, houve um detrimento da especificidade e precisão na 
detecção comparando-se o subconjunto de assinaturas obtido, em relação à análise 
realizada com todas as assinaturas do conjunto de entrada, estas últimas abrangendo 
todos os atributos da classe. 
 
 
 
39 
 
 
 
Figura 11: Ataque de força bruta. 
 
Fonte: produzida pelo próprio autor. 
 
Além disso, na Figura 12, é possível observar a redução do volume de atributos 
iniciais considerados para cada conjunto de assinaturas, 33 no total. Para o ataque de 
negação de serviço, após a realização do agrupamento das assinaturas representativas 
da classe, foram registrados 18 atributos no grupo com maior quantidade de 
instâncias. Destes, apenas 9 atributos foram classificados como suficientemente 
relevantes para caracterizar o ataque, representando uma diminuição de 72.73% na 
quantidade de atributos. Estendendo tal análise, para os demais ataques observou-se 
uma redução de 75.76%, 75.76% e 81.82% na quantidade total de atributos 
necessários para identificar os ataques de varredura de vulnerabilidades, varredura de 
serviço e força bruta, respectivamente. 
 
 
 
 
 
 
 
 
 
40 
 
 
 
Figura 12: Redução da quantidade de atributos componentes das assinaturas. 
 
 
Fonte: produzida pelo próprio autor. 
 
 
4.5 Considerações Finais 
 
Com a análise dos resultados pôde-se concluir sobre a efetividade do modelo 
proposto. O sistema de identificação de atributos relevantes atingiu altos níveis de 
precisão e acurácia nos testes realizados. Além disso, o modelo reduziu 
consideravelmente a quantidade de atributos necessários para descrever cada 
conjunto de assinaturas com relação ao volume total inicial considerado. Ainda, 
houve um ganho com relação à performance na execução dos IDSs, devido o número 
reduzido de assinaturas presente no subconjunto gerado a partir da seleção daquelas 
contendo os atributos ora identificados como relevantes. No próximo capítulo são 
apresentadas as conclusões do trabalho, bem como as dificuldades encontradas para 
o desenvolvimento do mesmo e propostas de trabalhos futuros. 
 
 
 
41 
 
 
 
 
 
 
 
 
 
 
 
CAPÍTULO 5 - Conclusão 
 
 
 
 
 
 
5.1 Conclusões Gerais 
 
A criação automatizada de assinaturas que definem um determinado 
comportamento de rede, principalmente em se tratando de ataques, tem sido um 
desafio amplamente explorado pela comunidade de segurança da informação. No 
entanto, a geração de grandes volumes de assinaturas referentes a ataques 
pertencentes a uma mesma classe tem se tornado um problema, afetando diretamente 
a qualidade na detecção de tais eventos e o desempenho de IDS que as utilizam para 
tal análise. 
Identificado tal problema, o estudo apresentado e o modelo proposto neste 
trabalho se mostraram de grande valia para a área de segurança da informação. Visto 
que, em meio a um conjunto de assinaturas de determinado evento de rede, o modelo 
identificou que, nestas, apenas cerca de 25% dos atributos foram suficientemente 
relevantes para a identificação do evento, representando um ganho considerável para 
sistemas que possam interpretar e executar tais assinaturas. 
No trabalho de Huda et. al. (2017), os autores apresentaram resultados com 
cerca de 98.53% de acurácia na detecção de ataques segundo o modelo proposto 
42 
 
 
 
pelos mesmos. Neste trabalho, foram obtidas acurácia de 98.23%, 97.07%, 94.23, 
90.56% para os ataques de negação de serviço, varredura de vulnerabilidade, 
varredura de serviços e força bruta, respectivamente. Os resultados obtidos foram 
bastante satisfatórios no que diz respeito à eficácia geral do modelo proposto. 
Ressaltando-se o fato de que o método utilizado para detecção dos ataques, 
consistindo na utilização do fluxo para geração de assinaturas, tem se mostrado 
bastante promissor e explorado na literatura, diferentemente da abordagem utilizando 
DPI explorada no trabalho de Huda et. al. (2017). 
Ainda, o modelo proposto se mostrou promissor no que promete em relação à 
identificação dos atributos mais relevantes para caracterização de eventos de rede, 
proporcionando a minimização dos testes necessários para identifica-los e, de forma 
concomitante, o aumento a eficiência no processo de detecção das classes de ataque 
analisadas. 
 
 
5.2 Dificuldades Encontradas 
 
Uma das dificuldades encontradas nesta pesquisa foi a falta de assinaturas de 
eventos de rede baseadas unicamente no cabeçalho dos fluxos, desta forma não foi 
possível extrair todo potencial dos algoritmos de agrupamento abordados, visto que 
os mesmo lidam melhor com volumes de dados maiores do que os analisados. 
Outra característica que acrescentou dificuldades foi a própria estruturação 
desta pesquisa,em que duas frentes individuais se integravam em uma frente maior. 
Para isso, os membros procuraram sempre estar atualizados em relação ao 
andamento de ambas as frentes e, dessa forma, todas as atividades dependentes da 
outra frente puderam ser desenvolvidas com êxito. 
 
 
5.3 Trabalhos Futuros 
 
Como proposta para trabalhos futuros sugere-se uma extensão do método 
utilizado para seleção dos atributos com abordagens diferentes das utilizadas, 
43 
 
 
 
explorando técnicas de seleção e filtragem de atributos que não foram utilizadas, 
como Relief, MIFS e FRFS 
Além disso, outro trabalho possível consiste na integração das duas frentes 
desenvolvidas em paralelo, associando a identificação dos atributos mais relevantes 
para o Cyber Segurança a seus valores com maior importância segundo análise 
probabilística dos mesmos. 
Ainda, visando uma melhoria do sistema proposto, é interessante que seja 
elaborado um método para a otimização da identificação dos atributos, aplicando-se 
métodos probabilísticos e algoritmos de aprendizado de máquina supervisionados 
para classificação dos mesmos, como Bootstrapping e Árvores Aleatórias. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
44 
 
 
 
 
 
 
REFERÊNCIAS BIBLIOGRÁFICAS 
 
 
 
 
ASHFAQ, Rana A. R., WANG, Xi-Zhao., HUANG, Joshua Z., ABBAS, Haider, e 
HE, Yu-Lin. Fuzziness based semi-supervised learning approach for intrusion 
detection system. Information Sciences, v. 378, p. 484-497, 2017. 
 
CERT.BR. Incidentes Reportados ao CERT.br -- Janeiro a Dezembro de 2017. 
Disponível em: <https://www.cert.br/stats/incidentes/2017-jan-dec/tipos-
ataque.html>. Acesso em: 28 jun. 2018. 
 
CHIO, Clarence; FREEMAN, David. Machine Learning and Security. O'Reilly 
Media, 2018. 
 
CLAISE, Benoit. Cisco systems netflow services export version 9. 2004. 
Disponível em: <https://tools.ietf.org/html/rfc3954>. Acesso em: 28 jul. 2018. 
 
CLAISE, Benoit; TRAMMELL, Brian; AITKEN, Paul. Specification of the IP flow 
information export (IPFIX) protocol for the exchange of flow information. 2013. 
Disponível em: <https://tools.ietf.org/html/rfc7011>. Acesso em: 28 jul. 2018. 
 
CORRÊA, Jorge L. Um modelo de detecção de eventos em redes baseado no 
rastreamento de fluxos. 2009. Dissertação (Mestrado em Ciência da Computação) - 
Instituto de Biociências Letras e Ciências Exatas, Universidade Estadual Paulista, 
São José do Rio Preto, 2009. 
 
45 
 
 
 
DAVID, Omid E.; NETANYAHU, Nathan S. Deepsign: Deep learning for 
automatic malware signature generation and classification. In: Neural Networks 
(IJCNN), International Joint Conference on. IEEE, p. 1-8, 2015. 
 
D’CRUZE, Hubert; WANG, Ping; SBEIT, Raed O.; RAY, Andrew. A Software-
Defined Networking (SDN) Approach to Mitigating DDoS Attacks . In: 
Information Technology-New Generations. Springer, Cham, p. 141-145, 2018. 
 
ELEJLA, Omar E.; ANBAR, Mohammed; BELATON, Bahari; ALIJLA, Basem O. 
Flow-Based IDS for ICMPv6-Based DDoS Attacks Detection. Arabian Journal for 
Science and Engineering, p. 1-19, 2018. 
 
FALLAHI, Naser; SAMI, Ashkan; TAJBAKHSH, Morteza. Automated flow-based 
rule generation for network intrusion detection systems . In: Electrical 
Engineering (ICEE), 2016 24th Iranian Conference on. IEEE, p. 1948-1953, 2016. 
 
FERREIRA, Vinícius. O. Classificação de anomalias e redução de falsos positivos 
em sistemas de detecção de intrusão baseados em rede utilizando métodos de 
agrupamento, 2016. Dissertação (Mestrado em Ciência da Computação) - Instituto 
de Biociências Letras e Ciências Exatas, Universidade Estadual Paulista, São José do 
Rio Preto, 2016. 
 
GALHARDI, Vinícius. V. Detecção adaptativa de anomalias em redes de 
computadores utilizando técnicas não supervisionadas . 2017. Dissertação 
(Mestrado em Ciência da Computação) - Instituto de Biociências Letras e Ciências 
Exatas, Universidade Estadual Paulista, São José do Rio Preto, 2017. 
 
HAZAS, Mike; MORLEY, Janine; BATES, Oliver; FRIDAY, Adrian. Are there 
limits to growth in data traffic?: on time use, data generation and speed. In: 
Proceedings of the Second Workshop on Computing within Limits. ACM, p. 14, 
2016. 
 
46 
 
 
 
HINDY, Hanan; BROSSET, David; BAYNE, Ethan; SEEAM, Amar; 
TACHTATZIS, Christos; ATKINSON, Robert; BELLEKENS, Xavier. A 
Taxonomy and Survey of Intrusion Detection System Design Techniques, 
Network Threats and Datasets . arXiv preprint arXiv:1806.03517, 2018. 
 
HOQUE, Nazrul; BHUYAN, Monowar H.; BAISHYA, Ram C.; 
BHATTACHARYYA, Dhruba K.; KALITA, Jugal K.. Network attacks: 
Taxonomy, tools and systems. Journal of Network and Computer Applications, v. 
40, p. 307-324, 2014. 
 
HUDA, Shamsul; MIAH, Suruz; HASSAN, Mohammad M.; ISLAM, Rafiqul; 
YEARWOOD, John; ALRUBAIAN, Majed; ALMOGREN, Ahmad. Defending 
unknown attacks on cyber-physical systems by semi-supervised approach and 
available unlabeled data. Information Sciences, v. 379, p. 211-228, 2017. 
 
JASPER, Scott E. US cyber threat intelligence sharing frameworks . International 
Journal of Intelligence and CounterIntelligence, v. 30, n. 1, p. 53-65, 2017. 
 
KAKIHATA, Eduardo M.; SAPIA, Helton M.; OIAKAWA, Ronaldo T.; PEREIRA, 
Danilo R.; PAPA, Joao P.; ALBUQUERQUE, Victor H. C.; SILVA, Francisco A. 
Intrusion Detection System Based On Flows Using Machine Learning 
Algorithms. IEEE Latin America Transactions, v. 15, n. 10, p. 1988-1993, 2017. 
 
KAZEMI, Keihan; FANIAN, Ali. Tunneling protocols identification using light 
packet inspection. In: Information Security and Cryptology (ISCISC), 2015 12th 
International Iranian Society of Cryptology Conference on. IEEE. p. 110-115, 2015. 
 
KRISHNA, Shashank. Evolution of Cloud Computing, Comparing Cloud with 
Grid Computing. Evolution, v. 3, n. 4, 2015. 
 
KUROSE, James F.; ROSS, Keith W. Computer networking: a top-down 
approach, 6th edition,. Addison-Wesley, 2016. 
47 
 
 
 
 
LIAO, Hung-Jen; LIN, Chun-Hung R.; LIN, Ying-Chih; TUNG, Kuang-Yuan. 
Intrusion detection system: A comprehensive review. Journal of Network and 
Computer Applications, v. 36, n. 1, p. 16-24, 2013. 
 
MANSFIELD-DEVINE, Steve. The growth and evolution of DDoS. Network 
Security, v. 2015, n. 10, p. 13-20, 2015. 
 
MIRELES, Jose David; CHO, Jin-Hee; XU, Shouhuai. Extracting attack 
narratives from traffic datasets. In: Cyber Conflict (CyCon US), International 
Conference on. IEEE, p. 1-6, 2016. 
 
NAJAFABADI, Maryam M.; KHOSHGOFTAAR, Taghi M.; CALVERT,Chad; 
KEMP, Clifford. Detection of SSH brute force attacks using aggregated netflow 
data. In: Machine Learning and Applications (ICMLA), 2015 IEEE 14th 
International Conference on. IEEE, p. 283-288, 2015. 
 
NEELY, Lee. Exploits at the endpoint: SANS 2016 threat landscape survey. 
SANS Institute, Aug, v. 3, 2016. 
 
PAWAR, Mohan V.; ANURADHA, J. Network security and types of attacks in 
network. Procedia Computer Science, v. 48, p. 503-506, 2015. 
 
RAO, KVSN Rama; BATTULA, Sudheer K.; KRISHNA, T. L. S.R. A smart 
heuristic scanner for an intrusion detection system using two-stage machine 
learning techniques. International Journal of Advanced Intelligence Paradigms, v. 9, 
n. 5-6, p. 519-529, 2017. 
 
REESE, Richard M; REESE, Jennifer L.; KALUZA, Bostjan; KAMATH, Uday; 
CHOPPELLA, Krishna. Machine Learning: End-to-End guide for Java 
developers: Data Analysis, Machine Learning, and Neural Networks simplified. 
Packt Publishing, 1413 p, 2017. 
48 
 
 
 
 
SATOH, Akihiro; NAKAMURA, Yutaka; IKENAGA, Takeshi. A flow-based 
detection method for stealthy dictionary attacks against Secure Shell. Journal of 
Information Security and Applications, v. 21, p. 31-41, 2015. 
 
SCIKIT-LEARN, 2018. Disponível em: < http://scikit-learn.org/stable//>. Acesso 
em: 28 jun. 2018. 
 
SHARMA, Rohini; SINGLA, Ravinder K.; GULERIA, Ajay. A New Labeled Flow-
based DNS Dataset for Anomaly Detection: PUF Dataset. Procedia Computer

Mais conteúdos dessa disciplina