Detecting Intrusions in Microservices Architectures

Detalhes bibliográficos
Autor(a) principal: Gonçalves, Paulo Alexandre da Silva
Data de Publicação: 2022
Tipo de documento: Dissertação
Idioma: eng
Título da fonte: Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
Texto Completo: http://hdl.handle.net/10316/102991
Resumo: Dissertação de Mestrado em Engenharia Informática apresentada à Faculdade de Ciências e Tecnologia
id RCAP_ab620ef450ba247c6ea7868aca0455d7
oai_identifier_str oai:estudogeral.uc.pt:10316/102991
network_acronym_str RCAP
network_name_str Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
repository_id_str 7160
spelling Detecting Intrusions in Microservices ArchitecturesDeteção de Intrusões em Arquiteturas de MicrosserviçosMicrosserviçosdeteção de intrusãoavaliação de vulnerabilidadesinjeção de ataquecontainersMicroservicesintrusion detectionvulnerability assessmentattack injectioncontainersDissertação de Mestrado em Engenharia Informática apresentada à Faculdade de Ciências e TecnologiaArquiteturas de microsserviços têm crescido em popularidade nos últimos anos, favorecendo serviços simples fracamente acoplados e com objetivos bem definidos. Utilizar microsserviços facilita o desenvolvimento e manutenção, reduzindo custos gerais de desenvolvimento. Para tirar proveito destas vantagens, cada serviço é colocado em "containers'' dado que são leves e a criação e destruição é barata e eficiente. Tal potencia um comportamento elástico, maximizando o uso dos recursos, e permitindo uma adaptação com base na demanda. No entanto, a transição para estes ambientes cria alguns desafios. Quando os sistemas se dividem em múltiplos pequenos componentes, o número de comunicações aumenta, agravando a probabilidade de ataques. Durante o desenvolvimento, técnicas de avaliação de vulnerabilidades são usadas para detetar e corrigir fraquezas no software. Mesmo assim, o software continua a ter vulnerabilidades desconhecidas que atacantes podem aproveitar, pelo que é indispensável utilizar medidas de deteção. Deteção de intrusão com base em anomalias pode ser uma técnica eficaz, mas tem de conseguir lidar com elevadas quantidades de informação e adaptar-se a um número dinâmico de instâncias de serviços. Portanto, as soluções têm de ser leves e escaláveis. Trabalho já realizado demonstra que técnicas de processamento de informação são úteis para lidar com escalabilidade. Uma abordagem semelhante ser útil para detetar ataques a vários serviços. Técnicas podem também ser usadas para reduzir o tamanho dos "datasets" sem comprometer a eficácia da solução.Neste trabalho propomos uma abordagem para deteção de intrusão "host based" com foco nos microserviços, e quatro técnicas baseadas numa abordagem de fusão de classificadores. A abordagem tem o objetivo de facilitar a deteção de ataques a diferentes microserviços. Também analizamos a remoção de repetições, como método para reduzir o tamanho dos datasets sem afetar significativamente os classificadores. As técnicas propostas são avaliadas usando duas testbeds representativas, Sockshop e TeaStore, que utilizam um leque variado de tecnologias e serviços, permitindo 10 cenários de ataque, com base em 12 vulnerabilidades. Nem todos os ataques têm sucesso, e alguns só conseguem informação; permitindo assim avaliar a eficácia das técnicas em tentativas de intrusão.Os resultados mostram que só uma técnica é capaz de detetar ataques sem um número elevado de falsos positivos, conseguindo uma F-Measure de até 0.673, nunca inferior a 0.521 e uma Precision até 0.782. Além disso, o algoritmo de remoção de repetições de system calls conseguiu reduzir o tamanho dos datasets até 55% do tamanho original. Ambos têm espaço para melhoria, no entanto, os resultados são satisfatórios, havendo espaço para pesquisa.Microservice architectures have been on the rise in recent years, as they favor loosely coupled services with specialized goals. The use of microservices eases development and maintainability, reducing overall development costs. To take full advantage, each service is deployed in a container, as they are lightweight and creation and destruction is cheap and efficient. This potentiates an elastic behaviour that allows for on-demand adaptation. However, the transition from monoliths to microservices presents security challenges. When systems are split into multiple small components, the number of communication links grows extensively, increasing the possibility of attacks. During development, automated vulnerability assessment tools are used to find and correct software weaknesses. Despite this process, software continues to have unknown vulnerabilities that attackers can exploit, therefore it is indispensable to apply other measures. Anomaly-based intrusion detection could be an effective approach, but it needs to deal with large amounts of data and services, and adapt to the dynamic number of service instances. Therefore, the available solutions must become lightweight and scalable. Past work has demonstrated the usefulness of data processing techniques to deal with scalability. A similar approach can be useful for detecting attacks targeting multiple services. Techniques can also be used to reduce the amount of data processed without compromising the effectiveness of the solution.In this work, we propose an approach for host based intrusion detection aimed at microservices, and four different techniques based on a classifier fusion procedure. The approach as the goal of facilitating the detection of attacks targeting different microservices. We also analyse the removal of loops as a method to reduce the data processed without affecting the classifiers. The techniques proposed are evaluated using two representative microservice testbeds, Sockshop and TeaStore, as they provide a wide range of technologies and services, allowing 10 different attack scenarios based on 12 different exploits. Not all attacks were successful, and some were only done to gather information; therefore, evaluating the effectiveness of techniques in intrusion attempts.The results show that only one technique was capable of detecting attacks without a high number of false positives, achieving an F-Measure of up to 0.673, never lower than 0.521, and Precision as high as 0.782. Furthermore, the loop removal algorithm managed to reduce the total size of the training datasets to 55% of the original size. Both still have room for improvement; however, the results are still satisfying and open new research paths.Outro - This work is partially supported by the project AIDA: Adaptive, Intelligent and Distributed Assurance Platform FCT (CMU-PT) (POCI-01-0247-FEDER-045907), co-funded by the Portuguese Foundation for Science and Technology (FCT) and by the Fundo Europeu de Desenvolvimento Regional (FEDER) through Portugal 2020 - Programa Operacional Competitividade e Internacionalização (POCI).2022-09-23info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesishttp://hdl.handle.net/10316/102991http://hdl.handle.net/10316/102991TID:203077989engGonçalves, Paulo Alexandre da Silvainfo:eu-repo/semantics/openAccessreponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãoinstacron:RCAAP2022-10-19T20:36:11Zoai:estudogeral.uc.pt:10316/102991Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-19T21:19:52.449537Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãofalse
dc.title.none.fl_str_mv Detecting Intrusions in Microservices Architectures
Deteção de Intrusões em Arquiteturas de Microsserviços
title Detecting Intrusions in Microservices Architectures
spellingShingle Detecting Intrusions in Microservices Architectures
Gonçalves, Paulo Alexandre da Silva
Microsserviços
deteção de intrusão
avaliação de vulnerabilidades
injeção de ataque
containers
Microservices
intrusion detection
vulnerability assessment
attack injection
containers
title_short Detecting Intrusions in Microservices Architectures
title_full Detecting Intrusions in Microservices Architectures
title_fullStr Detecting Intrusions in Microservices Architectures
title_full_unstemmed Detecting Intrusions in Microservices Architectures
title_sort Detecting Intrusions in Microservices Architectures
author Gonçalves, Paulo Alexandre da Silva
author_facet Gonçalves, Paulo Alexandre da Silva
author_role author
dc.contributor.author.fl_str_mv Gonçalves, Paulo Alexandre da Silva
dc.subject.por.fl_str_mv Microsserviços
deteção de intrusão
avaliação de vulnerabilidades
injeção de ataque
containers
Microservices
intrusion detection
vulnerability assessment
attack injection
containers
topic Microsserviços
deteção de intrusão
avaliação de vulnerabilidades
injeção de ataque
containers
Microservices
intrusion detection
vulnerability assessment
attack injection
containers
description Dissertação de Mestrado em Engenharia Informática apresentada à Faculdade de Ciências e Tecnologia
publishDate 2022
dc.date.none.fl_str_mv 2022-09-23
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://hdl.handle.net/10316/102991
http://hdl.handle.net/10316/102991
TID:203077989
url http://hdl.handle.net/10316/102991
identifier_str_mv TID:203077989
dc.language.iso.fl_str_mv eng
language eng
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.source.none.fl_str_mv reponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
instacron:RCAAP
instname_str Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
instacron_str RCAAP
institution RCAAP
reponame_str Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
collection Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
repository.name.fl_str_mv Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
repository.mail.fl_str_mv
_version_ 1799134092303794176