|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Igor Plekhov 2:5020/400 26 Oct 2004 03:10:34 To : Zahar Kiselev Subject : Re: неисполняемый стэк в 2.4 ? -------------------------------------------------------------------------------- On Mon, 25 Oct 2004 17:57:00 +0400, Zahar Kiselev <Zahar.Kiselev@p1.f382.n5030.z2.fidonet.org> wrote: > > >> В любом случае намеренное неиспользование _имеющихся_ в процессоре > >> средств защиты от обязательно присутствующих(случайно или > >> преднамеренно) в любых программах ошибок - я не считаю технически > >> грамотным решением. > IP> Линус Торвальдс про неисполняемый стек: > IP> http://old.lwn.net/1998/0806/a/linus-noexec.html > Линус несомненно прав - одним только неисполняемым стэком не проблему не > решить. нет, у Линуса более сильное утверждение. что неисполняемый стек не даёт никакого повышения безопасности: "In short, anybody who thinks that the non-executable stack gives them any real security is very very much living in a dream world." > Однако если тот буфер, который он упоминает в своем примере, будет > помещен не в общий стэк программы, а в отдельный сегмент данных - автоматические переменные хранятся в стеке. ты предлагаешь от этого отказаться. это не только ядро надо переделывать, а ещё дофига. > то _первый_ же байт, > вылезший за границу отведенного места - вызовет ошибку защиты > и будет отловлен. для этого надо _каждый_ буфер помещать в отдельный сегмент. а то будет два буфера подряд: char a[128]; char b[128]; первый можно смело переполнять. и никто не заметит. так никаких сегментов не хватит... -- Registered Linux User #124759 --- ifmail v.2.15dev5.3 * Origin: Demos online service (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/65775851aec8.html, оценка из 5, голосов 10
|