Buffer overflow: teoria e exploração

Abstract

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

Similar works

Full text

thumbnail-image

RCAAP - Repositório Científico de Acesso Aberto de Portugal

redirect
Last time updated on 10/08/2016

Having an issue?

Is data on this page outdated, violates copyrights or anything else? Report the problem now and we will take corresponding actions after reviewing your request.