Buffer Overflow exploração passo a passo

Um estouro de buffer ou buffer overflow é uma anomalia em que um programa ao gravar dados excede o limite de buffer e sobrescreve a memória. Isto caracteriza um caso especial de violação de segurança de memória. Isto quase sempre resulta em corrupção de dados adjacentes na pilha, e no caso de um transbordamento disparado por engano, quase sempre fará com que o programa deixe de funcionar ou funcione incorretamente caracterizando um bug de programação conhecida como buffer overflow.

Estes estouros de memória podem ser desencadeados por entradas que são projetadas para executar um determinado código, ou alterar o funcionamento de um programa resultando em comportamentos estranhos, como erros de memória de acesso, resultados incorretos, acidentes e quebra absoluta do sistema. Desta forma, este método caracteriza a base de vulnerabilidades de muitos software que pode ser minuciosamente explorada. Buffer Overflow é a máquina motora, mecanismo “coração” dos Exploits e   Metasploit.

A linguagem de programação associada ao estouro de buffer e a C e C ++ que não fornece proteção embutida contra o acesso ou substituição de dados em quaquer parte da memória. O método clássico para explorar um buffer overflow baseado em pilha é substituir o endereço de retorno da função com um ponteiro para o atacante controlar os dados, normalmente na própria pilha. Portanto, se o programa afetado está sendo executado com privilégios especiais, ou aceita dados de hosts de rede não confiável, como um servidor de DNS, ou servidor de Web, o bug caracterizará uma vulnerabilidade de segurança potencial.

Resumindo, se o espaço da pilha é preenchido com dados fornecidos por uma fonte não confiável, o invasor pode corromper a pilha, de tal forma, que pode injetar qualquer código executável para o programa de execução tomando o controle de processo, pela qual possibilita manipular os dados, conforme a sua real intenção. Este processo é um dos métodos mais antigo e eficaz utilizado por crackers, afim de ganhar acesso não autorizado, principalmente como root em um computador.

Aprofundar neste assunto é de suma importância para todos os pentest de Seguraça da Informação, conhecer profundamente buffer overflow proporcionará conhecimento ímpar nos modos operantes dos Vírus, trojans, Worms e tipos de ataques personalizados.

Finalizando, encontrei um vídeo completo sobre  exploração de overflow passo a passo, embora esteja em Inglês vale a pena assisti-lo, devido a explicação profunda sobre “Buffer Overflow”.

Um grande abraço e até a próxima !!!

Assista o vídeo: Buffer Overflow exploração passo a passo

By: Gerson Raymond

Técnico em Contabilidade, Técnico em Eletrônica, Técnico em Telecomunicações, Bacharel em Ciência da Computação, Administrador de Redes Linux (CentOS, XEN, Zabbix, Asterisk/Elastix) e Pós-Graduando em Segurança em Tecnologia da Informação – UNIVERSIDADE MACKENZIE – SP.

Homepage: http://www.grsecurity.com.br