Use este identificador para citar ou linkar para este item:
http://repositorio.ufla.br/jspui/handle/1/31316
Título: | Buffer overflow: teoria e exploração |
Autor : | Mateus, Hudson Flávio Vieira |
Primeiro orientador: | Uchôa, Joaquim Quinteiro |
Primeiro membro da banca: | Heimfarth, Tales Correia, Luiz Henrique Andrade |
Palavras-chave: | Buffer overflow Sistemas operacionais Arquitetura de computadores Segurança Programação |
Data da defesa: | 19-Mai-2011 |
Data da publicação: | 6-Fev-2015 |
Referência: | MATEUS, H. F. V. Buffer overflow: teoria e exploração. 2011. 83 p. Monografia (Graduação em Ciência da Computação) – Universidade Federal de Lavras, Lavras, 2011. |
Resumo: | Este trabalho é um estudo sobre buffer overflow, no qual são apresentadas as arquiteturas de software e de hardware que permeiam o problema. É fornecida uma explicação sobre as arquiteturas de processadores Intel 64 e IA-32, bem como o sistema operacional Linux. Estes ambientes foram utilizados para o desenvolvimento e exploração do tema. O problema é detalhado e alguns estudos de casos são mostrados, exemplificando sua exploração. Basicamente consiste no transbordamento durante a escrita em regiões de memória ou arrays. Há o interesse em mostrar o quanto o descaso para com a segurança computacional durante o desenvolvimento de software pode ser perigoso para um ambiente computacional. Comenta-se sobre algumas ferramentas existentes para a prevenção do buffer overflow, que podem ser usadas no sistema operacional Linux. As ferramentas são aplicadas em contextos diferentes e possuem um certo nível de segurança; as ferramentas abrangidas são: Libsafe, StackGuard, StackShield, ProPolice e PaX. O grande problema do buffer overflow, de um modo geral, são enganos cometidos durante a fase de desenvolvimento. Nos experimentos, foi possível invadir um sistema através de ataques em arquiteturas 32 bits através dos seguintes modos de sobrescrita: endereço de retorno e endereço base do frame da função que faz a chamada, e ponteiro de função. Já em arquiteturas 64 bits, não foi possível explorar a falha. |
Abstract: | This work is a study about buffer overflow, presenting the architectures of the software and hardware involved. It explains the architectures of the Intel 64 and IA-32 processors, as well as the Linux operating system. These environments were used for the development and exploration of buffer overflow. The problem is detailed and some studies cases shown, exemplifying your exploitation. Basically, buffer overflow occurs during writing in memory regions or arrays. There is interest in show how negligence with computing security during software development can be dangerous for computing environments. The study comments about some of the existing tools to prevent buffer overflow on the Linux operating system. These tools are applied to different contexts and have some level of security; the tools examined are: Libsafe, StackGuard, StackShield, ProPolice and PaX. The larger problem of buffer overflow is mistakes made during development phase. In experiments, it was possible to invade a 32 bits system through attacks in the following overwriting modes: return address and base pointer frame of calling function, and function pointer. On the other hand, it was not possible to exploit the fault in a 64 bits system. |
URI: | http://repositorio.ufla.br/jspui/handle/1/31316 |
Idioma: | pt_BR |
Aparece nas coleções: | PROGRAD - Ciência da Computação (Trabalhos de Conclusão de Curso) |
Arquivos associados a este item:
Arquivo | Descrição | Tamanho | Formato | |
---|---|---|---|---|
TCC_Buffer_overflow_teoria_e_exploracao.pdf | 732,91 kB | Adobe PDF | Visualizar/Abrir |
Os itens no repositório estão protegidos por copyright, com todos os direitos reservados, salvo quando é indicado o contrário.