Utilize este identificador para referenciar este registo: http://hdl.handle.net/10451/13995
Título: Ferramenta de análise de código para detecção de vulnerabilidades
Autor: Teixeira, Emanuel Pedro Loureiro
Orientador: Neves, Nuno Fuentecilla Maia Ferreira, 1969-
Palavras-chave: Análise estática de código fonte
Detecção de vulnerabilidades
Teste padronizado
Classes de vulnerabilidades
Teses de mestrado - 2007
Data de Defesa: 2007
Relatório da Série N.º: di-fcul-tr-07-29
Resumo: 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.
Code analysis is a tool aiding the detection of anomalies created during the development of software by programmers. These errors can appear due to various factors, namely bad programing skills, limited knowledge of the interfaces, and human errors. This important tool brings in a new alignment in the development cycle, the main goals being to save time and expenditure, since it improves the final quality, by allowing the product to be built with less security vulnerabilities, ideally without security vulnerabilities. Code analysis can be worked out in three ways: static, dynamic, or manual. Each of those choices has advantages and disadvantages; the two most widely used are static and dynamic analysis. In this dissertation we focus on vulnerabilities detection using static code analyzers, and we choose to analyze C code. The thesis approach with a benchmark that allows to evaluate and compare the performance of some static analyzers, in concern to the number of false positives. The tool we shall develop will give a new and better perspective of their usefulness, with recall and precision. Our goal, in developing this new tool, is to decrease the number of false alerts, which is the main problem of static code analyzers used so far; this tool, called Mute “Multiple Tools” uses several techniques to archive this goal.
Descrição: Tese de mestrado em Engenharia Informática, apresentada à Universidade de Lisboa, através da Faculdade de Ciências, 2007
URI: http://hdl.handle.net/10451/13995
http://repositorio.ul.pt/handle/10455/3090
Aparece nas colecções:FC-DI - Master Thesis (dissertation)

Ficheiros deste registo:
Ficheiro Descrição TamanhoFormato 
07-29.pdf1,63 MBAdobe PDFVer/Abrir    Acesso Restrito. Solicitar cópia ao autor!


FacebookTwitterDeliciousLinkedInDiggGoogle BookmarksMySpace
Formato BibTex MendeleyEndnote Degois 

Todos os registos no repositório estão protegidos por leis de copyright, com todos os direitos reservados.