Лекция: Получить полный контроль над машиной, что ему, естественно, просто так никто не даст.

Для решения этих проблем приходит в голову следующее: передать некоторому привилегированному

Процессу такие данные, которые интерпретировались бы им как код. При этом отсутствие доступа на

Компьютер решается передачей удаленных данных через демоны (сценарий 1 — любой пользователь Internet

Имеет такую возможность). Для выбора локальных привилегированных процессов (то есть при наличии

Доступа) также хорошо подходят демоны, если они запущены от имени суперпользователя или SUID root-

Программы (сценарий 3).

Итак, задача кракера уточнилась: ему необходима привилегированная программа, которая получает какие-

То входные данные от непривилегированных пользователей. И дело за малым — осталось заставить программу

Исполнить эти данные как код. Как следует из названия раздела, такой прием получил название buffer

overflow (в переводе <переполнение буфера>, хотя более точно сказать <переполнение буфера в стеке>).

Рассмотрим его. Весьма часто в процедурах программист отводит для своих нужд некоторый локальный

Буфер, имеющий фиксированный размер. Этот размер обычно устанавливается исходя из здравого (или не

Очень здравого) смысла. Например, если читается строка с экрана, то программист может ограничить размер

еще рефераты
Еще работы по информатике