Desenvolvimento de um ambiente para análise de códigos-fonte com ênfase em segurança

Este trabalho apresenta uma proposta de ambiente para análise de códigos-fonte com enfase em segurança, tendo como objetivo primordial auxiliar desenvolvedores a encontrar reais vulnerabilidades presentes em seus próprios softwares. Dentre elas, as que podem ser encontradas com maior ocorrencia sao...

Full description

Bibliographic Details
Main Author: Luiz Otávio Duarte
Other Authors: Antonio Montes Filho
Language:Portuguese
Published: Instituto Nacional de Pesquisas Espaciais 2007
Online Access:http://urlib.net/sid.inpe.br/mtc-m17@80/2007/04.23.11.26
Description
Summary:Este trabalho apresenta uma proposta de ambiente para análise de códigos-fonte com enfase em segurança, tendo como objetivo primordial auxiliar desenvolvedores a encontrar reais vulnerabilidades presentes em seus próprios softwares. Dentre elas, as que podem ser encontradas com maior ocorrencia sao as que permitem ataques de extravasamento de buffer ou buffer overflow. São muitas as formas de explorar estas vulnerabilidades dentre elas destacam-se stack smash, arc injection e pointer subterfuge. Para endereçar estas vulnerabilidades existem algumas abordagens que tentam eliminá-las ou minimizar o impacto gerado quando estas sao exploradas. As abordagens sao divididas em abordagens dependentes do compilador, dependentes do sistema e dependentes da aplicação. O ambiente proposto, através de uma abordagem preventiva e dependente da aplicação, analisa o código-fonte do programa a fim de encontrar instruções que possam ocasionar um extravasamento de buffer. Para isso, o ambiente procura suprir limitações encontradas em ferramentas similares. Serao mostrados através dos testes realizados as vantagens na utilização de análise sintática para melhor identificação de problemas e como um protótipo viável do ambiente pode ser implementado. === This work presents a proposal of a source code analysis aid tool focused on security. Its main goal is to help developers to find real vulnerabilities in their own software. Among the vulnerabilities that can be found in a software, buffer overflows have greater occurrence. There are several ways to exploit this vulnerability and some of them are stack smash, arc injection, pointer subterfuge. To address these vulnerabilities there are some approaches that try to mitigate these vulnerabilities or to minimize the impact generated when they are exploited. The approaches are divided into compiler-dependent, system-dependent and software-dependent. The proposed tool analyzes the source code of a software to find buffer overflows vulnerabilities through a preventive and software-dependent approach. To achieve it, the tool tries to supply limitations found in similar tools. The advantages of sintatic analysis to improve the buffer overflow identification and the development of a viable prototype of this tool will be shown in this work.