#1 Le 20/04/2007, à 00:27
- gene69
[gcc] une option de gcc dans ubuntu
http://procrastiblog.blogspot.com/2007/ … ector.html
Est ce que quelqu'un peut m'expliquer à quoi sert le flag -fstack-protector ?
Quand le berger est lâche, le loup chie de la laine.
A (draft) guide to UFO Alien-Invasion
Hors ligne
#2 Le 20/04/2007, à 04:01
- Link31
Re : [gcc] une option de gcc dans ubuntu
RTFM
...désolé
-fstack-protector
Emit extra code to check for buffer overflows, such as stack smash-
ing attacks. This is done by adding a guard variable to functions
with vulnerable objects. This includes functions that call alloca,
and functions with buffers larger than 8 bytes. The guards are
initialized when a function is entered and then checked when the
function exits. If a guard check fails, an error message is
printed and the program exits.
Donc ça sert à protéger le programme contre certains dépassements de mémoire, en ajoutant un peu de code au début et à la fin des fonctions et en stoppant le programme en cas de problème.
Hors ligne
#3 Le 20/04/2007, à 12:57
- gene69
Re : [gcc] une option de gcc dans ubuntu
je comprend par en quoi ça change la visibilité au moment du link
Quand le berger est lâche, le loup chie de la laine.
A (draft) guide to UFO Alien-Invasion
Hors ligne
#4 Le 20/04/2007, à 16:00
- Link31
Re : [gcc] une option de gcc dans ubuntu
Bah peut-être que l'utilisation du symbole en question est considérée (à tort) par le code de protection comme un dépassement de mémoire, et est donc interdite. Ou alors deux symboles sont en conflit, l'un appartenant au noyau et l'autre appartenant à ce code supplémentaire.
Hors ligne