Análise esparsa de fluxo de informação

Detalhes bibliográficos
Ano de defesa: 2016
Autor(a) principal: Bruno Rodrigues Silva
Orientador(a): Não Informado pela instituição
Banca de defesa: Não Informado pela instituição
Tipo de documento: Tese
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Universidade Federal de Minas Gerais
UFMG
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:
Link de acesso: http://hdl.handle.net/1843/ESBF-ACXKX9
Resumo: Análises de fluxo de informação usam o conceito de Grafo de Dependência do Programa (GDP) como uma estrutura de dados. Ele utiliza a noção de dependência de controle introduzida por Ferrante et al. p/ representar fluxos implícitos. A limitação dessa abordagem é que ela pode criar O(|I|x|E|) arestas de fluxo implícito no GDP, onde I são as instruções, e E são as arestas do seu respectivo grafo de fluxo de controle. Esta tese mostra que é possível construir análises de fluxo usando uma noção diferente de dependência implícita, que gera um número de arestas linear no número de definições + usos de variáveis. A teoria aqui desenvolvida foi usada p/ construir FlowTracker, uma ferramenta que detecta vulnerabilidades de software relacionadas ao fluxo de informação, tais como: vazamento de endereço, estouro de arranjo e canais laterais. FlowTracker é capaz de manipular mais de 1 milhão de instruções em menos que 200 seg., e cria 24% menos arestas de fluxo implícito que a técnica de Ferrante.