“Ferramenta de Análise de Código para Detecção de Vulnerabilidades”

From Navigators

Revision as of 09:55, 3 August 2014 by Nuno (Talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Emanuel Teixeira (advised by Nuno Ferreira Neves)

Master’s thesis, Faculty of Sciences, University of Lisbon, Lisbon, Portugal, Sept. 2007

Abstract: A análise de código é um mecanismo de apoio à detecção de anomalias ou erros de concretização existentes num ambiente de programação. Diversos factores podem levar ao aparecimento destes erros, destacando-se entre eles a programação inadequada, o conhecimento limitado das interfaces e outros factores inerentemente humanos, como o esquecimento. As ferramentas de análise podem então ter um impacto positivo no ciclo de desenvolvimento de um produto, permitindo poupar tempo, dinheiro e contribuindo para que a aplicação seja construída sem vulnerabilidades de segurança. A análise de código pode ser efectuada em três modos: estática, dinâmica ou manual; cada um destes modos têm as suas vantagens e desvantagens, sendo os mais usados os estáticos e os dinâmicos. Nesta tese aborda-se o problema de detecção de vulnerabilidades de segurança através de ferramentas de análise estática, focadas para a linguagem de programação C. A tese propõe um teste que permite avaliar e comparar o desempenho de diversas ferramentas de análise estática, nomeadamente em relação ao número de falsos alarmes por elas despoletadas. A tese descreve também uma nova ferramenta designada por Mute, que tem como objectivo uma melhor eficácia e precisão na detecção de um conjunto alargado de vulnerabilidades. Genericamente, o Mute utiliza um mecanismo de agregação de resultados produzidos por várias ferramentas existentes, para decidir da existência ou não de uma vulnerabilidade. A tese inclui ainda uma avaliação comparativa do Mute e de diversas outras ferramentas.


Export citation

BibTeX

Project(s):

Research line(s): Fault and Intrusion Tolerance in Open Distributed Systems (FIT)

Personal tools
Navigators toolbox