Anomalous behavior detection through phase profiling

Detalhes bibliográficos
Ano de defesa: 2020
Autor(a) principal: Moreira, Francis Birck
Orientador(a): Navaux, Philippe Olivier Alexandre
Banca de defesa: Não Informado pela instituição
Tipo de documento: Tese
Tipo de acesso: Acesso aberto
Idioma: eng
Instituição de defesa: Não Informado pela instituição
Programa de Pós-Graduação: Não Informado pela instituição
Departamento: Não Informado pela instituição
País: Não Informado pela instituição
Palavras-chave em Português:
Palavras-chave em Inglês:
Link de acesso: http://hdl.handle.net/10183/212519
Resumo: Um dos principais desafios para os sistemas de segurança é a detecção de ataques de vulnerabilidades em geral, especialmente as que exploram fluxos de controle válidos. A detecção e mitigação de ataques da corrupção de memória já foram exaustivamente pesquisadas e são prevenidas através da desativação da execução de páginas de instruções e randomizando o espaço de endereços de programas vulneráveis. No entanto, métodos de ataques avançados já conseguem trespassar tais técnicas, enquanto outros métodos de ataque exploram vulnerabilidades diferentes e, portanto, não podem ser prevenidas pelos métodos tradicionais. Em geral, a especificidade das abordagens atuais, como a detecção baseada em assinatura, é incapaz de detectar novos tipos de ataques, mesmo que seu comportamento seja anômalo ao que pode ser considerado execução normal do sistema. Neste trabalho, propomos a detecção de anomalias gerais, particionando programas em fases caracterizadas por sua atividade de blocos básicos. A implementação do mecanismo insere verificações para cada fase no binário do programa. Essas verificações determinam se as fases se comportam conforme o esperado. Eles podem ser implementados exclusivamente em software ou com ajuda de hardware, oferecendo uma compensação entre tempo adicional e taxa de detecção e flexibilidade. Ao contrário de trabalhos anteriores, nosso mecanismo pode detectar ataques que usam fluxo de controle válido, como o Heartbleed, e é extensível para detectar outros tipos de anomalias. Experimentos com vários ataques mostram que podemos detectar instâncias atacadas com recursos simples da fase, como o número de blocos básicos distintos na fase.
id URGS_07985fc468752f5c95cb582e5b172ada
oai_identifier_str oai:www.lume.ufrgs.br:10183/212519
network_acronym_str URGS
network_name_str Biblioteca Digital de Teses e Dissertações da UFRGS
repository_id_str
spelling Moreira, Francis BirckNavaux, Philippe Olivier Alexandre2020-07-30T03:38:30Z2020http://hdl.handle.net/10183/212519001116498Um dos principais desafios para os sistemas de segurança é a detecção de ataques de vulnerabilidades em geral, especialmente as que exploram fluxos de controle válidos. A detecção e mitigação de ataques da corrupção de memória já foram exaustivamente pesquisadas e são prevenidas através da desativação da execução de páginas de instruções e randomizando o espaço de endereços de programas vulneráveis. No entanto, métodos de ataques avançados já conseguem trespassar tais técnicas, enquanto outros métodos de ataque exploram vulnerabilidades diferentes e, portanto, não podem ser prevenidas pelos métodos tradicionais. Em geral, a especificidade das abordagens atuais, como a detecção baseada em assinatura, é incapaz de detectar novos tipos de ataques, mesmo que seu comportamento seja anômalo ao que pode ser considerado execução normal do sistema. Neste trabalho, propomos a detecção de anomalias gerais, particionando programas em fases caracterizadas por sua atividade de blocos básicos. A implementação do mecanismo insere verificações para cada fase no binário do programa. Essas verificações determinam se as fases se comportam conforme o esperado. Eles podem ser implementados exclusivamente em software ou com ajuda de hardware, oferecendo uma compensação entre tempo adicional e taxa de detecção e flexibilidade. Ao contrário de trabalhos anteriores, nosso mecanismo pode detectar ataques que usam fluxo de controle válido, como o Heartbleed, e é extensível para detectar outros tipos de anomalias. Experimentos com vários ataques mostram que podemos detectar instâncias atacadas com recursos simples da fase, como o número de blocos básicos distintos na fase.One of the main challenges for security systems is the detection of general vulnerability exploitation, especially valid control flow exploitation. Detection and mitigation of specific and regular exploitation of memory corruption have been thoroughly researched and applied through disabling the execution of instruction pages and randomizing the access space of vulnerable applications. However, advanced exploits already bypass these techniques, while other exploits abuse different vulnerabilities and are thus not mitigated by the current state of the art. In general, the specificity of current approaches, such as signature-based detection, is unable to detect new types of exploits and attacks, even though their behavior is anomalous to what can be considered normal system execution. In this work, we propose the detection of general anomalies by partitioning applications into phases characterized by their basic block activity. The mechanism implementation inserts checks for each phase in the target application binary. These checks determine whether the phases behave as expected. They can be implemented purely in software, or with hardware aid, offering a trade-off between overhead against detection rate and flexibility. In contrast to previous work, our mechanism can detect exploits that use valid application control flow, such as Heartbleed, and is extensible to detect other types of anomalies. Experiments with several exploitations show that we can detect attacked instances with simple phase features, such as the number of distinct basic blocks in the phase.application/pdfengHardwareSistemas de segurançaLinguagem de consulta estruturadaAtaques cibernéticosInterfaces de programaçãoAttack detectionBasic blockAnomalous behavior detection through phase profilingDetecção de comportamento anômalo através da análise dos perfis das fases info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesisUniversidade Federal do Rio Grande do SulInstituto de InformáticaPrograma de Pós-Graduação em ComputaçãoPorto Alegre, BR-RS2020doutoradoinfo:eu-repo/semantics/openAccessreponame:Biblioteca Digital de Teses e Dissertações da UFRGSinstname:Universidade Federal do Rio Grande do Sul (UFRGS)instacron:UFRGSTEXT001116498.pdf.txt001116498.pdf.txtExtracted Texttext/plain283615http://www.lume.ufrgs.br/bitstream/10183/212519/2/001116498.pdf.txtbbf9188a12d97b9cd5ea1388e3aea2eaMD52ORIGINAL001116498.pdfTexto completo (inglês)application/pdf1143399http://www.lume.ufrgs.br/bitstream/10183/212519/1/001116498.pdf5166d79bcfcb903c52204a11ab528eabMD5110183/2125192024-05-23 06:42:26.432731oai:www.lume.ufrgs.br:10183/212519Biblioteca Digital de Teses e Dissertaçõeshttps://lume.ufrgs.br/handle/10183/2PUBhttps://lume.ufrgs.br/oai/requestlume@ufrgs.br||lume@ufrgs.bropendoar:18532024-05-23T09:42:26Biblioteca Digital de Teses e Dissertações da UFRGS - Universidade Federal do Rio Grande do Sul (UFRGS)false
dc.title.pt_BR.fl_str_mv Anomalous behavior detection through phase profiling
dc.title.alternative.pt.fl_str_mv Detecção de comportamento anômalo através da análise dos perfis das fases
title Anomalous behavior detection through phase profiling
spellingShingle Anomalous behavior detection through phase profiling
Moreira, Francis Birck
Hardware
Sistemas de segurança
Linguagem de consulta estruturada
Ataques cibernéticos
Interfaces de programação
Attack detection
Basic block
title_short Anomalous behavior detection through phase profiling
title_full Anomalous behavior detection through phase profiling
title_fullStr Anomalous behavior detection through phase profiling
title_full_unstemmed Anomalous behavior detection through phase profiling
title_sort Anomalous behavior detection through phase profiling
author Moreira, Francis Birck
author_facet Moreira, Francis Birck
author_role author
dc.contributor.author.fl_str_mv Moreira, Francis Birck
dc.contributor.advisor1.fl_str_mv Navaux, Philippe Olivier Alexandre
contributor_str_mv Navaux, Philippe Olivier Alexandre
dc.subject.por.fl_str_mv Hardware
Sistemas de segurança
Linguagem de consulta estruturada
Ataques cibernéticos
Interfaces de programação
topic Hardware
Sistemas de segurança
Linguagem de consulta estruturada
Ataques cibernéticos
Interfaces de programação
Attack detection
Basic block
dc.subject.eng.fl_str_mv Attack detection
Basic block
description Um dos principais desafios para os sistemas de segurança é a detecção de ataques de vulnerabilidades em geral, especialmente as que exploram fluxos de controle válidos. A detecção e mitigação de ataques da corrupção de memória já foram exaustivamente pesquisadas e são prevenidas através da desativação da execução de páginas de instruções e randomizando o espaço de endereços de programas vulneráveis. No entanto, métodos de ataques avançados já conseguem trespassar tais técnicas, enquanto outros métodos de ataque exploram vulnerabilidades diferentes e, portanto, não podem ser prevenidas pelos métodos tradicionais. Em geral, a especificidade das abordagens atuais, como a detecção baseada em assinatura, é incapaz de detectar novos tipos de ataques, mesmo que seu comportamento seja anômalo ao que pode ser considerado execução normal do sistema. Neste trabalho, propomos a detecção de anomalias gerais, particionando programas em fases caracterizadas por sua atividade de blocos básicos. A implementação do mecanismo insere verificações para cada fase no binário do programa. Essas verificações determinam se as fases se comportam conforme o esperado. Eles podem ser implementados exclusivamente em software ou com ajuda de hardware, oferecendo uma compensação entre tempo adicional e taxa de detecção e flexibilidade. Ao contrário de trabalhos anteriores, nosso mecanismo pode detectar ataques que usam fluxo de controle válido, como o Heartbleed, e é extensível para detectar outros tipos de anomalias. Experimentos com vários ataques mostram que podemos detectar instâncias atacadas com recursos simples da fase, como o número de blocos básicos distintos na fase.
publishDate 2020
dc.date.accessioned.fl_str_mv 2020-07-30T03:38:30Z
dc.date.issued.fl_str_mv 2020
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/doctoralThesis
format doctoralThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://hdl.handle.net/10183/212519
dc.identifier.nrb.pt_BR.fl_str_mv 001116498
url http://hdl.handle.net/10183/212519
identifier_str_mv 001116498
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.format.none.fl_str_mv application/pdf
dc.source.none.fl_str_mv reponame:Biblioteca Digital de Teses e Dissertações da UFRGS
instname:Universidade Federal do Rio Grande do Sul (UFRGS)
instacron:UFRGS
instname_str Universidade Federal do Rio Grande do Sul (UFRGS)
instacron_str UFRGS
institution UFRGS
reponame_str Biblioteca Digital de Teses e Dissertações da UFRGS
collection Biblioteca Digital de Teses e Dissertações da UFRGS
bitstream.url.fl_str_mv http://www.lume.ufrgs.br/bitstream/10183/212519/2/001116498.pdf.txt
http://www.lume.ufrgs.br/bitstream/10183/212519/1/001116498.pdf
bitstream.checksum.fl_str_mv bbf9188a12d97b9cd5ea1388e3aea2ea
5166d79bcfcb903c52204a11ab528eab
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
repository.name.fl_str_mv Biblioteca Digital de Teses e Dissertações da UFRGS - Universidade Federal do Rio Grande do Sul (UFRGS)
repository.mail.fl_str_mv lume@ufrgs.br||lume@ufrgs.br
_version_ 1831316098011627520