- Любовные романы
- Фантастика и фэнтези
- Ненаучная фантастика
- Ироническое фэнтези
- Научная Фантастика
- Фэнтези
- Ужасы и Мистика
- Боевая фантастика
- Альтернативная история
- Космическая фантастика
- Попаданцы
- Юмористическая фантастика
- Героическая фантастика
- Детективная фантастика
- Социально-психологическая
- Боевое фэнтези
- Русское фэнтези
- Киберпанк
- Романтическая фантастика
- Городская фантастика
- Технофэнтези
- Мистика
- Разная фантастика
- Иностранное фэнтези
- Историческое фэнтези
- LitRPG
- Эпическая фантастика
- Зарубежная фантастика
- Городское фентези
- Космоопера
- Разное фэнтези
- Книги магов
- Любовное фэнтези
- Постапокалипсис
- Бизнес
- Историческая фантастика
- Социально-философская фантастика
- Сказочная фантастика
- Стимпанк
- Романтическое фэнтези
- Ироническая фантастика
- Детективы и Триллеры
- Проза
- Юмор
- Феерия
- Новелла
- Русская классическая проза
- Современная проза
- Повести
- Контркультура
- Русская современная проза
- Историческая проза
- Проза
- Классическая проза
- Советская классическая проза
- О войне
- Зарубежная современная проза
- Рассказы
- Зарубежная классика
- Очерки
- Антисоветская литература
- Магический реализм
- Разное
- Сентиментальная проза
- Афоризмы
- Эссе
- Эпистолярная проза
- Семейный роман/Семейная сага
- Поэзия, Драматургия
- Приключения
- Детская литература
- Загадки
- Книга-игра
- Детская проза
- Детские приключения
- Сказка
- Прочая детская литература
- Детская фантастика
- Детские стихи
- Детская образовательная литература
- Детские остросюжетные
- Учебная литература
- Зарубежные детские книги
- Детский фольклор
- Буквари
- Книги для подростков
- Школьные учебники
- Внеклассное чтение
- Книги для дошкольников
- Детская познавательная и развивающая литература
- Детские детективы
- Домоводство, Дом и семья
- Юмор
- Документальные книги
- Бизнес
- Работа с клиентами
- Тайм-менеджмент
- Кадровый менеджмент
- Экономика
- Менеджмент и кадры
- Управление, подбор персонала
- О бизнесе популярно
- Интернет-бизнес
- Личные финансы
- Делопроизводство, офис
- Маркетинг, PR, реклама
- Поиск работы
- Бизнес
- Банковское дело
- Малый бизнес
- Ценные бумаги и инвестиции
- Краткое содержание
- Бухучет и аудит
- Ораторское искусство / риторика
- Корпоративная культура, бизнес
- Финансы
- Государственное и муниципальное управление
- Менеджмент
- Зарубежная деловая литература
- Продажи
- Переговоры
- Личная эффективность
- Торговля
- Научные и научно-популярные книги
- Биофизика
- География
- Экология
- Биохимия
- Рефераты
- Культурология
- Техническая литература
- История
- Психология
- Медицина
- Прочая научная литература
- Юриспруденция
- Биология
- Политика
- Литературоведение
- Религиоведение
- Научпоп
- Психология, личное
- Математика
- Психотерапия
- Социология
- Воспитание детей, педагогика
- Языкознание
- Беременность, ожидание детей
- Транспорт, военная техника
- Детская психология
- Науки: разное
- Педагогика
- Зарубежная психология
- Иностранные языки
- Филология
- Радиотехника
- Деловая литература
- Физика
- Альтернативная медицина
- Химия
- Государство и право
- Обществознание
- Образовательная литература
- Учебники
- Зоология
- Архитектура
- Науки о космосе
- Ботаника
- Астрология
- Ветеринария
- История Европы
- География
- Зарубежная публицистика
- О животных
- Шпаргалки
- Разная литература
- Зарубежная литература о культуре и искусстве
- Пословицы, поговорки
- Боевые искусства
- Прочее
- Периодические издания
- Фанфик
- Военное
- Цитаты из афоризмов
- Гиды, путеводители
- Литература 19 века
- Зарубежная образовательная литература
- Военная история
- Кино
- Современная литература
- Военная техника, оружие
- Культура и искусство
- Музыка, музыканты
- Газеты и журналы
- Современная зарубежная литература
- Визуальные искусства
- Отраслевые издания
- Шахматы
- Недвижимость
- Великолепные истории
- Музыка, танцы
- Авто и ПДД
- Изобразительное искусство, фотография
- Истории из жизни
- Готические новеллы
- Начинающие авторы
- Спецслужбы
- Подростковая литература
- Зарубежная прикладная литература
- Религия и духовность
- Старинная литература
- Справочная литература
- Компьютеры и Интернет
- Блог
Суета вокруг Роберта - И Моисеенков


