Identificação de Malware Metamórfico baseado em Grafos de Dependência

Detalhes bibliográficos
Autor(a) principal: Martins, Gilbert Breves
Data de Publicação: 2016
Outros Autores: http://lattes.cnpq.br/4932200790121123
Tipo de documento: Tese
Idioma: por
Título da fonte: Biblioteca Digital de Teses e Dissertações da UFAM
Texto Completo: http://tede.ufam.edu.br/handle/tede/5641
Resumo: Comparar um programa com um conjunto de partes de código, conhecido como assinaturas, previamente armazenadas e extraídas de programas maliciosos previamente identificados, é a forma tradicional de se identificar se este programa também se trata ou está contaminado por um código malicioso. Para tornar este processo de identificação ineficaz, os desenvolvedores de programas maliciosos podem inserir em suas criações a capacidade de alterar a forma com o seu código se apresenta, mudando o corpo do código à medida que o processo de contaminação ocorre e invalidando o processo de identificação tradicional. Uma das maneiras de lidar com esta capacidade de mutação, também conhecido como metamorfismo de código, é baseada na geração de grafos que modelem as relações de dependência existentes entre os elementos do código, uma vez que estas relações se persistem, mesmo diante da mutação do código. Estes grafos são também conhecidos como grafos de dependência. Similar ao tradicional modelo de assinaturas, a identificação dos códigos maliciosos baseadas em grafos de dependência, ocorre quando o grafo gerado a partir do programa sob investigação e comparado com um conjunto de grafos previamente armazenados em uma base de referência, construída a partir da extração dos grafos de dependência de instâncias de códigos maliciosos previamente identificados. Como o processo de comparação entre grafos pertence à classe de problemas NP-Difícil, é necessário encontrar alternativas viáveis para tratar este problema, tornando a comparação entre grafos uma alternativa viável para a identificação de códigos maliciosos metamórficos. Usando grafos de dependência extraídos a partir de códigos executáveis, esta tese apresenta uma abordagem para reduzir o tamanho dos grafos de dependência usados no processo de comparação, pela introdução da diferenciação entre os vértices, com base nas relações de dependência características de cada deles possui. Combinada com a inclusão de arestas virtuais, esta metodologia possibilita a construção de um clique virtual que é utilizado para identificar e descartar as porções menos relevantes do grafo de dependência original, diminuindo o tamanho do grafo que será inserido na base de referência. Os resultados apresentados nesta tese também demonstram que esta redução aprimora o processo de identificação, diminuindo o coeficiente de variação dos resultados e aumentando a taxa de identificações de códigos maliciosos metamórficos.
id UFAM_82fc5e87810a503be978ff4fbfefe35d
oai_identifier_str oai:https://tede.ufam.edu.br/handle/:tede/5641
network_acronym_str UFAM
network_name_str Biblioteca Digital de Teses e Dissertações da UFAM
repository_id_str 6592
spelling Identificação de Malware Metamórfico baseado em Grafos de DependênciaIdentificação de MalwareMetamorfismo de CódigoGrafos de DependênciaCIÊNCIAS EXATAS E DA TERRA: CIÊNCIA DA COMPUTAÇÃOComparar um programa com um conjunto de partes de código, conhecido como assinaturas, previamente armazenadas e extraídas de programas maliciosos previamente identificados, é a forma tradicional de se identificar se este programa também se trata ou está contaminado por um código malicioso. Para tornar este processo de identificação ineficaz, os desenvolvedores de programas maliciosos podem inserir em suas criações a capacidade de alterar a forma com o seu código se apresenta, mudando o corpo do código à medida que o processo de contaminação ocorre e invalidando o processo de identificação tradicional. Uma das maneiras de lidar com esta capacidade de mutação, também conhecido como metamorfismo de código, é baseada na geração de grafos que modelem as relações de dependência existentes entre os elementos do código, uma vez que estas relações se persistem, mesmo diante da mutação do código. Estes grafos são também conhecidos como grafos de dependência. Similar ao tradicional modelo de assinaturas, a identificação dos códigos maliciosos baseadas em grafos de dependência, ocorre quando o grafo gerado a partir do programa sob investigação e comparado com um conjunto de grafos previamente armazenados em uma base de referência, construída a partir da extração dos grafos de dependência de instâncias de códigos maliciosos previamente identificados. Como o processo de comparação entre grafos pertence à classe de problemas NP-Difícil, é necessário encontrar alternativas viáveis para tratar este problema, tornando a comparação entre grafos uma alternativa viável para a identificação de códigos maliciosos metamórficos. Usando grafos de dependência extraídos a partir de códigos executáveis, esta tese apresenta uma abordagem para reduzir o tamanho dos grafos de dependência usados no processo de comparação, pela introdução da diferenciação entre os vértices, com base nas relações de dependência características de cada deles possui. Combinada com a inclusão de arestas virtuais, esta metodologia possibilita a construção de um clique virtual que é utilizado para identificar e descartar as porções menos relevantes do grafo de dependência original, diminuindo o tamanho do grafo que será inserido na base de referência. Os resultados apresentados nesta tese também demonstram que esta redução aprimora o processo de identificação, diminuindo o coeficiente de variação dos resultados e aumentando a taxa de identificações de códigos maliciosos metamórficos.The traditional way to identify malicious programs is to compare the code body with a set of previous stored code patterns, also known as signatures, extracted from already identified malware code. To nullify this identification process, the malware developers can insert in their creations the ability to modify the malware code when the next contamination process takes place, using obfuscation techniques. One way to deal with this metamorphic malware behavior is the use of dependency graphs, generated by surveying dependency relationships among code elements, creating a model that is resilient to code mutations. Analog to the signature model, a matching procedure that compares these graphs with a reference graph database is used to identify a malware code. Since graph matching is a NP-hard problem, it is necessary to find ways to optimize this process, so this identification technique can be applied. Using dependency graphs extracted from binary code, we present an approach to reduce the size of the reference dependency graphs stored on the graph database, by introducing a node differentiation based on its features. This way, in conjunction with the insertion of virtual paths, it is possible to build a virtual clique used to identify and dispose of less relevant elements of the original graph. The use of dependency graph reduction and the node differentiation also produces more accurate results for the matching process. To validate these statements, we present a methodology for generating these graphs from binary programs and the results achieved with the use of all the proposed features for the identification of some metamorphic malware samples.Universidade Federal do AmazonasInstituto de ComputaçãoBrasilUFAMPrograma de Pós-graduação em InformáticaSouto, Eduardo James Pereirahttp://lattes.cnpq.br/3875301617975895Martins, Gilbert Breveshttp://lattes.cnpq.br/49322007901211232017-04-10T14:15:03Z2016-01-16info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesisapplication/pdfMARTINS, Gilbert Breves. Identificação de Malware Metamórfico baseado em Grafos de Dependência. 2016. 88 f. Tese (Doutorado em Informática) - Universidade Federal do Amazonas, Manaus, 2016.http://tede.ufam.edu.br/handle/tede/5641porhttp://creativecommons.org/licenses/by-nc-nd/4.0/info:eu-repo/semantics/openAccessreponame:Biblioteca Digital de Teses e Dissertações da UFAMinstname:Universidade Federal do Amazonas (UFAM)instacron:UFAM2017-04-11T05:03:41Zoai:https://tede.ufam.edu.br/handle/:tede/5641Biblioteca Digital de Teses e Dissertaçõeshttp://200.129.163.131:8080/PUBhttp://200.129.163.131:8080/oai/requestddbc@ufam.edu.br||ddbc@ufam.edu.bropendoar:65922017-04-11T05:03:41Biblioteca Digital de Teses e Dissertações da UFAM - Universidade Federal do Amazonas (UFAM)false
dc.title.none.fl_str_mv Identificação de Malware Metamórfico baseado em Grafos de Dependência
title Identificação de Malware Metamórfico baseado em Grafos de Dependência
spellingShingle Identificação de Malware Metamórfico baseado em Grafos de Dependência
Martins, Gilbert Breves
Identificação de Malware
Metamorfismo de Código
Grafos de Dependência
CIÊNCIAS EXATAS E DA TERRA: CIÊNCIA DA COMPUTAÇÃO
title_short Identificação de Malware Metamórfico baseado em Grafos de Dependência
title_full Identificação de Malware Metamórfico baseado em Grafos de Dependência
title_fullStr Identificação de Malware Metamórfico baseado em Grafos de Dependência
title_full_unstemmed Identificação de Malware Metamórfico baseado em Grafos de Dependência
title_sort Identificação de Malware Metamórfico baseado em Grafos de Dependência
author Martins, Gilbert Breves
author_facet Martins, Gilbert Breves
http://lattes.cnpq.br/4932200790121123
author_role author
author2 http://lattes.cnpq.br/4932200790121123
author2_role author
dc.contributor.none.fl_str_mv Souto, Eduardo James Pereira
http://lattes.cnpq.br/3875301617975895
dc.contributor.author.fl_str_mv Martins, Gilbert Breves
http://lattes.cnpq.br/4932200790121123
dc.subject.por.fl_str_mv Identificação de Malware
Metamorfismo de Código
Grafos de Dependência
CIÊNCIAS EXATAS E DA TERRA: CIÊNCIA DA COMPUTAÇÃO
topic Identificação de Malware
Metamorfismo de Código
Grafos de Dependência
CIÊNCIAS EXATAS E DA TERRA: CIÊNCIA DA COMPUTAÇÃO
description Comparar um programa com um conjunto de partes de código, conhecido como assinaturas, previamente armazenadas e extraídas de programas maliciosos previamente identificados, é a forma tradicional de se identificar se este programa também se trata ou está contaminado por um código malicioso. Para tornar este processo de identificação ineficaz, os desenvolvedores de programas maliciosos podem inserir em suas criações a capacidade de alterar a forma com o seu código se apresenta, mudando o corpo do código à medida que o processo de contaminação ocorre e invalidando o processo de identificação tradicional. Uma das maneiras de lidar com esta capacidade de mutação, também conhecido como metamorfismo de código, é baseada na geração de grafos que modelem as relações de dependência existentes entre os elementos do código, uma vez que estas relações se persistem, mesmo diante da mutação do código. Estes grafos são também conhecidos como grafos de dependência. Similar ao tradicional modelo de assinaturas, a identificação dos códigos maliciosos baseadas em grafos de dependência, ocorre quando o grafo gerado a partir do programa sob investigação e comparado com um conjunto de grafos previamente armazenados em uma base de referência, construída a partir da extração dos grafos de dependência de instâncias de códigos maliciosos previamente identificados. Como o processo de comparação entre grafos pertence à classe de problemas NP-Difícil, é necessário encontrar alternativas viáveis para tratar este problema, tornando a comparação entre grafos uma alternativa viável para a identificação de códigos maliciosos metamórficos. Usando grafos de dependência extraídos a partir de códigos executáveis, esta tese apresenta uma abordagem para reduzir o tamanho dos grafos de dependência usados no processo de comparação, pela introdução da diferenciação entre os vértices, com base nas relações de dependência características de cada deles possui. Combinada com a inclusão de arestas virtuais, esta metodologia possibilita a construção de um clique virtual que é utilizado para identificar e descartar as porções menos relevantes do grafo de dependência original, diminuindo o tamanho do grafo que será inserido na base de referência. Os resultados apresentados nesta tese também demonstram que esta redução aprimora o processo de identificação, diminuindo o coeficiente de variação dos resultados e aumentando a taxa de identificações de códigos maliciosos metamórficos.
publishDate 2016
dc.date.none.fl_str_mv 2016-01-16
2017-04-10T14:15:03Z
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 MARTINS, Gilbert Breves. Identificação de Malware Metamórfico baseado em Grafos de Dependência. 2016. 88 f. Tese (Doutorado em Informática) - Universidade Federal do Amazonas, Manaus, 2016.
http://tede.ufam.edu.br/handle/tede/5641
identifier_str_mv MARTINS, Gilbert Breves. Identificação de Malware Metamórfico baseado em Grafos de Dependência. 2016. 88 f. Tese (Doutorado em Informática) - Universidade Federal do Amazonas, Manaus, 2016.
url http://tede.ufam.edu.br/handle/tede/5641
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv http://creativecommons.org/licenses/by-nc-nd/4.0/
info:eu-repo/semantics/openAccess
rights_invalid_str_mv http://creativecommons.org/licenses/by-nc-nd/4.0/
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Universidade Federal do Amazonas
Instituto de Computação
Brasil
UFAM
Programa de Pós-graduação em Informática
publisher.none.fl_str_mv Universidade Federal do Amazonas
Instituto de Computação
Brasil
UFAM
Programa de Pós-graduação em Informática
dc.source.none.fl_str_mv reponame:Biblioteca Digital de Teses e Dissertações da UFAM
instname:Universidade Federal do Amazonas (UFAM)
instacron:UFAM
instname_str Universidade Federal do Amazonas (UFAM)
instacron_str UFAM
institution UFAM
reponame_str Biblioteca Digital de Teses e Dissertações da UFAM
collection Biblioteca Digital de Teses e Dissertações da UFAM
repository.name.fl_str_mv Biblioteca Digital de Teses e Dissertações da UFAM - Universidade Federal do Amazonas (UFAM)
repository.mail.fl_str_mv ddbc@ufam.edu.br||ddbc@ufam.edu.br
_version_ 1797040384468058112