Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
что я читал об этом 08.10.02 17:07 Число просмотров: 1110
Автор: :-) <:-)> Статус: Elderman
|
> > Давно мучает вопрос: как народ организует исполнение > кода > > при переполнении буфера. > > > > По идеи данные должны лежать в сегменте данных, а код > в > > сегменте кода. Каждый сегмент можно организовать на > своей > > странице. У страниц имеются свойства: на запись, на > чтение, > > на исполнение. > > Пусть даже мы вылезем за границу нашего буфера, но во > > первых это будет в сегменте данных, а не кода, а во > вторых > > исполнить данные мы все равно не сможем. > > Ну не в сегменте данных, а, как правило, в стеке. > Только некоторые виды unix поддерживают запрет на > исполнение кода в стеке.
И, если я не ошибаюсь, эти *nix работают не на Intel x86.
В x86 право читать сегмент дает также право исполнять код в нем. Раньше тут z0 постил исходник (функция в области данных).
|
|
|