Шрифт:
Интервал:
Закладка:
Вирус — мина замедленного действия. Его инструкции:
— Скопируй меня в четыре другие программы.
— Жди наступления 13 февраля.
— Уничтожь все файлы в системе.
Вирус должен находить пути к распространению. Как передать его? Люди обмениваются программным обеспечением на дисках. Заразите один диск, и он заразит все системы. Пока диск передается от офиса к офису, дюжина компьютеров могут быть заражены.
Электронные доски объявлений — тоже средство обмена программным обеспечением. Вы копируете программы с доски объявлений в свой домашний компьютер. Вы можете так же легко скопировать программу из своей домашней системы на доску объявлений. Там она будет ждать, пока кто-нибудь ее не запросит. И если ваша программа заимеет скрытый вирус, то вы можете не обнаружить его, пока не будет слишком поздно.
Итак, компьютерные вирусы распространяются посредством обмена программами. Какая-то сотрудница приносит на работу зараженную программу — забавную игру — и запускает ее там на машине. Вирус копирует себя в ее программу обработки текстов. Потом она дает свой диск с программой обработки текстов приятелю. Заражается система приятеля…
Очевидный способ защититься от вирусов — избегать обмена программами. Изолируйте ваш компьютер, и никакой вирус не сможет его заразить.
Эта мудрость не учитывает повседневных нужд. Если не обмениваться программами и данными, компьютер будет не очень полезен. Вокруг изобилие программного обеспечения и большая его часть идеально подходит для решения наших проблем.
Однако, есть еще один путь распространения вируса: непосредственно через сеть. Наша сеть Арпанет соединяет восемьдесят тысяч компьютеров по всей стране. Вы можете послать почту любому из этих компьютеров, посылать или получать по сети Арпанет файлы или (как показал Гесс) интерактивно подключаться к компьютерам, соединенным с Арпанет. Мог ли вирус распространяться по сети Арпанет? Я думал об этом и раньше. Компьютеры Арпанет имеют защиту от вирусов: вам нужны пароли, чтобы подключиться к ним. Гесс обошел это угадыванием паролей. Мог бы вирус отгадать пароли?
В 3:30 утра, напрягаясь за своим Макинтошем, я подключился к моему обсерваторскому компьютеру. Это рабочая станция Сан, работающая под управлением популярной разновидности системы ЮНИКС из Беркли. Все эти сотни заданий еще работали, система была страшно перегружена. Никакого хакера не было. Те же симптомы в Лоуренсовской лаборатории в Беркли. И в НАСА. Похоже на вирус.
Я позвонил Даррену Гриффитсу.
— Это вирус, — подтвердил он. — Я могу наблюдать, как он размножается. Задания появляются снова.
— Откуда?
— Я получаю подключения от пяти мест. Стэнфорд, университет Рочестера, Аэрокосмическая компания, университет Беркли и из какого-то БРЛ.
— Это — баллистическая разведывательная лаборатория, — сказал я, помня разговор с Майком Мууссом. — Как вирус мог проникнуть в вашу систему?
— Не могу сказать, Клифф. Все подключения от сети Арпанет, но это не обычный способ вхождения в систему. Похоже, что вирус проник через дыру в системе почты.
Сейчас 4 часа утра. Что делать? Хорошо бы позвонить инспекторам сети Арпанет и предупредить их. Операционный Центр Сети ничего не знал. Возраст вируса составляет всего несколько часов. Страшное дело. К утру он распространится на десятки или даже сотни систем. Мы имеем проблему. Серьезную проблему. Эпидемию.
Все следующие тридцать шесть часов я был в напряжении, стараясь понять и расстроить эту диверсию. В это же время группы в Беркли, МТИ и Пурдьюсском университете уже шли по горячему следу. Здесь я описываю только то, что видел сам, но мои усилия были невелики в сравнении с работой корифеев ЮНИКСа по всей стране. Работали такие «гуру», как Кейт Бостик, Питер Ай, Джен Спаффорд, Джон Рохлис, Марк Эйчин, Дон Сили, Эд Ванг и Майк Муусс. Я был частичкой неорганизованного, но целенаправленного братства бойцов.
Я зарылся в код на моей системе в Кембридже. Сразу же я смог увидеть две версии вируса. Одна приспособлена для компьютеров ВАКС под системой ЮНИКС. Другая — для рабочих станций Сан. Каждый файл был длиной сорок пять тысяч байт. Если бы это был текст на английском языке, он занимал бы около тридцати страниц. Но это был не текст: я распечатал файл, и он выглядел полной тарабарщиной. Не был он похож и на машинный код. Несколько команд, правда, выглядели знакомо. Стараюсь терпеливо понять, что эти несколько команд делают.
Я начал расшифровывать код вируса. Несколько первых команд снимали зашифровку с остального кода. Действительные команды были преднамеренно скрыты. Разбрасывание гвоздей на дороге, чтобы задержать автомашину преследователей.
Дьявольщина. Пора звонить Даррену. Сейчас 5 утра, и мы сравниваем наши заметки; он открыл то же самое и более того: «Я размаскировал часть вируса, и я вижу, что он проникает через систему почты, Затем он использует finger и telnet, чтобы распространить себя на другие компьютеры. Он декодирует пароли простым подбором.»
Вместе, по телефону, мы разбирали программу. Казалось, что ее общей целью было копирование самой себя в другие компьютеры. Она искала подключения к сети: ближние компьютеры, удаленные системы, все, до чего она могла добраться. Когда вирусная программа обнаруживает компьютер в сети, она старается проникнуть в него, используя несколько скрытых дыр в операционной системе ЮНИКС.
Когда вы посылаете почту от одного ЮНИКС-компьютера к другому, программа SendMail (Послать почту) системы ЮНИКС заведует передачей. Почтовое сообщение проходит по сети, и SendMail направляет его адресату. Это электронный почтовый офис, который сортирует почту. SendMail имеет дыру. Если есть проблема, вы можете попросить программу перейти в отладочный режим. В режиме отладки SendMail позволяет вам выдавать обычные команды системы ЮНИКС из внешнего компьютера. Такие команды, как «Выполнить данную программу».
Итак, вот каким образом вирус распространял свои копии. Он посылал по почте свои копии в другие компьютеры и велел им выполнять вирусную программу. После того, как запускалась вирусная программа, она искала, какие другие компьютеры заразить, и посылала почтовые сообщения им.
На некоторых системах программа SendMail была исправлена. Если так, вирус пытался проникнуть через другую дыру: средство опознания finger. Чтобы посмотреть, использую ли я систему ЮНИКС, можно выдать команду finger Cliff (Опознать Клифф). Если я вошел в систему, ЮНИКС выдаст в ответ мое имя, номер телефона и кто я такой. Это хорошо работает через сеть; часто я сам опознавал кого-нибудь перед тем, как звонить по телефону.
Вирус проникал через программу, которая управляла запросами на опознание. Средство опознания имеет место в памяти для 512 символов данных; вирус посылал 536 символов. Что происходило с лишними 24 символами? Они выполнялись как команды системе ЮНИКС. Переполняя буфер системы опознавания, вирус нашел второй способ выполнения команды «Выполнить данную программу» на другом компьютере.
Если этого было недостаточно,
- Огненный скит - Юрий Любопытнов - Исторические приключения
- Порт-Артур. Том 2 - Александр Степанов - Исторические приключения
- Воспоминания - Елеазар елетинский - Прочая документальная литература
- Горбун, Или Маленький Парижанин - Поль Феваль - Исторические приключения
- Газета Завтра 48 (1200 2016) - Газета Завтра - Публицистика
- От Хиросимы до Фукусимы - Владимир Сливяк - Прочая документальная литература
- Феномен украинского «голода» 1932-1933 - Иван Иванович Чигирин - Прочая документальная литература / Исторические приключения
- Судьба человека. С любовью к жизни - Борис Вячеславович Корчевников - Биографии и Мемуары / Публицистика
- Королева-Малютка - Поль Феваль - Исторические приключения
- Лондонские тайны - Поль Феваль - Исторические приключения