- Жанр: Разная литература / Прочее
- Название: Суета вокруг Роберта
- Автор: И Моисеенков
- Возрастные ограничения: (18+) Внимание! Книга может содержать контент только для совершеннолетних. Для несовершеннолетних просмотр данного контента СТРОГО ЗАПРЕЩЕН! Если в книге присутствует наличие пропаганды ЛГБТ и другого, запрещенного контента - просьба написать на почту для удаления материала.
Шрифт:
Интервал:
Закладка:
лишь скрытно проникнуть в вычислительные системы, связанные
сетью Arpanet, и остаться там необнаруженным.
Поскольку вирус распространялся в среде сети с
использованием соответствующих сетевых средств и полностью
обеспечивал свою работу сам, то бесспорным является утверждение,
что вирус Морриса является полноправным представителем крайне
редко встречающегося вирусного семейства сетевых червей.
______________________________
[D1] Мне кажется более правильным называть этот вирус по имени его автора, хотя, как я уже говорил, вирус имеет массу других названий. Однако в нашей стране, имеющей весьма отдаленное представление об Arpanet, Milnet, Internet, Корнеллском университете и т.д. прижилось и получило определенное распространение именно это название - "вирус Морриса". В дальнейшем будем так называть его и мы.
стр. 21
Компьютерные эксперты, дезассемблировавшие вирус, единодушно отметили, что программа была написана с выдающимся мастерством и расчетом на три недостатка в системе безопасности поражаемых операционных систем.
Вирусная программа включала компоненты, позволявшие раскрывать пароли, существующие в инфицируемой системе, что в свою очередь позволяло программе маскироваться под задачу легальных пользователей системы, на самом деле занимаясь размножением и рассылкой собственных копий. Вирус не остался скрытым и полностью безопасным, как задумывал автор, в силу незначительных ошибок, допущенных при разработке, которые привели к стремительному неуправляемому саморазмножению вируса.
Теперь давайте рассмотрим вирус несколько подробнее, насколько, конечно, позволяет имеющаяся у нас информация о нем.
Прежде всего интересен вопрос, каким образом распространялся вирус?
Суббота, 5 ноября 1988 года.
18:31 RISKS Предупреждение против ссылок на "ошибки в операционной
системе UNIX". Указывается, что "вирус не использует каких-либо
ошибок в UNIX", ошибки содержит "программа пересылки Sendmail".
Первой лазейкой была утилита электронной почты Sendmail, входившая в состав инфицируемых систем. Недостаток утилиты Sendmail, позволивший Моррису обходить подсистему безопасности вычислительной системы атакуемого узла сети, имеет, если можно так выразиться, классический характер и относится к такому довольно часто встречающемуся явлению в программировании как "люки".
По большому счету люк - это не описанная в документации на программный продукт возможность работы с этим программным продуктом. Люки чаще всего являются результатом забывчивости разработчиков: в процессе разработки программы разработчики часто создают временные механизмы, облегчающие ведение отладки за счет прямого доступа к отлаживаемым частям продукта. Например, для начала работы с продуктом требуется выполнить некоторую последовательность действий, предусмотренных алгоритмом - ввести пароль, установить значения некоторых переменных и т.п. При нормальной работе продукта эти действия имеют определенный смысл, но во время отладки, когда разработчику необходимо тестировать некоторые внутренние части программы и волей-неволей приходится выполнять ту же операцию входа добрый десяток - а то и более - раз на дню, безобидные в общем-то правила, затрудняющие тем не менее доступ к отлаживаемым частям, начинают не на шутку раздражать. Что делает программист? Правильно: в течение получаса он программирует некоторый дополнительный механизм, не предусмотренный изначальным алгоритмом программы, но позволяющий не выполнять надоевших действий или выполнять их автоматически например, при нажатии определенной клавиши (группы клавиш) или при вводе определенной последовательности символов. Все - люк готов!
[D2] Такая избирательность вируса послужила причиной того, что ряд экспертов высказали мысль, что инцидент, связанный с вирусом Морриса, вполне мог быть тщательно подготовленной акцией корпорации IBM по подрыву позиций своих конкурентов.
стр. 22
Если сравнивать с промышленным производством, то люк - это технологическое отверстие, не имеющее никакого отношения к основному предназначению изготовляемого изделия, но значительно облегчающее процесс производства.
По окончании отладки большинство люков убирается из программы; но люди есть люди - зачастую они забывают о существовании каких-то мелких "лючков".
Автор программы Sendmail, Эрик Олмен (Eric Allman) тоже создал в своей программе "черный ход". [D5] Вообще программа Sendmail была весьма сложной и могла работать в нескольких режимах, что позволяло решать весьма сложные задачи распределенной обработки данных. Один из режимов предполагал работу утилиты в виде демона - фонового процесса: при этом программа постоянно опрашивала порт TCP на предмет обнаружения попыток передачи сообщений с использованием подпротокола SMTP. При обнаружении такой попытки демон устанавливал связь с удаленным абонентом и принимал адрес отправителя, адрес получателя, инструкции по обработке сообщения и собственно сообщение. Так вот, червь в качестве инструкций обработки посылал команду DEBUG, а вместо адреса получателя передавал набор команд. При нормальной работе такого делать нельзя, однако такая возможность в режиме отладки существовала, поскольку при этом можно было удостовериться в срабатывании почты, не указывая дальнейшую программу обработки, что, как вы понимаете, значительно облегчило Олмену отладку Sendmail. Однако эта возможность продолжала весьма активно использоваться и другими пользователями, поскольку этот метод позволял избежать сложной процедуры конфигурации утилиты Sendmail для выполнения частных задач.
Теперь будет понятен первый механизм распространения вируса Морриса: обосновавшись на инфицированном узле, вирус рассылал с помощью Sendmail по обнаруженным в пораженной системе адресам соседних узлов "невинное" сообщение, состоящее из 99 строк текста на языке C. Переданное сообщение - текст программы - компилировалось на узле-получателе и полученный модуль начинал работать, избежав выполнения требуемой процедуры входа в систему. Работа этого модуля заключалась в установлении контакта с сервером червя (т.е. атакующей программой-червем, работающей на уже инфицированном узле) и копировании с атакующего узла трех файлов: двух файлов объектного кода (отдельно для VAX и для Sun) и файла с упоминавшимся 99-строчным исходным текстом.
Уже упоминавшийся пользователь из университета Делавэр описал это следующим образом:
"Червь проник через Sendmail. Предполагая получение
обычного сообщения, Дэви открыл порт электронной почты и
позволил разместиться в нем сообщению, являвшемуся на самом деле
первым сегментом червя. Этот сегмент затребовал у Дэви запуска
программы (так называемой оболочки) в отладочном режиме, как
если бы законный пользователь отлаживал обычную программу."
При этом, во-первых, копирование выполнялось только в случае передачи серверу случайного числа, которое было ранее послано этим же
______________________________
[D5] Впоследствии он сказал, что создал этот "черный ход" с целью облегчения работы в системе, доступ к которой закрывал ему чрезмерно усердный администратор.
стр. 23
сервером в ходе попытки заражения. Если сервер не получал такого числа, он отсоединялся от модуля захвата, а сам модуль захвата самоуничтожался. Это должно было предотвратить "поимку" кем-либо файлов червя.
Во-вторых, если копирование в результате чего-либо было неудачным, то сервер также отсоединялся, а модуль захвата уничтожал все уже переданные файлы и самого себя.
И, наконец, в-третьих, модуль захвата в случае удачного копирования поочередно пытался запустить полученные файлы. Если ни один из файлов запустить не удавалось, сервер отсоединялся, а все файлы и сам модуль захвата уничтожались; если же какой-либо файл начинал работать (т.е. попытка заражения увенчалась успехом!), уже эта копия червя разрывала связь с сервером и уничтожала все следы атаки (т.е. все созданные файлы) на диске.
Немалые подозрения вызвал тот факт, что в теле программы были обнаружены структуры данных, обеспечивающие передачу 20 файлов, тогда как на самом деле передавались лишь три. Это послужило источником утверждений, что Моррис задумывал распространять таким образом некоторые опасные для систем подпрограммы. Однако доказать эти намерения не удалось, впрочем, как не удалось выяснить и истинное предназначение обнаруженных структур.
Другим - вторым! - недостатком, использованным вирусом Морриса для собственного распространения, была непродуманность работы другой утилиты, также входящей в состав атакуемых систем - Finger.
Программа Finger также работала в режиме фонового процесса демона - и предоставляла пользователям возможность опрашивать удаленный узел о текущем состоянии системы или активности конкретного пользователя. В случае обнаружения попытки установить связь со стороны удаленного демона, демон Finger данного узла устанавливал связь, считывал одну строку запроса и посылал в ответ информацию, определяемую полученным запросом. Вся беда заключалась в том, что для считывания строки ввода в свой внутренний буфер программа Finger использовала программу gets языка C, а эта программа - как, впрочем, и целый ряд других программ ввода/вывода в C - в процессе размещения информации не проверяла границы буфера ввода, что делало возможным переполнение буфера и, соответственно, затирание данных, размещенных следом за буфером.

