История развития программного обеспечения

Гости из сумрака

Шестнадцать лет назад первый компьютерный вирус вырвался в Интернет

…Тим, если твою бактерию разнесет ветром по всему миру, то на пятые сутки она высосет весь кислород, она затопит все материки и океаны.

Михаил Михеев.
"Бактерия Тима Маркина" (1966)

…Похоже, кто-то выпустил вирус в Интернет.

Энди Саддат, аналитик Гарвардского университета
(3 ноября 1988 г., 00:34)

Шестнадцать лет назад, в начале ноября 1988 г., США готовились к выборам президента. Однако в ночь на третье число произошло событие, почти на неделю вытеснившее предвыборные баталии с первых полос американских газет. Экспериментальная программа Роберта Морриса, 23-летнего аспиранта Корнельского университета, начала бесконтрольно размножаться и, заразив локальную сеть университетской лаборатории, к полуночи вырвалась в Интернет. К моменту, когда вирус был блокирован единственным доступным на тот момент способом – физическим отключением серверов от сети, он успел поразить более 6000 компьютеров. Это первый зафиксированный случай эпидемии Интернет-вируса и первая компьютерная атака, ущерб от которой был официально оценен. Правда, из-за отсутствия прецедентов и из-за разнобоя в методиках расчета размер потерь рассчитали довольно приблизительно – в пределах от $100 000 до $10 000 000, но это не помешало присудить злополучного Морриса к вполне конкретному штрафу в 10 тыс. долл., а также к исправительным работам.

Любопытно, что целью Морриса являлось именно изучение возможностей самостоятельного размножения компьютерных программ. Однако молодой аспирант подобно незадачливому биологу Тиму Маркину из фантастического рассказа Михаила Михеева не учел неумолимых законов геометрической прогрессии и выпустил свое детище из пробирки. Вдобавок, несмотря на свои микроскопические размеры (всего 99 строк ассемблерного кода), программа Морриса содержала ошибку, которая приводила к постепенному блокированию зараженного компьютера. Через двадцать минут после заражения результаты действия "червя Морриса" становились заметны: коэффициент загрузки сервера (Load Average – среднее по интервалу времени число процессов в очереди ядра на обработку) возрастал до порогового значения – пяти, а еще через сорок минут наступал паралич сервера. Удаление копий вредоносной программы и перезагрузка не помогали – вирус мгновенно восстанавливался. При этом в течение всего времени, пока сервер был способен что-либо делать, он интенсивно заражал соседей по сети. История сохранила лог-файл системного администратора университета Юта, атакованного одним из первых и проведшего ночь в безуспешной борьбе с неведомым "гостем из сумрака". Анализ показывает: эпидемия червя Морриса до настоящего времени остается едва ли не единственным примером атаки, которая реально могла привести к полному параличу Интернета (подобная угроза впоследствии повторилась лишь однажды, когда около года назад была предпринята скоординированная атака на DNS-серверы верхнего уровня).

Строго говоря, первый прототип компьютерного вируса появился значительно раньше. Еще в 1971 г. программист Боб Томас, пытаясь решить проблему передачи управления движением авиалайнера с одного компьютера на другой, создал программу Creeper. Будучи абсолютно безобидной игрушкой, Creeper тем не менее изрядно напугал персонал компьютерного центра, прыгая с одного компьютера на другой и периодически выдавая на экраны сообщение: "I’m Creeper! Catch me if you can!". Однако Creeper в отличие от червя Морриса не умел размножаться, не блокировал серверы и не мог вырваться в Интернет (ввиду отсутствия такового). А профессиональный анализ творения Морриса свидетельствует, что намерения его автора могли быть далеко не столь безобидны, как простое любопытство исследователя. Созданная им программа маскировалась под стандартный процесс Bourne Shell, обнуляла восстановительную копию собственного кода (Core Dump), изменяла поведение при помощи датчика случайных чисел и заметала следы размножения, удаляя использованные файлы.

Что касается самого термина "червь" (worm), то в компьютерном обиходе он появился с легкой руки фантаста Джона Бруннера, герой которого для освобождения человечества от глобальной компьютерной сети тоталитарного правительства (до Матрицы тогда еще не додумались) создает разрушительную программу Tapeworm (Роман "The Shockwave Rider", 1975). Название книги Бруннера созвучно имени Джона Шока, исследователя из Xerox Palo Alto Research Center: еще в 1982-м вместе со своим коллегой Джоном Хаппом он вывел из строя более сотни компьютеров, экспериментируя с программами дистанционного управления сетью. Однако авторы "прадедушки вирусов" руководствовались исключительно мирными намерениями: несмотря на устрашающее название, их программа Vampire совершала ночные обходы компьютеров с созидательной целью организации распределенных вычислений. А вызванный ею массовый сбой, который иногда упоминается как первая компьютерная атака, был всего лишь следствием примитивной программной ошибки.

И вот компьютерные вирусы празднуют свое шестнадцатилетие. За это время количество клонов вредоносных программ перевалило за сто тысяч, а ежемесячный ущерб от вирусных эпидемий исчисляется многими миллионами долларов. Более того, постепенно стирается грань между вирусами и благонамеренными лицензионными продуктами. Сегодня на компьютере среднестатистического пользователя установлено более 20 программ, способных без ведома владельца выполнять активные действия по команде извне, и еще около пятидесяти могут собирать данные о настройках и активности того или иного компьютера и передавать их в Интернет.

Резко усложнились используемые компьютерными злоумышленниками технологии и расширился спектр решаемых ими задач. Периодическое общение с профессиональными хакерами позволяет составить краткий перечень возможностей, подвластных сегодняшним "дирижерам безмолвия":

  • благодаря специальным технологиям "размывания кода" новые вирусы и троянские программы практически невидимы для коммерческих антивирусных программ;
  • зафиксированы случаи взлома всех без исключения видов защиты, в том числе новейших биометрических систем, использующих идентификацию по отпечаткам пальцев и радужной оболочке глаза;
  • использование методов стеганографии (скрытого хранения данных) позволяет хакерам эффективно скрывать свои архивы и боевые программы на чужих компьютерах;
  • с помощью специальных методик использования чатов, форумов, ICQ и IRQ хакеры могут скрытно общаться, даже если за спиной каждого из них будет стоять агент ЦРУ (похожие методики могут применяться и, вероятно, уже применяются террористами);
  • используя определенные виды Интернет-роботов, хакеры без особого труда могут организовать скрытое наблюдение за любым интересующим их компьютером – включая компьютеры советников Президента США (вопрос о вторжении в компьютер самого президента пока остается открытым, поскольку неясно, умеет ли им пользоваться владелец).

Список можно продолжить. Совершенствуется и инструментарий правоохранительных органов. Во многих странах хакеров уже успешно ловят и привлекают к уголовной ответственности. В Корее, Китае, США организованы профессиональные хакерские школы, которые готовят элитный "спецназ информационной войны". Наметились первые успехи в прогнозировании и предотвращении вирусных эпидемий (так, майская эпидемия Sasser, унесшая "жизни" 200 000 компьютеров, была предсказана еженедельником "Anti-Hacker" за три дня до ее начала). Но настоящие войны в киберпространстве еще впереди. И атака червя Морриса, которой сегодня минуло шестнадцать лет, покажется на их фоне шалостью первоклассника.

Подробнее о современных технологиях информационной войны можно прочесть в электронном сборнике "Оружие власти" ("Инфорус", 2004).

Статья опубликована в PC Week/RE №44 от 30.11.2004 г., стр. 43.
Перепечатывается с разрешения редакции