Como desativar o protetor de pilha no kernel do Linux facilmente? [duplicado]

0

Eu escrevi um módulo simples para o kernel do Linux e ele tem uma vulnerabilidade de estouro de buffer de pilha. Eu quero explorar o módulo, mas eu tenho que desligar o protetor de pilha no kernel primeiro. Como eu poderia fazer isso de forma rápida e simples?

É necessário compilar o kernel todas as vezes?

Existe alguma outra maneira de desativar a proteção de pilha em um módulo do Kernel Linux (sem compilar o kernel)?

    
por user126623 06.06.2016 / 18:27

1 resposta

1

Essas opções funcionam passando opções ao compilador, então a maneira mais direta é recompilar o kernel.

No entanto, para uma maneira reproduzível e específica do módulo, o kbuild permite que você defina CFLAGs personalizados por módulo.

link

Você quer particularmente definir -fno-stack-protector para os módulos que deseja explorar.

Além disso, o DKMS permite que você configure automaticamente a reconstrução de drivers de árvores contra versões arbitrárias do kernel.

    
por 06.06.2016 / 20:01