Pergunta

Atualmente, estou lendo vários livros de segurança (minha paixão) sobre programação segura, no entanto, quer a distro é que eles fornecem no disco estiverem com defeito ou inexistente. Livros: Hacking A arte de Exploração 2nEd, chapéu cinzento hackers 2nEd O problema é que quando eu tento seguir os exemplos, distros obviamente mais novos têm proteção de pilha e outros recursos de segurança implementadas para evitar estas situações, e eu tentei configurar manualmente o ambiente fornecido com Hacking a arte da exploração, mas eu falhei. Também tentei DVL (Dam Vulnerable Linux), mas a sua maneira muito inchado, eu só quero um ambiente mínimo que eu posso ter em uma pequena partição e escolher bootloader OR tem em um pequeno VirtualBox.

Assim, a minha pergunta é esta:. Como faço para ir sobre a criação de um ambiente (distro kernel antigo) que eu posso seguir a maioria destes exemplos na Possivelmente, se alguém poderia me dizer a versão do kernel e GCC de DVL eu poderia conseguir mais de que a configuração mim.

Foi útil?

Solução

Você precisa reconstruir o kernel sem proteções pilha e heap incluindo pilha não-executável. Então você precisa para compilar usando bandeiras do CCG para desligar as proteções, um dos quais seria "-fno-stack-protector". Além disso, porque você vai correr para ele em breve você provavelmente quer compilar estaticamente o seu programa, porque ele vai ser um pouco mais fácil de entender quando você está depurando em seu 0x41414141 carga útil.

Além disso, dependendo da sua definição de "inchaço", que poderia ser mais fácil, basta baixar uma distro mais antiga do linux, redhat 5 ou um slackware de idade e instalar e usar isso com o conjunto de ferramentas padrão.

Outras dicas

Se você ainda tiver DVL disponível, você pode usar os comandos:

$ uname -r
$ gcc --version

para descobrir por si mesmo.

Edit: de acordo com a distrowatch.com o kernel linux é 2.6.20 e gcc é 3.4.6

Há um artigo no site da sevagas que está relacionado à sua pergunta: How-to configurar um ambiente de teste buffer overflow

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top