O documento discute buffer overflows e técnicas para preveni-los, como hardware e software que marcam áreas de memória como não executáveis e randomização do layout de espaço de endereço. Exemplos demonstram como buffer overflows podem sobrescrever endereços de retorno ou variáveis.
1. Conjunto de Instruções
em Buffer OverFlow
Pedro Filho Leandro Almeida
Universidade Federal da Paraíba
Programa de Pós-graduação em Informática
Arquitetura de Computadores
6. Buffer OverFlow
“Ocorre quando uma quantidade
de bytes é copiado para uma área
de memória que não comporta o
mesmo.
Desta forma, os dados excedentes
podem sobrescrever registradores
ou outras variáveis.” [Hugo Reinaldo]
17. Referências
[1] Aleph1 - Smashing The Stack For Fun And Profit. Acessado em
22/11/2011. Disponível em:
http://www.phrack.org/issues.html?id=14&issue=49
[2] ARANHA, Diego. Tomando o controle de programas vulneráveis a
buffer overflow. Acessado em 22/11/2011. Disponível em:
http://www.cic.unb.br/~pedro/trabs/buffer_overflow.htm
[3] Piromsopa, K.; Enbody, R.J. Buffer-Overflow Protection: The Theory .
Electro/information Technology, 2006 IEEE International Conference on
[4] Chongkyung Kil; et al . Address Space Layout Permutation (ASLP):
Towards Fine-Grained Randomization of Commodity Software. Computer
Security Applications Conference, 2006. ACSAC '06. 22nd Annual
[5] ANLEY, Chris; et al . The Shellcoder's Handbook - Discovering and
Exploiting Security Holes. Second Edition. Wiley Publising - 2007