Р. Кевин Оберман
    Предупреждение
   Червь атакует принадлежащую NASA сеть SPAN через системы VAX/VMS, подключенные к DECnet. He совсем понятно, ограничено ли распространение червя. Он может внедриться в другие системы, такие как HEPNET Министерства энергетики, в течение нескольких дней. Системные менеджеры VMS должны быть готовы к этому.
   Червь поражает машины VMS и может распространяться только посредством DECnet. Для воспроизведения самого себя червь использует два свойства машин DECnet/VMS. Во-первых, это учетная запись DECnet по умолчанию, которая дает возможность пользователям, не имеющим специальных идентификационных логинов для машин, добиться некоторого уровня анонимного доступа. Червь использует учетную запись DECnet по умолчанию для самокопирования в машине, а затем использует функцию «TASK О» DECnet для запуска удаленной копии. Он имеет несколько других функций, включая жесткую силовую атаку.
   Как только червь проникает в вашу систему, он заражает файлы. СОМ и создает новые уязвимые места в системе безопасности. Есть мнение, что он попытается переслать информацию об этих слабостях. Он может также разрушить файлы, преднамеренно или непреднамеренно.
   Анализ червя, представленный ниже, проведен Кевином Оберманом из Национальной лаборатории имени Лоренса Ливермора. К анализу приложена программа DCL, которая блокирует текущую версию червя. В настоящее время существуют не менее двух версий червя, но могут появиться и другие. Эта программа предоставит вам достаточно времени, чтобы залатать очевидные дыры в системе безопасности. Создается более совершенная программа DCL.
   Если ваш сайт подвергнется нападению, пожалуйста, обратитесь в CIAC для получения дальнейших инструкций…
 
    Сообщение о черве W.COM 
   Р. Кевин Оберман
   Технический отдел
   Национальная лаборатория имени Лоренса Ливермора
   16 октября 1989 года.
   Приводим описание работы червя W.COM, основанное на исследовании двух первых версий. Техника репликации предполагает небольшое изменение кода, на что указывает источник нападения и накапливаемая в результате самообучения червя информация.
   Весь анализ был сделан в большой спешке, но я считаю, что все факты достоверны. Для начала – описание программы:
   1. Программа удостоверяет, что работает в директории, к которой сам владелец имеет полный доступ (с правами чтения, записи, исполнения и удаления файлов).
   2. Программа проверяет, не работает ли уже другая копия червя, для чего она ищет процесс с первыми пятью знаками NETW_. В случае его обнаружения она самоуничтожается и прекращает работу. (ПРИМЕЧАНИЕ: Быструю проверку на зараженность можно провести, поискав процесс, начинающийся с NETW_. Это можно сделать с помощью команды SHOW PROCESS.
   3. Затем программа изменяет пароль по умолчанию учетной записи DECnet случайной последовательностью двенадцати или более знаков.
   4. Информация о пароле, использованном для доступа в систему, отправляется пользователю GEMTOP [11]на узле SPAN 6.59. Некоторые версии могут иметь другие адреса.
   5. Процесс меняет свое имя на NETW_ плюс случайно выбранный набор цифр.
   6. Затем программа смотрит, имеет ли SYSNAM привилегию. Если да, то она замещает сообщение системы своим баннером.
 
   WORMS AGAINST NUCKLEAR KILLERS
   You talk of times of peace for all, and then prepare for war
 
   7. Если она имеет SYSPRV, то блокирует почту учетной записи SYSTEM.
   8. Если она имеет SYSPRV, то изменяет процедуру выполнения команд при входе в систему так, как если бы стирались все файлы пользователя (но в действительности не делает этого).
   9. Затем программа сканирует логическую таблицу учетных записей для командных процедур и стремится изменить учетную запись FIELD на известный пароль с логином из любого источника и всеми привилегиями. Это примитивный вирус, но он очень эффективен, если проникает в высокопривилегированную учетную запись.
   10. Программа приступает к попытке проникновения в другую систему путем случайного выбора номеров узлов. Кроме того, она использует функцию PHONE для получения списка активных пользователей удаленных систем. Она начинает беспокоить их, звоня им с помощью PHONE.
   11. Затем программа стремится получить доступ к файлу RIGHTLIST и пытается получить доступ к какой-либо удаленной системе с помощью найденных пользователей и списка «стандартных» пользователей, заложенного в червя. Она ищет пароли, идентичные названиям учетных записей или просто пустые, и регистрирует все такие учетные записи.
   12. Она ищет учетную запись, которая имеет доступ к SYSUAF.DAT.
   13. Если привилегированная учетная запись обнаружена, программа копируется в эту учетную запись и запускается. Если привилегированная учетная запись не найдена, программа копируется в другие учетные записи, выбранные случайным образом.
   14. Как только программа завершает работу в системе, она случайным образом выбирает другую, и все повторяется (и так до бесконечности).
   Ответные меры:
   1. Прилагаемая программа заблокирует червя. Воспользуйтесь приведенным ниже кодом и запустите ее (это потребует минимальных ресурсов). Она создаст процесс под названием NETW_BLOCK, который предупредит запуск червя.
   ПРИМЕЧАНИЕ: Настоящая версия программы будет работать только с этой версией червя.
   Видоизмененные черви потребуют модификации этого кода, тем не менее эта программа будет защищать от вторжения червя достаточно долго, чтобы обезопасить вашу систему от новых нападений червя. [12]
 
   Программа Мак-Магона тоже была готова к запуску в понедельник, но он столкнулся с барьерами, существующими в NASA. Работа в агентстве требовала умения балансировать, представляя своего рода балет, требующий совершенной хореографии, чтобы выполнять свою работу, соблюдать формальные требования и не наступать на мозоль тому или иному начальнику. Поэтому анти-WANK-программа NASA была выпущена только несколько дней спустя.
   В Министерстве энергетики тоже не обошлось без проблем с запуском анти-WANK-программы и консультациями в HEPNET. 17 октября в 17 часов 04 минуты по тихоокеанскому времени, когда Оберман был готов закончить последний параграф своего окончательного сообщения о черве, пол у него под ногами вздрогнул. Здание затряслось. Кевин Оберман оказался в центре сан-францисского землетрясения 1989 года.
   Землетрясение в Лома-Приета силой в 7,1 балла по шкале Рихтера прокатилось по Сан-Франциско и окрестностям. В своей компьютерной лаборатории Оберман приготовился к худшему. Как только толчки закончились и он убедился, что компьютерный центр все еще стоит, он снова сел к терминалу. Под вопли динамиков внутренней радиосети, призывающих весь персонал немедленно покинуть здание, Оберман в спешке заканчивал последнее предложение доклада. Он на секунду задумался, а затем добавил постскриптум, в котором шла речь о том, что если абзац не слишком связан, так только потому, что его мысли смешались из-за толчков землетрясения, обрушившегося на Ливерморскую лабораторию. Он нажал клавишу, отправляя окончательный вариант сообщения о черве WANK, и выбежал из здания.
   На восточном побережье в офисе SPAN продолжалась работа по оказанию помощи тем, кто звонил с пораженных сайтов NASA. Список сайтов, сообщавших о нападении червя, неуклонно рос всю неделю. Официальные оценки масштабов атаки червя WANK были неопределенными, однако профессиональные издания, такие как Network Worldи Computer World,сообщали, что червь успешно проник всего лишь в 60 VMS-компьютеров космического агентства. Менеджер по безопасности SPAN Рон Тенкати насчитал в той части сети, которая относилась к NASA, только 20 успешных вторжений, но другая внутренняя оценка гораздо выше – 250–300 машин. Каждая из этих машин могла обслуживать 100 и более пользователей. Оценки сильно отличаются, в сущности же, от червя пострадали все 270 000 учетных записей в сети: либо из-за отключения части сети, либо из-за постоянных попыток червя войти в систему с уже зараженного сайта. К концу нападения червя офис SPAN составил список пораженных сайтов, который даже в две колонки занял площадь в несколько страниц дисплея. Каждый из них так или иначе пострадал от червя.
   Также к концу кризиса группа менеджеров компьютерной сети NASA и Министерства энергетики определилась с тем, какие требуются «вакцины», «противоядия» и «анализы крови». Мак-Магон выпустил свою программу ANTIWANK.COM, которая убивала червя и делала системе «прививку» против возможных атак в будущем, а также распространил WORM-INFO.TEXT, содержавший список признаков заражения червем. Программа Обермана, названная [.SECURITY]CHECK_SYSTEM.COM, латала все прорехи в системах безопасности, которые использовал червь для проникновения в компьютерную систему. У DEC также появилась возможность заделать дыру в системе безопасности учетной записи DECNET.
   Каково бы ни было реальное число зараженных машин, несомненно, что червь совершил кругосветное путешествие. Из компьютеров Годдардовского центра в Мэриленде и Лаборатории имени Ферми в Чикаго он добрался до европейских сайтов (например, до сайта ЦЕРНа – Европейского совета по ядерным исследованиям в Швейцарии) и перелетел Тихий океан, оказавшись в Японии (в Riken Accelerator Facility). [13]
   Официальные лица NASA заявили прессе, что, по их мнению, червь был запущен около 4.30 утра в понедельник 16 октября. [14]А также то, что червь пришел из Европы, возможно из Франции.

Среда, 18 октября 1989 года

    Космический центр имени Кеннеди, Флорида
   Пять членов экипажа «Атлантиса» получили в среду утром не слишком приятные известия. Метеорологи с сорокапроцентной вероятностью предсказывали дождливую и облачную погоду в районе стартовой площадки. А затем произошло землетрясение в Калифорнии.
   Космический центр имени Кеннеди был не единственным местом, от чьей безукоризненной работы зависел успех запуска. Таковые были во множестве и за пределами Флориды. Среди них была база ВВС Эдварде (Калифорния), где челнок должен был совершить посадку в понедельник. Были и другие места, в основном военные базы, необходимые как для слежения за шаттлом, так и для другой технической поддержкой экспедиции. Одним из них была станция слежения на базе ВВС Онизука в Саннивэйл, Калифорния. Толчки, встряхнувшие район залива, повредили станцию, и чиновники NASA, ответственные за принятие решений, решили встретиться в среду утром для оценки ситуации в Саннивэйл. Несмотря на все это, агентство сохраняло спокойствие и невозмутимость. Вопреки техническим проблемам, судебному преследованию, демонстрантам, капризам погоды, стихийным бедствиям и червю WANK, NASA по-прежнему контролировало ситуацию.
   «Там нанесен некоторый ущерб, но мы не знаем, насколько он серьезен. Тем не менее я считаю, что в целом все неплохо, – заявил пресс-атташе NASA агентству ЮПИ. – Но все же проблемы есть». [15]В Вашингтоне пресс-секретарь Пентагона тоже успокаивал общественность. «Они смогут осуществлять слежение за челноком и поддерживать полет… Они сделают свое дело». [16]
   «Атлантис», готовый к старту, томился в ожидании на пусковой площадке 39В. Техники заправили челнок ракетным топливом, поскольку казалось, что погодные условия могут позволить ему стартовать. Была переменная облачность, но по правилам Центра Кеннеди запуск все же мог состояться.
   Астронавты проследовали на борт челнока.
   Но если во Флориде погода была приемлемой, то на месте аварийной посадки в Африке возникли проблемы. Не одно, так другое. NASA объявило о четырехминутной отсрочке.
   Наконец, в 12.54 «Атлантис» оторвался от своей стартовой площадки. Поднявшись над космодромом, он выпустил двойные языки пламени из своих огромных твердотопливных ракетных двигателей, поднялся над атмосферой и вышел в космическое пространство.
   В 19.15, ровно через 6 ч 21 мин после старта, «Галилей» начал свое самостоятельное путешествие в космосе. В 20.15 его стартовый двигатель пришел в движение.
   В центре управления полетом пресс-атташе NASA Брайан Уэлч [Brian Welch] объявил: «Космический аппарат „Галилей"… развил вторую космическую скорость». [17]

Понедельник, 30 октября 1989 года

    НАСА, Годдардовский центр космических полетов, Гринбелт, штат Мэриленд
   Неделя, начавшаяся 16 октября, показалась невероятно долгой членам команды SPAN. Они работали по двенадцать часов в день и постоянно контактировали с людьми, находившимися на грани истерики. Все же им удалось создать анти-К-программы, несмотря на устаревшие данные о SPAN и недостаток нормальных лог-файлов, которые позволили бы проследить, откуда пришел червь. «За эту неделю мы поняли, сколь многими данными нерасполагаем», – заметил Мак-Магон.
   К пятнице, 20 октября, не поступило ни одного нового сообщения о нападениях червя. Все говорило о том, что кризис миновал. Привести дела в порядок могли и без него, так что Мак-Магон вернулся к своей непосредственной работе.
   Прошла неделя. Все это время Мак-Магона не покидало беспокойство. Он подозревал, что тот, кто ввязался во всю эту историю с червем, не позволит так быстро уничтожить свое создание. Стратегия ловушки сохраняла эффективность только до тех пор, пока червь сохранял неизменным имя процесса и был запрограммирован не активироваться в уже зараженных системах. Стоило изменить имя процесса или разучить червя самоуничтожаться, и команда SPAN столкнулась бы с новой, еще более серьезной проблемой. У Джона Мак-Магона было предчувствие, что червь в любой момент может вернуться.
   Он как в воду глядел.
   В следующий понедельник Мак-Магону позвонили из офиса проекта SPAN. Закончив разговор, он заглянул в кабинет своего начальника. Джером Беннетт вопросительно посмотрел на него из-за своего стола.
   «Он вернулся, – сказал ему Мак-Магон, и не было нужды объяснять, о ком идет речь. – Я иду в офис SPAN».
   Рон Тенкати и Тодд Батлер уже приготовили для Мак-Магона новую копию червя WANK. Эта версия оказалась гораздо опаснее. Она копировала себя намного эффективнее и, следовательно, продвигалась по сети несравненно быстрее. Скорость проникновения обновленного червя была в четыре с лишним раза выше, чем у первоначальной версии WANK. Снова затрезвонили телефоны. Джон принял звонок одного разъяренного администратора, который обрушил на него целую тираду: «Я запустил вашу анти-WANK-программу, в точности выполнил все инструкции, и посмотрите, что случилось!»
   Червь изменил имя процесса. Он также получил новое указание – преследовать программу-приманку и уничтожать ее. Теперь сеть SPAN могла быть втянута в настоящую кровавую битву. Этот червь уничтожал не только приманку, но и любую другую копию червя WANK. Даже если бы Мак-Магон изменил имя процесса для своей программы, эта стратегия все равно бы не сработала.
   В новой версии червя были и другие усовершенствования. Ранее было известно, что он меняет пароль любой учетной записи, в которую проникает. Уже это было проблемой, но теперь червь менял лишь те пароли, которые предназначались для учетных записей с высоким уровнем доступа. Новый червь был способен не пускать администраторов в их собственные системы.
   Обнаружив, что он не может использовать свою учетную запись, администратор мог попытаться одолжить учетную запись обычного пользователя, назовем его Эдвин. К сожалению, учетная запись Эдвина могла иметь более низкий уровень допуска. Даже в опытных руках возможности учетной записи Эдвина оказывались слишком ограничены для того, чтобы уничтожить червя в его новообретенном высоком статусе администратора. Компьютерщик мог убить бог знает сколько времени, меряясь силами с червем с невыгодной позиции учетной записи обычного пользователя. В какой-то момент ему не оставалось ничего, кроме вынужденного решения отключить всю компьютерную систему.
   Администратор был вынужден произвести перезагрузку машины. Освободить ее для новой загрузки (с восстановлением исходного состояния), затем запустить ее вновь в минимальной конфигурации. Снова прервать запуск. Зафиксировать пароль, который изменил червь. Выйти из системы. Восстановить некоторые настройки. Снова перезагрузить машину. Закрыть любую возможную щель в системе безопасности, которую червь мог оставить после себя. Изменить все пароли, соответствующие именам пользователей. Холостой запуск большой VMS машины требует времени, в течение которого астрономы, физики и инженеры этого офиса NASA не смогут работать за своими терминалами.
   По крайней мере, на этот раз команда SPAN была более подготовлена к встрече с червем. Ее члены были психологически готовы к возможному повторению нападения. Контактная информация по администраторам сети была обновлена. Все сообщество DECNET получило предупреждение о черве с просьбой оказать посильную помощь.
   Она пришла из Франции, страны, к которой, кажется, проявлял особенный интерес автор червя. Системный администратор из Института ядерной физики в Орсэ Бернар Перро [Bernard Perrot] получил копию червя, внимательно изучил ее и подметил слабую способность червя контролировать ошибки. Это была его настоящая ахиллесова пята.
   Червь был натаскан на базу данных RIGHTLIST, представляющую собой список всех, кто имеет учетные записи в этом компьютере. Что если кто-нибудь переименует и переместит базу данных и поставит на ее место фикцию? Теоретически червь должен последовать за куклой, в которую будет встроена скрытая бомба. Когда червь обнаружит приманку и проглотит ее, она взорвется и он издохнет. Если это произойдет, команде SPAN не придется зависеть от самоубийств червя, как это было во время первого вторжения. Они получат удовлетворение от «собственноручного» уничтожения этого создания.
   Рон Тенкати получил копию программы-убийцы французского администратора и передал ее Мак-Магону, который устроил нечто вроде лабораторного мини-эксперимента. Он рассек червя на части и извлек из него необходимые биты, что позволило ему испытать французскую программу почти без риска, что червь сбежит и примется бушевать в системе. Программа работала чудесно. Что ж, вперед! Вторая версия червя была гораздо опаснее, и ее удаление из SPAN заняло куда больше времени, чем в первый раз – почти две недели.
   По оценке Мак-Магона червь нанес ущерб примерно в полмиллиона долларов. В основном он состоял в том, что людям приходилось тратить время и средства в погоне за червем, вместо выполнения обычной работы. Это, на его взгляд, была кража. «Впустую потрачены человеческие ресурсы и время, – говорил он, – и произошло это не случайно. Кто-то намеренно заварил эту кашу. В общем, я поддерживаю уголовное преследование тех, кто считает, что взламывать машины забавно. Эти люди, по-моему, не понимают, какие последствия могут иметь их забавы. Они думают, что если вломиться в машину и ничего не тронуть, то ничего страшного не произойдет. Это не так. Вы тратите чужое время. Людям приходится тащиться в офис в неурочный час. Они вынуждены писать информационные сообщения. Масса криков и воплей. За это надо отвечать перед законом. Таково побочное действие чьей-то веселой прогулки по чужой системе, даже если он не причинил вреда. Кто-то должен за это платить».
   Мак-Магон так никогда и не узнал, кто создал червя WANK. Он также не понял, что автор хотел сказать этой демонстрацией. Мотивы создателя остались неясны, и даже если в них и был политический смысл, он не вызывал уважения.
   Сойдя со сцены, червь WANK оставил массу вопросов, массу запутанных концов, которые все еще пытался распутать Джон Мак-Магон. Может быть, хакер, создавший червя, был против запуска NASA космического аппарата «Галилей» на плутониевом топливе? Что означало совершенно неамериканское слово WANK, – что автор не американец? Почему автор возродил червя и запустил его снова? Почему ни одна политическая или какая-либо иная группа не взяла на себя ответственность за червя WANK?
   Одна из загадок заключалась во второй версии червя. Его создатель изменил исходное имя процесса NETW_, по-видимому, для того, чтобы помешать выполнению анти-WANK-программы. Мак-Магон решил, что исходное имя означало NETWANK – логичная догадка, принимая во внимание намерения хакера. Но новое имя процесса поставило в тупик каждого члена в команде SPAN: оно, по-видимому, не означало ничего. Набор букв вряд ли мог составлять инициалы чьего-либо имени. Никто не признал в этом акроним поговорки или аббревиатуру названия организации. И уж, конечно, такого слова не существовало в английском языке. Осталось совершенно непонятно, почему создатель червя WANK, хакер, устроивший вторжение в сотни компьютеров NASA и Министерства энергетики, мог выбрать такое непонятное слово?
   Это слово было OILZ.

2
Паб на углу

   Твердишь о мире ты для всех,
   А сам готовишься к войне.
Песня «Blossom of Blood», альбом «Species Deceases» [p23] группы Midnight Oil [18]

   Неудивительно, что команда безопасности SPAN попала пальцем в небо. Нет также ничего странного в том, что должностные лица тогда произнесли название версии червя WANK как oil zee. [p24]Также неудивительно их предположение о том, что создатель червя выбрал слово OILZ, поскольку изменения, внесенные им в последнюю версию, сделали червя скользким, как бы маслянистым.
   Видимо, только австралиец мог заметить связь червя с текстами группы Midnight Oil.
   Это был первый в мире червь, несший политическое послание, и второй червь, оставивший заметный след в истории мировых компьютерных сетей. Он дал импульс для создания FIRST (Forum of Incident Response and Security Teams [p25]). FIRST стал первым международным союзом безопасности, который позволил правительствам, университетам и коммерческим организациям делиться информацией об инцидентах в компьютерных сетях. [19]Однако NASA и американское Министерство энергетики ни на шаг не приблизились к поимке создателя червя WANK. Пока следователи распутывали электронные следы, ведущие во Францию, выяснилось, что взломщик прятался за своим компьютером и модемом в Австралии.
   Австралия далеко. В головах американцев эта страна вызывала скорее образы пушистых сумчатых зверушек, нежели компьютерных хакеров. Перед американскими сотрудниками компьютерной безопасности в NASA и Министерстве энергетики вставали и другие препятствия. Сами они функционировали в конкретном мире условленных и состоявшихся встреч, подлинных имен, визитных карточек и официальных должностей. Компьютерное подполье – это тайный мир, населенный персонажами, которые появляются из тени и прячутся в ней же. Здесь не используют настоящие имена и не сообщают о себе никаких сведений.
   У компьютерного подполья нет никакого места в пространстве. Это эфемерный, нематериальный, запутанный лабиринт извилистых улочек, которых нет ни на одном плане. Здесь лишь случайно можно заметить силуэт такого же, как ты сам, путешественника.
   Когда Рон Тенкати, отвечавший в NASA за безопасность SPAN, понял, что компьютеры NASA подверглись нападению, он позвонил в Федеральное бюро расследований. Подразделение по борьбе с компьютерными преступлениями ФБР поставило перед ним массу вопросов. Сколько компьютеров было атаковано? Где они находятся? Кто стоит за нападением? ФБР велело Тенкати «держать их в курсе ситуации». Оказалось, что ФБР (как и команда CIAC в Министерстве энергетики) не очень разбирается в VMS, основной операционной системе, используемой в SPAN.
   Но ФБР знало достаточно, чтобы понять, какую потенциальную опасность представляла атака червя. Запутанный электронный след смутно указывал на иностранную компьютерную систему, и вскоре в дело была вовлечена Секретная служба США. Затем в бой вступила французская контрразведка Direction de la Surveillance de Territoire (DST). [p26]
   DST и ФБР начали сотрудничать в этом расследовании. Сторонний наблюдатель задним числом мог заметить различие мотивов, которыми руководствовались два правительственных агентства. ФБР хотело поймать злоумышленника. DST – доказать, что самое уважаемое космическое агентство подверглось коварному нападению червя WANK не из Франции.
   В лучших традициях правительственных служб плаща и кинжала люди из ФБР и DST установили между собой два канала связи: официальный и неофициальный. Первый включал в себя посольства, атташе, официальные коммюнике и нескончаемые проволочки в получении ответов на простейшие вопросы. Неофициальный канал требовал небольшого числа телефонных звонков и нескольких быстрых ответов.
   У Рона Тенкати был коллега по имени Крис в сети SPAN во Франции. Французская сеть была самой большой сетью SPAN в Европе. Крис занимался не только научными компьютерными сетями, у него были и некоторые контакты в правительстве Франции и какое-то отношение к правительственным компьютерным сетям. В общем, когда ФБР в ходе расследования потребовалась некая техническая информация – тот сорт информации, который мог быть не пропущен посольскими бюрократами, – один из федеральных агентов позвонил Рону Тенкати: «Рон, спроси у своего приятеля об этом».
   И Рон спросил. Крис получил необходимую информацию и перезвонил Тенкати: «Рон, вот ответ. Теперь DST нужно узнать вот это».И Рон в свой черед разыскивал сведения, запрашиваемые DST.