Хочу настроить libsafe для защиты от переполнения буфера. Есть такой кусок
#include <stdio.h>
#include <iostream.h>
int overflow (char *data);
main ()
{
char userinput[99999];
gets (userinput);
overflow(userinput);
exit(0);
}
int overflow (char *data)
{
char filename[1];
strcpy(filename,data);
return 0;
}
Компилируем, запускаем. При вводе большого количества символов падает в segmentation fault.
ACCEPT_KEYWORDS="~x86"emerge libsafe
LD_PRELOAD=libsafe.so.2
Тоже самое. Тоесть libsafe не защищает. Или я чтото не так делаю?
P.s
Смущает вывод
strace ./buf_over
access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
Ответ на:
комментарий
от mky
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум переполнение буфера (2004)
- Форум Не могу поймать fstat (2004)
- Форум ibase.h ничего не понимаю :( (2005)
- Форум Segmentation fault при чтении файла. (2003)
- Форум почему сегфолтится програмка?? (2010)
- Форум C + random + array + segfault (2014)
- Форум Segmentation fault (2009)
- Форум Два вопроса, почему strcpy ругается варнингом и почему сигфолт? (2005)
- Форум dlopen causes SEGFAULT (2005)
- Форум wayland server имплементация, создание глобальных объектов (2021)