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

We use cookies. Read the Privacy and Cookie Policy

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

НАСА, Годдардовский центр космических полетов, Гринбелт, штат Мэриленд.

В этот день сотрудники огромной империи NASA, простершейся от Мэриленда до Калифорнии и от Японии до Европы, как обычно, здоровались друг с другом, просматривали почту, наливали кофе и садились к компьютерам, чтобы решать очередные сложные научные проблемы. Но многие компьютерные системы повели себя чрезвычайно странно.

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

[p6]

Wanked? Большинство американских администраторов компьютерных систем, прочитавших этот баннер, никогда не слышали слова wank.[p7]

Кто мог решиться на вторжение в компьютерную систему NASA? Кто такие эти «черви», выступающие против «ядерных убийц»? Какая-то группировка полоумных маргиналов? Или NASA угрожают атакой террористы? И почему «черви»? Странный талисман для революционной группы, ведь черви находятся в самом низу биологической пирамиды. И говорится: «Аки червь во прахе».[p8] Кто мог выбрать червя символом власти?

С ядерными убийцами было еще непонятнее. «Твердишь о мире ты для всех, а сам готовишься к войне» – совершенно неподходящая NASA надпись. Агентство не занималось производством ядерных ракет, оно посылало людей на Луну. В некоторых проектах NASA присутствовала «военная составляющая», но все же агентство не занимало место в первых строчках списка «ядерных убийц», уступая другим правительственным институтам США, например, Министерству обороны. Так что вопрос оставался неясным – почему NASA?

А бессмысленное слово «WANKирована»? Что значит «ваша система WANKирована»?

Это значит, что NASA больше не контролирует свою компьютерную систему.

Когда в этот понедельник один из ученых NASA вошел в зараженную систему, то получил следующее сообщение:

deleted file <filenamel>

deleted file <filename2>

deleted file <filename3>

deleted file <filename4>

deleted file <filename5>

deleted file <filename6>

Тем самым компьютер сказал: «Я уничтожаю все твои файлы». Командная строка выглядела так, словно пользователь сам ввел команду

delete/log *.*

и дал команду компьютеру уничтожить все файлы.

Научная сотрудница, сидевшая за терминалом, должно быть, просто остолбенела, наблюдая, как все ее файлы один за другим проходили по монитору дорогой смерти. Наверное, она попыталась остановить процесс, нажав «Ctrl+C». Эта операция должна была разорвать последовательность команд и приказать компьютеру прервать процесс, который он осуществлял в данный момент.

Но компьютером управлял чужак, а не сотрудник NASA. Он сказал компьютеру: «Эта команда ничего не значит. Не обращай внимания».

Сотрудница нажимала клавиши еще и еще раз. Она была совершенно сбита с толку и одновременно крайне расстроена непостижимым поведением компьютера. Она неделями, месяцами корпела над секретами мироздания. И вот результаты работы гибнут у нее на глазах в ненасытной утробе компьютера. Все выходит из-под ее контроля. Уходит. Уходит. Ушло.

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

Представьте, если сможете, что вы управляете одной из локальных компьютерных сетей NASA. В понедельник утром вы приходите в офис, и вам начинают беспрерывно звонить обезумевшие и растерянные работники NASA. Все они уверяют вас, что их файлы, учетные записи и исследовательские проекты – все, что пропало из компьютерной системы, – являются жизненно важными.

В данном конкретном случае проблема усугублялась тем, что научно-исследовательские центры NASA часто состязались друг с другом за получение заданий. Всякий раз, когда на горизонте появлялся какой-нибудь особенно важный космический проект, в борьбу за него вступали два-три центра, в каждом из которых работала не одна сотня служащих. Потеря контроля над компьютерами, потеря всех данных, планов и расчетов могла запросто привести к тому, что центр мог потерять проект и, соответственно, весьма значительное финансирование.

Этот день не предвещал ничего хорошего для парней в офисе компьютерной сети SPAN.

Этот день не сулил ничего хорошего и Джону Мак-Магону [John McMahon].

:)

Джон Мак-Магон работал консультантом по протоколу DECNET. В его обязанности входило управление всей компьютерной сетью SPAN, которая связывала между собой полтора-два десятка зданий Годдарда.

Мак-Магон работал на Проект 630.4, иначе известный под названием Goddard’s Advanced Data Flow Technology Office,[p9] в строении № 28. Сотрудники Центра вызывали его, когда им требовалась помощь с компьютерами. Чаще всего ему приходилось слышать две жалобы: «Кажется, он не работает» и «Я не могу попасть отсюда в тот сектор сети».

SPAN – это Space Physics Analysis Network,[p10] соединявшая 100 000 компьютерных терминалов по всему миру. В отличие от Интернета, в настоящее время доступного любому, SPAN связывала только ученых NASA, Министерства энергетики и исследовательских институтов, например университетских центров. Компьютеры SPAN также отличались от большинства компьютеров в сети Интернет важнейшей технической особенностью – они использовали другую операционную систему. Большие компьютеры в Интернете в основном работают в операционной системе Unix, тогда как SPAN состояла из компьютеров VAX, где применялась операционная система VMS. Эта сеть работала почти аналогично Интернету, но компьютеры говорили на другом языке. Интернет «общается» на языке протокола TCP/IP, SPAN же использует DECNET.

Сеть SPAN и была более широко известна как международная сеть DECNET. Большинство ее компьютеров производились Digital Equipment Corporation (DEC) в Массачусетсе – отсюда и название DECNET. Это были мощные компьютеры. К любому компьютеру DEC в сети SPAN можно было подключить сорок терминалов, а к некоторым из них даже больше. Для компьютера DEC не было ничего особенного в том, чтобы обслуживать четыре сотни человек. В общем, компьютерами этой сети пользовалось свыше четверти миллиона ученых, инженеров и других исследователей.

Инженер-электрик по образованию, Мак-Магон ранее работал в проекте NASA под названием Cosmic Background Explorer project (СОВЕ),[p11] где он осуществлял управление компьютерами пятисот исследователей. В здании № 7 Годдардовского центра, где он работал на проект СОВЕ, проводилась очень интересная работа. Исследователи пытались картографировать Вселенную, надеясь сделать это с помощью волн, невидимых человеческому глазу. NASA запустило спутник СОВЕ в ноябре 1989 года. Его задача заключалась в том, чтобы «измерять рассеянное инфракрасное и микроволновое излучение, возникшее на заре вселенной, насколько позволяет наше астрономическое оборудование».[6] Для дилетанта проект выглядел произведением современного искусства, которое могло быть названо «Карта вселенной в инфракрасном свете».

Но 16 октября, едва Мак-Магон вошел в офис и приступил к работе, раздался странный телефонный звонок из офиса SPAN. Тодд Батлер [Todd Butler] и Рон Тенкати [Ron Tencati] из National Space Science Data Center,[p12] который управлял половиной сети SPAN, принадлежащей NASA, обнаружили в компьютерной сети нечто странное и явно несанкционированное. Это напоминало компьютерного червя.

Компьютерный червь отчасти напоминает компьютерный вирус. Он вторгается в компьютерные системы, создавая помехи их нормальной работе. Он путешествует по любой доступной и совместимой компьютерной сети и стучится в двери систем, связанных с этой сетью. Если в системе безопасности компьютера есть щель, червь обнаружит ее и вползет в систему. Сделав это, он может получить самые различные инструкции – от передачи сообщений всем пользователям компьютеров до овладения всей системой. Главное отличие червя от других компьютерных программ-вирусов заключается в том, что он способен воспроизводить сам себя. Он продвигается вперед, вторгается в новую систему и копирует себя на новом сайте. Другое отличие червя от вируса состоит в том, что он не замкнут рамками файла данных или программы. Он автономен.[7]

Термин «червь» в применении к компьютерам пришел из классического научно-фантастического романа Джона Бруннера «Всадник ударной волны», написанного в 1975 году. В нем идет речь о том, как программист-мятежник создал программу под названием «ленточный червь». Он запустил ее во всемогущую компьютерную сеть, при помощи которой олигархическое правительство управляло своим народом. Чтобы уничтожить червя, правительству пришлось отключить компьютерную сеть, что привело к потере контроля.

Книга Бруннера была так же далека от реального червя-разбойника, как и большинство администраторов компьютерных сетей VMS. До конца 80-х годов о червях были довольно смутные представления, и они преимущественно ассоциировались с исследованиями в компьютерных лабораториях. Например, несколько червей-помощников было разработано исследователями компании Xerox, которые хотели более эффективно использовать возможности компьютеров.[8] Они разработали «червя-глашатая», который передвигался по сети, рассылая важные сообщения. Их «червь-диагност» также постоянно находился в сети, выявляя возникающие неполадки.

Для некоторых компьютерных программистов создание червя равносильно созданию жизни. Сотворить нечто «разумное», способное выжить в мире и воспроизводить себе подобных, – это высшая степень созидания. Породить червя-разбойника, овладевшего компьютерной системой NASA, означало увенчать себя лаврами творческого бессмертия. Еще бы – наследить в компьютерах, которые отправили человека на Луну!

К тому моменту, когда баннер WANK появился на компьютерных экранах NASA, было известно всего два незаконных червя, сколько-нибудь достойных внимания. Один из них, червь RTM, поразил базирующийся на Unix Интернет менее чем за год до описываемых событий. Другой, известный как Father Christmas,[p13] стал первым червем в VMS.

Father Christmas был маленьким, простеньким червем, не особенно вредившим компьютерным сетям, по которым путешествовал. Он был запущен перед самым Рождеством 1988 года, незаметно пробрался в сотни машин VMS и затаился в них до праздника. Рождественским утром он встал пораньше и с большим усердием принялся за работу. Из зараженных червем компьютерных систем неудержимым потоком, подобно тому, как конфетти сыплются на голову с балкона, устремились рождественские поздравления, адресованные всем их пользователям. Ни один из тех, кто был подключен к сети в этот момент, не ушел без рождественской открытки. Сделав свое дело, червь испарился. Джон Мак-Магон входил в состав команды, сражавшейся с Father Christmas.

Спустя считанные дни после Рождества 1988 года около четырех пополудни мониторинговые программы Мак-Магона подали сигнал тревоги. Мак-Магон попытался проследить десятки входящих соединений, которые и вызывали тревожные сигналы. Он быстро обнаружил, что на другом конце линии не было человека. После дальнейших поисков он нашел в своей системе программу-чужака под названием HI.COM. По мере того, как из принтера выползали распечатки с кодом HI.COM, его глаза все больше расширялись. Мак-Магон понял, что это червь, а червя он никогда раньше не видел.

Ринувшись к пульту, Мак-Магон со всей возможной быстротой принялся выключать системы из сети. Может быть, он действовал не по инструкции, но решил, что люди скажут ему спасибо, когда осознают, от какой опасности он их уберег. Отключив свою часть сети, он сообщил об этом в местный офис сети, затем взял распечатку кода червя и отправился в головной офис, где в компании с несколькими другими программистами нашел способ к концу дня покончить с червем. Впоследствии они проследили Father Christmas до того места, где, по-видимому, он был создан и запущен – до Швейцарии. Никто так и не узнал, кто его написал.

Father Christmas был не только простым, но также и неопасным, потому что не старался удержаться в системе навсегда. Это был червь-однодневка.

О возможностях захватчика WANK проектный офис SPAN не знал ничего, в том числе, конечно, и того, кто его создал или запустил. Но имелась копия программы. Не мог бы Мак-Магон взглянуть на нее?

Джон Мак-Магон всегда готов был оказать любезность. Будучи любителем решать сложные загадки, он попросил, чтобы ему прислали копию червя из проектного офиса SPAN, которое очень быстро становилось кризисным центром по отражению нападения. Он принялся просматривать семистраничную распечатку исходного кода захватчика, пытаясь представить себе, на что он способен.

Два предыдущих червя-разбойника работали только в определенных компьютерных системах и сетях. В этом случае червь WANK также атаковал только компьютерные системы VMS. Но исходный код был совершенно не похож на то, что Мак-Магон когда-либо видел. По его словам, анализ напоминал исследование блюда спагетти: «Ты вытаскиваешь одну макаронину и думаешь: „Ага, вот что он делает“. Но потом видишь остальное месиво в тарелке».

Программа, написанная на цифровом командном языке, или DCL, не была аккуратно исполненной и логичной. В ней все было вверх ногами. Джон с трудом пробивался сквозь 10–15 строк компьютерного кода лишь для того, чтобы затем вернуться к началу и попытаться представить, что намерена предпринять следующая часть программы. Он постоянно делал записи, и вот уже медленно, но верно в его голове начало складываться представление о том, что способен сделать этот червь с компьютерной системой NASA.

:)

Это был важный день для активистов антиядерных групп, собравшихся у Космического центра имени Кеннеди. Хотя они и проиграли дело в окружном суде, но не собирались складывать оружие и обратились с жалобой в Апелляционный суд США.

Новость пришла 16 октября. Апелляционный суд встал на сторону NASA.

Манифестанты вновь были силой отогнаны от главных ворот Космического центра. Восемь, по меньшей мере, из них были арестованы. Газета St Louis Post-Dispatch распространила фотографию агентства Франс-Пресс, запечатлевшую, как полиция арестовывает восьмидесятилетнюю женщину за проникновение в запретную зону. Джейн Браун [Jane Brown] из флоридской «Коалиции за мир и справедливость» заявила: «Это только начало… правительственного плана по использованию ядерной энергии и оружия в космосе, в который входит и программа „звездных войн“».

В самом Центре имени Кеннеди дела тоже шли не так уж гладко. В последний понедельник перед стартом технические эксперты NASA обнаружили еще одну проблему. Черный ящик, записывающий данные о скорости и другие важные параметры работы навигационной системы космического челнока, оказался поврежден. Но техники заменили прибор, пресс-секретарь агентства успокоил журналистов, и в NASA решили не отменять запуск, назначенный на вторник. Обратный отсчет не был прерван. NASA все держало под контролем.

Кроме погоды.

Памятуя о катастрофе с «Челленджером», инструкции NASA о подготовке к запуску проявляли особенную строгость. Плохая погода могла все испортить, но прогнозы метеорологов были благоприятными. Шаттл должен был обязательно стартовать вовремя, потому что на следующий день обещали сильную облачность.

Во вторник утром охрана «Галилея» затаила дыхание. Отсчет времени запуска неумолимо приближался к 12 часам 57 минутам пополудни. Демонстранты, казалось, утихомирились. Все выглядело обнадеживающе. «Галилей» мог, наконец, стартовать.

За десять минут до старта сработали сирены систем безопасности. Кто-то прорвался на территорию стартовой площадки. Служба охраны мгновенно пришла в движение и быстро обнаружила нарушителя – дикую свинью.

Свинью благополучно удалили, и отсчет времени продолжил свой бег. Продолжили движение и дождевые облака, плавно двигаясь к запасной взлетно-посадочной полосе космического челнока, расположенной примерно в шести километрах от места старта. У «Атлантиса» было в запасе 26 минут. После этого время запуска истечет, и его придется отложить, скорее всего, до среды. Похоже, погода не собиралась меняться.

В 13 часов 18 минут, когда до старта «Атлантиса» оставалось пять минут, руководитель запуска Роберт Сик [Robert Sieck] перенес запуск на среду.

:)

В центре SPAN царила настоящая лихорадка. Червь внедрялся во все новые и новые системы, и телефоны теперь звонили каждые пять минут. Компьютеры NASA подвергались массированной атаке.

Людям, работавшим в проекте SPAN, не хватало рук. Им нужно было успокаивать звонивших и сосредоточиться на анализе программы-пришельца. Что это такое – розыгрыш или бомба замедленного действия, готовая взорваться? Кто стоит за всем этим?

NASA работало в информационном вакууме, когда червь пошел на приступ. Некоторые сотрудники знали об акции протеста, но никто не был готов к такому повороту событий. Официальные лица NASA были вполне уверены в том, что демонстрации против запуска «Галилея» и нападение на компьютеры агентства связаны между собой. Они были готовы заявить об этом публично. Это казалось достаточно вероятным, но множество вопросов требовали ответа.

Те, кто звонил в офис SPAN, были взволнованы и даже напуганы. Многие звонки поступали от системных администраторов SPAN в отдельных центрах NASA, таких как Маршалловский центр космических полетов. Некоторые из них были в панике, голос других звучал подавленно. Из-за таких вещей управляющий может запросто потерять работу.

Большинство тех, кто звонил в головной офис SPAN, хотели информации. Как этот червь пролез в их компьютеры? Было ли это сделано злонамеренно? Что будет с научными данными? Что нужно делать, чтобы уничтожить червя?

NASA хранило большое количество ценной информации в компьютерах SPAN. Эти сведения не предполагалось засекречивать, но они были чрезвычайно важны. На их сбор и анализ ушли миллионы человеко-часов. Поэтому кризисная команда, сформированная в офисе SPAN в NASA, была крайне встревожена, когда начали поступать сообщения о невероятной по размаху гибели баз данных. Люди звонили, чтобы сказать, что червь стирает файлы.

Для любого компьютерного администратора это было самое ужасное, и все выглядело так, будто наихудшие опасения кризисной команды оказались реальностью.

Кроме всего прочего, червь вел себя непоследовательно. Некоторые компьютеры всего лишь получали анонимные послания, иногда забавные, иногда причудливые, иногда грубые и непристойные. Как только пользователь входил в систему, на мониторе могла появиться надпись:

Помни, даже выиграв крысиные бега, ты все равно остаешься крысой.

Некоторые послания отличались плоским юмором:

Нет ничего быстрее скорости света…

Чтобы убедиться в этом, попробуй открыть дверцу холодильника, прежде чем включится свет.

Другие пользователи столкнулись с протестом параноика против властей:

ФБР следит за ТОБОЙ.

Или:

Голосуйте за анархистов.

Но червь не собирался стирать файлы в этих компьютерах. Возможно, этот трюк с якобы случайным выбором стираемых файлов был лишь предвестником грядущих действий – этакий легкий намек на то, что может произойти, например, в полночь. Возможно, случайный удар по клавише ни о чем не подозревающего пользователя только что зараженной системы мог запустить что-то в самом черве и спровоцировать необратимую цепь команд, которые сотрут все, что только есть в этой системе.

Компьютерная группа SPAN соревновалась с червем в скорости. Каждую минуту, пока они пытались понять, что он сделал, захватчик продвигался все глубже в компьютерную сеть NASA. Каждый час, потраченный NASA в поисках противоядия, червь искал слабые места, взламывал и захватывал компьютерные системы, вытворяя в них бог знает что. Команде SPAN нужно было полностью проанализировать эту штуку и сделать это очень быстро.

Некоторые администраторы компьютерных сетей испытали страшное потрясение. В офис SPAN поступил звонок из Лаборатории реактивного движения (ЛРД) в Калифорнии. Это важный центр NASA, в котором работает 6500 служащих, тесно связанный с Калифорнийским технологическим институтом (Калтех).

Лаборатория реактивного движения отключилась от сети.

Этот червь был слишком опасен. Единственным возможным решением была изоляция компьютеров. К тому времени как кризис окажется под контролем, от коммуникаций, связывающих SPAN (и базирующихся на DEC) и остальные части NASA, не останется ничего. Ситуация становилась все сложнее: «достать» программу-терминатор, не имея доступа к сайту ЛРД и другим сайтам, отключившимся от SPAN, было гораздо более сложной задачей. Все приходилось делать по телефону.

К несчастью, ЛРД была одним из пяти распределительных центров сети SPAN. Лаборатория походила на центр колеса, от которого отходила дюжина спиц, каждая из которых вела к другим сайтам SPAN. Все эти периферийные сайты нуждались в сайте лаборатории для соединения со SPAN. Когда ЛРД отключилась от сети, зависимые сайты сделали то же самое.

Это стало серьезной проблемой для людей из офиса SPAN в Виргинии. Для Рона Тенкати, главы службы безопасности SPAN, отключение распределительного центра было наилучшим выходом. Но его руки были связаны. Офис SPAN выполнял функции центральной власти в обширной зоне сети, но он не мог диктовать свою волю периферийным центрам, каждому из которых приходилось самостоятельно принимать решение. Команда SPAN могла только помочь советом и постараться поскорей найти способ покончить с червем.

Джону Мак-Магону снова позвонили из офиса SPAN, на этот раз с более серьезной просьбой. Не мог бы он прийти и помочь им справиться с кризисом?

Центр SPAN был всего в восьмистах метрах от офиса Мак-Магона. Его босс, Джером Беннетт [Jerome Bennett], менеджер протокола DECNET, согласился одолжить им Мак-Магона до тех пор, пока кризис не будет разрешен.

Когда Мак-Магон прибыл в строение № 26, где размещался офис, управлявший относящимся к NASA сектором SPAN, то вошел в штаб кризисной команды NASA наравне с Тоддом Батлером, Роном Тенкати и Пэтом Сиссоном [Pat Sisson]. Другие ведущие программисты NASA, такие как Дэйв Питерс [Dave Peters] и Дэйв Стерн [Dave Stern], подключались к работе кризисной группы по мере надобности. Джим Грин [Jim Green], глава National Space Science Data Center и главный босс SPAN, требовал ежечасных докладов о развитии ситуации. Сначала в команду входили только сотрудники NASA, в основном из Годдарда, однако с течением времени к команде присоединялись новые люди из других государственных агентств.

Червь распространился и за пределы сети NASA.

Он напал на всемирную сеть HEPNET (High Energy Physics Network[p14]) Министерства энергетики США. Эта сеть наряду с Euro-HEPNET и Euro-SPAN входила в состав всемирной сети SPAN. Компьютерные сети NASA и Министерства энергетики пересекались во многих местах. Например, исследовательские лаборатории могли иметь доступ и в компьютеры HEPNET, и в компьютеры NASA. Для своего удобства лаборатория могла просто соединить обе сети. Все это способствовало размножению червя, поскольку SPAN NASA и HEPNET Министерства энергетики фактически представляли собой единую гигантскую компьютерную сеть, которую червь мог полностью захватить.

Министерство энергетики хранит в своих компьютерах секретную информацию. Там работают в двух направлениях: над проектами использования энергии в гражданских целях и над атомным оружием. Поэтому Министерство энергетики очень серьезно относится к вопросам безопасности, поскольку это – «национальная безопасность». Хотя секретная информация не должна была передаваться по сети HEPNET, Министерство энергетики по-военному четко отреагировало, когда его компьютерщики обнаружили чужака. Они тут же связались с парнем по имени Кевин Оберман [Kevin Oberman], который знал все о компьютерной безопасности систем VMS, и поставили перед ним задачу.

Как и Мак-Магон, Оберман официально занимался отнюдь не проблемой компьютерной безопасности, просто он интересовался ей и был известен своей компетентностью в вопросах защиты систем VMS. Вообще же он работал сетевым администратором в техническом отделе финансируемой Министерством энергетики Ливерморской национальной лаборатории,[p15] расположенной неподалеку от Сан-Франциско.

Ливерморская лаборатория занималась в основном военными исследованиями, в значительной степени связанными с проектом Стратегической оборонной инициативы. Многие ученые лаборатории разрабатывали ядерное и лазерное оружие для программы «звездных войн».[9] У Министерства энергетики была своя команда безопасности, известная как Computer Incident Advisory Capability (CIAC).[p16] Но ее эксперты больше разбирались в Unix, нежели в компьютерных системах и сетях, базирующихся на VMS. «В течение многих лет они почти не сталкивались с проблемами в VMS, – сделал вывод Кевин Оберман, – и этот вопрос их совершенно не заботил. Поэтому у них и не оказалось спецов по VMS».

Червь подорвал безмятежное доверие к компьютерам VMS. Еще когда WANK путешествовал по сетям NASA, он энергично атаковал Национальную лабораторию ускорителей имени Ферми в окрестностях Чикаго, объявившись во множестве компьютерных систем, что очень встревожило сотрудников этой лаборатории. Они позвонили в Ливерморскую лабораторию, и оттуда рано утром 16 октября связались по телефону с Оберманом, попросив его проанализировать код червя. Они хотели знать, насколько опасен незваный гость. Но еще больше их интересовало, что можно ему противопоставить.

Сотрудники Министерства энергетики установили, что первый контакт с червем состоялся 14 октября. Более того, они предположили, что червь был запущен днем раньше – в пятницу 13 октября. Эта зловещая дата, по мнению Обермана, как нельзя более соответствовала черному юмору создателя или создателей червя.

Оберман начал собственный анализ червя, не подозревая о том, что на расстоянии 3200 километров от него, на противоположном побережье материка, его коллега и знакомый Джон Мак-Магон делает то же самое.

:)

Всякий раз, как Мак-Магон отвечал на телефонный звонок сердитого системного или сетевого администратора NASA, он старался получить копию червя из зараженной машины. Он также просил предоставить ему логи[p17] их компьютерных систем. Из какого компьютера явился червь? В какую систему он готовит вторжение из зараженного сайта? Теоретически лог-файлы позволяли команде NASA проследить маршрут червя. Если команда сможет связаться с администраторами на предполагаемом пути червя, те будут предупреждены о грозящей опасности. Можно также обнаружить тех, чьи системы были недавно заражены, и оповестить их о том, что они стали стартовой площадкой для нападений червя.

Но это не всегда было возможно. Если червь захватил компьютер и все еще находился в нем, администратор мог проследить, откуда он пришел, но оставалось тайной, куда он направится. Кроме того, многие менеджеры не сохраняли полные лог-файлы в своих компьютерах.

Мак-Магон всегда знал, что очень важно собирать как можно больше информации о том, кто подключался к компьютеру. На предыдущей работе он модифицировал машины таким образом, что они сохраняли максимум информации, представляющей полезность с точки зрения безопасности соединения с другими компьютерами.

Компьютеры VMS имели стандартные наборы сигнальных программ, но Мак-Магон не считал, что их достаточно. Эти системы лишь отправляли администратору сообщение следующего содержания: «Привет! К вам только что подключились оттуда-то». Модифицированная система оповещения говорила: «Привет! К вам только что подключились из такого-то пункта. Вызванный абонент перекачивает файл». Также она сообщала и другие фрагменты информации, которую Мак-Магон мог выжать из другого компьютера. К сожалению, многие компьютерные и сетевые администраторы NASA не разделяли его энтузиазма по поводу проверок логов. Они просто не сохраняли подробные записи о том, кто и когда имел доступ к их машинам, и это очень затруднило преследование червя.

Но офис SPAN постарался тщательно фиксировать данные о компьютерах NASA, ставших жертвой червя. Каждый раз, когда сотрудник NASA докладывал об очередном вторжении, один из членов команды записывал все детали ручкой на бумаге. Список, включающий адреса пострадавших компьютеров и детальные описания особенностей их заражения, был и в компьютере, но записи, сделанные вручную, казались более надежными. Червь наверняка не ест бумагу.

Когда Мак-Магон узнал, что Министерство энергетики тоже подверглось нападению, он стал связываться с ними приблизительно каждые три часа. Обе группы обменялись списками зараженных компьютеров по телефону, потому что голос, как и слово, написанное от руки, был застрахован от посягательств червя. «Это, конечно, архаичный способ, но, с другой стороны, мы не хотели зависеть от системы и того, что в ней творилось, – рассказывал Мак-Магон. – Нам был необходим способ общения помимо связи через зараженную систему».

Некоторые члены команды компьютерщиков NASA устанавливали контакты с различными подразделениями DEC с помощью общества пользователей продуктами компании (DECUS). Эти контакты оказались очень полезными. Любой запрос мог запросто потеряться в бюрократической системе DEC. В компании работало 125 000 человек, ее обороты исчислялись миллиардами долларов, а прибыль в 1989 году составила двенадцать миллиардов долларов.[10] Такой крупной и солидной корпорации вовсе не улыбалось иметь дело с проблемами вроде червя WANK, особенно в такой находящейся на виду организации, как NASA. Так или иначе, вопрос о степени вины программного обеспечения DEC в победном шествии червя наверняка бы встал. Кризис был, мягко говоря, нежелателен для компании и не украсил бы ее репутацию. Если бы DEC полезла в эту кашу, это могло обернуться для нее большим ущербом.

Ситуация менялась, если у кого-нибудь были приятельские отношения с техническим экспертом DEC. Они могли поговорить по-дружески, не так, как обычно разговаривали менеджеры NASA с сотрудниками DEC, которые полгода назад продали агентству компьютеров на миллион долларов, а как парень из NASA с парнем из DEC, сидевшие рядом на конференции в прошлом месяце. Как коллеги, общавшиеся не один раз.

Анализ Джона Мак-Магона показал, что существуют три версии червя WANK. Эти версии, выделенные из собранных в сети образчиков, были очень схожи, но небольшие отличия все-таки были. По мнению Мак-Магона, эти различия не объяснялись особенностями самовоспроизведения червя на новых сайтах по мере распространения. Но зачем создателю червя понадобилось запускать разные версии? Почему он не написал одну, но чище? Червь не был одиночной ракетой, наносился массированный удар со всех направлений, по всей компьютерной сети NASA.

Мак-Магон предположил, что автор червя запустил три разные версии своего произведения с небольшими временными интервалами. Возможно, создатель запустил червя, а потом обнаружил ошибку. Он немного поработал с червем, чтобы устранить проблему, и запустил его снова. Может быть, ему не понравилось, как он исправил ошибку, и он еще раз изменил его и запустил теперь уже в третий раз.

В Северной Калифорнии Кевин Оберман пришел к другому заключению. Он считал, что существует лишь одна настоящая версия червя, который вгрызался в HEPNET и SPAN. Небольшие вариации в разных копиях, которые он проанализировал, казалось, обусловливались способностями червя к обучению и видоизменению по мере того, как он продвигался от компьютера к компьютеру.

Мак-Магон и Оберман были не единственными сыщиками, пытавшимися разобраться с разными вариантами червя. DEC тоже занялась изучением червя, имея на это веские причины. Выяснилось, что червь WANK пробрался в саму корпорацию и ползает по ее собственной компьютерной сети Easynet, соединяющей заводы, торговые и другие подразделения DEC по всему миру. Компания проявляла осторожность при обсуждении проблемы вне собственных стен, но версия червя в Easynet имела явные отличия. В ее коде присутствовала странная строка, которой не было в других версиях. Ни при каких обстоятельствах червь не должен был вторгаться в компьютеры в зоне 48 сети DEC. Команда NASA задумалась над этим обстоятельством, кто-то проверил, что такое зона 48. Это оказалась Новая Зеландия. Новая Зеландия?

Команда NASA принялась ломать головы. Нападение становилось все более странным. Когда уже казалось, что члены группы SPAN вышли на верный путь к центру лабиринта, они вновь оказывались перед новой загадкой. Вдруг кто-то вспомнил, что заявкой Новой Зеландии на всемирную славу было объявление ее безъядерной зоной.

В 1986 году Новая Зеландия заявила, что отказывается допускать в свои гавани американские суда с ядерным оружием на борту или имеющие ядерные силовые установки. США ответили формальной приостановкой своих обязательств по обеспечению безопасности южно-тихоокеанских государств. Если бы какая-нибудь враждебная страна решила напасть на Новую Зеландию, Штаты со спокойной душой закрыли бы на это глаза. Кроме того, американцы отказались от практики обмена разведывательной информацией и от проведения совместных военных маневров.

Многие в Австралии и Новой Зеландии считали, что Америка отреагировала слишком остро. Новая Зеландия не изгоняла американцев, она просто отказалась подвергать свое население опасностям, связанным с ядерным оружием. И в самом деле, новозеландцы по-прежнему не возражали против существования американской разведывательной базы в Вайхопаи даже после введения США санкций. В стране царили не антиамериканские, а антиядерные настроения.

И у Новой Зеландии были очень серьезные причины для таких настроений. В течение многих лет эта страна боролась с Францией, проводившей испытания ядерного оружия в Тихом океане. В июле 1985 года французские агенты в гавани Окленда взорвали корабль Rainbow Warrior[p18] организации «Гринпис», который с протестующими защитниками природы должен был отправиться к полигону на атолле Муруроа. При этом погиб активист «Гринписа» Фернандо Перейра.

Несколько недель Франция все отрицала. Когда же правда вышла наружу (оказалось, что сам президент Миттеран был в курсе планов спецслужб), французы не знали, куда деваться от стыда. Полетели головы. Министр обороны Франции Шарль Эрню [Charles Hernu] был вынужден подать в отставку, адмирал Пьер Лакост [Pierre Lacoste], глава французского бюро разведки и тайных операций, был уволен. Франция принесла свои извинения и заплатила тринадцать миллионов новозеландских долларов компенсации в обмен на выдачу Новой Зеландией двух диверсантов, каждый из которых был приговорен в Окленде к десяти годам тюрьмы.

В сделку входило обещание Франции подвергнуть этих агентов трехлетнему заключению на военной базе Франции на атолле Хао. Оба агента были освобождены в мае 1988 года, отбыв менее двух лет. По возвращении во Францию один из них, капитан Доминик Приёр [Dominique Prieur], был произведен в майоры.

Наконец-то, подумал Мак-Магон, хоть что-то осмысленное. Исключение Новой Зеландии подкрепило политическое послание червя.

:)

Червь WANK вторгся в компьютерную систему с инструкциями копировать себя и рассылать копии в другие машины. Он проскользнул в компьютерную сеть, найдя лазейку в компьютере, подключенном к сети. В действительности он стремился завладеть привилегированными компьютерными учетными записями, но пока ему пришлось довольствоваться только учетными записями пользователей самого низкого уровня.

В системах VMS есть учетные записи с различными уровнями привилегий. Обладатель учетной записи высокого уровня может, к примеру, прочитать электронную почту другого пользователя или стереть файлы из его директории. Он также может самостоятельно создавать новые учетные записи в системе или сделать активными заблокированные учетные записи. Обладатель привилегированной учетной записи способен менять пароли других пользователей. Тем, кто управляет компьютерными системами и сетями, нужна учетная запись с самым высоким уровнем допуска, чтобы без помех работать в системе. Червь особенно стремился отыскать такие учетные записи, потому что его создатель знал, что именно там – источник власти.

Червь был толков и обучался в процессе передвижения. По мере перемещения по сети он создавал список обычно используемых названий учетных записей. Сначала он старался скопировать список компьютерных пользователей той системы, до которой еще не добрался. Ему не всегда это удавалось, но зачастую система безопасности оказывалась достаточно слаба и червь добивался успеха. Затем он сравнивал этот список со списком пользователей в нынешнем месте обитания. Когда он находил пару (учетную запись, общую для обоих списков), то добавлял эту запись к основному списку, который переносил с собой из системы в систему, и помечал, что эту учетную запись можно будет применить при вторжении в новую систему.

Это был ловкий метод атаки, так как создатель червя знал, что некоторые учетные записи с высоким уровнем допуска вполне могли иметь стандартные названия, общие для разных машин. Учетные записи с такими названиями, как SYSTEM, DECNET или FIELD, и стандартными паролями, вроде DECNET или SYSTEM, зачастую записывались в компьютеры еще до того, как производитель отгружал их покупателю. Если администратор, получивший компьютер, не менял запрограммированные учетную запись и пароль, его машина имела серьезную дыру в системе безопасности, которая так и ждала, пока ею кто-нибудь не воспользуется.

Автор червя мог угадать некоторые названия учетных записей, использованных производителем, но не всех. Наделив червя способностью к обучению, он дал ему мощнейшее оружие. По мере распространения червь становился все умнее и умнее. Он размножался, и его потомство эволюционировало, все успешнее вторгаясь в новые системы.

Когда Мак-Магон вскрыл одного из потомков червя, он пришел в ужас от того, что он обнаружил. Изучив его внутренности, программист обнаружил обширную коллекцию групповых учетных записей с высоким допуском, собранную со всей сети SPAN. На деле червь не только собирал стандартные привилегированные учетные записи VMS, но также уделял внимание учетным записям, обычным для NASA, но вовсе не обязательным для других компьютеров VMS. Например, многие сайты NASA работали с почтовой программой по протоколу TCP/IP, который нуждался в учетной записи POSTMASTER или MAILER. Джон обнаружил эти названия в потомке червя.

Даже если червю удавалось захватить только учетную запись непривилегированного уровня, он использовал ее, как инкубатор. Червь копировался, а затем атаковал другие компьютеры в сети. Когда Мак-Магон и остальные члены команды продолжили разбор кода червя, чтобы понять, что может сделать чудовище, если доберется до учетной записи с самым высоким уровнем допуска, они обнаружили новое доказательство черного чувства юмора хакера, скрывающегося за червем. Одна из его подпрограмм называлась find fucked.[p19]

Команда SPAN постаралась дать сотрудникам NASA максимум сведений о черве. Это был лучший способ помочь компьютерным администраторам, изолированным в своих офисах по всей стране, обрести чувство, что кризис остается управляемым.

Как и все в команде SPAN, Мак-Магон старался успокоить звонивших, после чего подвергал их опросу, с помощью которого рассчитывал определить степень контроля червя над их системами. Сначала он спрашивал, какие симптомы обнаруживали их системы. В кризисной ситуации, когда молоток занесен, все кажется гвоздем, поэтому Мак-Магон хотел убедиться, что сбой в системе действительно спровоцирован червем и ничем иным.

Если бы проблема заключалась только в странных комментариях, появляющихся на экране, Мак-Магон сделал бы вывод, что червь, возможно, лишь пугает пользователя этого компьютера из соседней системы, которую он уже успешно захватил. Послания наводили на мысль, что учетные записи принимающих их машин еще не захвачены червем. Во всяком случае, пока.

Машины VAX/VMS обладают функцией, называемой Phone, использующейся для онлайновой связи. Например, ученый NASA может «позвонить» одному из своих коллег на другой компьютер и по-дружески побеседовать с ним в режиме реального времени. Это живое общение, но происходит оно посредством клавиатуры и монитора, а не голоса. Функция Phone в VMS позволила червю отправлять послания пользователям. Он просто «звонил» им, используя этот протокол. Но вместо начала сеанса связи он посылал им сообщения из той своей части, которая, как выяснилось впоследствии, носила вполне подходящее название Fortune Cookie[p20] и представляла собой собрание приблизительно шестидесяти запрограммированных высказываний.

В некоторых случаях, когда червь сильно досаждал персоналу, Мак-Магон советовал менеджеру на другом конце провода отключить в компьютере функцию Phone. Некоторые менеджеры жаловались, и тогда Мак-Магон ставил перед ними ультиматум: Phone или спокойствие. Почти все предпочли спокойствие.

Когда Мак-Магон закончил предварительный анализ червя, у него появились хорошие и плохие новости. Хорошей новостью был тот факт, что, вопреки тому, что червь сообщал пользователям из NASA, он вовсе не стирал их файлы, а только делал вид, что стирает их. Просто шутка. Во всяком случае, для создателя червя. А для ученых NASA – головная и сердечная боль. А порой и сердечный приступ.

Плохая новость заключалась в том, что когда червь сможет получить контроль над учетной записью пользователя с высоким уровнем доступа, он поможет кому-то – предположительно, своему создателю – совершить гораздо более серьезное вторжение в NASA. Червь нашел учетную запись FIELD, созданную производителем, и если ее отключить, он постарается вновь активировать ее и установить пароль FIELD. Червь был также запрограммирован на изменение пароля стандартной учетной записи DECNET случайным набором из по меньшей мере двенадцати символов. Короче говоря, червь старался вломиться в систему с черного хода.

Информацию о тех учетных записях, которые он успешно взломал, червь посылал назад, в электронный почтовый ящик – учетная запись GEMPAK на узле 6.59 SPAN. Предположительно, хакер, создавший червя, должен был проверять его почтовый ящик, чтобы получить информацию, которую он мог бы использовать позже для проникновения в учетную запись NASA. Стоит ли удивляться, что почтовые ящики, к немалому удивлению их законных владельцев, были тайком «позаимствованы» хакером.

Компьютерный хакер создавал массу дополнительных проблем. Хотя червь был способен взламывать новые учетные записи с гораздо большей скоростью и размахом, чем одинокий хакер, он был более предсказуем. Как только команды SPAN и Министерства энергетики разобрали червя на составляющие, они совершенно четко представили, что от него можно ожидать. А вот действия хакера было совершенно невозможно прогнозировать.

Мак-Магон понял, что уничтожение червя не сможет решить проблему. Всем системным администраторам сетей NASA и Министерства энергетики придется поменять пароли учетных записей, захваченных червем. Им придется также проверить каждую систему, подвергшуюся нападению, чтобы убедиться, что червь не оставил в ней лазеек для хакера. Администраторам нужно найти и запереть на замки все черные ходы – адский труд.

Но больше всего команду SPAN напугало то, что червь свирепствовал в системе NASA, используя примитивнейшую стратегию атаки: имя пользователя равняется паролю. Он получил контроль над компьютерами NASA, просто вводя пароль, идентичный названию учетной записи пользователя.

Команда SPAN не могла поверить в это, но факты – упрямая вещь.

Тодд Батлер ответил на звонок с одного из сайтов NASA. Новости были удручающие. Он повесил трубку.

– Этот узел только что подвергся нападению, – сказал он остальным.

– И насколько все плохо? – спросил Мак-Магон.

– Привилегированная.

– Черт!

Мак-Магон бросился к одному из терминалов, набрал SET HOST, получив доступ к удаленному компьютеру сайта NASA. Готово.

«Ваша система официально WANKирована».

Мак-Магон повернулся к Батлеру.

– В какую учетную запись он проник?

– Они думают, что это SYSTEM.

Специалисты ничем не могли помочь. Глупость ситуации напоминала черную комедию.

Сайт NASA имел пароль SYSTEM для учетной записи высшего допуска SYSTEM. Это было просто невероятно. NASA, возможно, самое большое в мире сообщество специалистов, обладало такой расхлябанной системой компьютерной безопасности, что любой мало-мальски разбирающийся в компьютерах тинейджер мог без труда ее вскрыть. Этот колосс был сокрушен компьютерной программой, похожей на тарелку спагетти.

Первое, что может узнать любой системный администратор из инструкции по компьютерной безопасности № 101, – никогда не использовать пароль, идентичный имени пользователя. Достаточно скверно, что наивные пользователи могли угодить в эту западню… но не администраторы же компьютерных систем с учетными записями высокого уровня допуска!

Каковы были намерения хакера? Возможно, не такими уж злодейскими. Если бы он захотел, он мог бы запрограммировать WANK на уничтожение всех файлов NASA. Он мог бы снести их в один момент.

На деле червь оказался гораздо менее заразен, чем хотелось его автору. WANK получил инструкции на выполнение нескольких задач, которым он не повиновался. Важные составляющие червя попросту не работали. Мак-Магон пришел к выводу, что это случайная неудача. Например, его анализ показал, что червь был запрограммирован взламывать учетные записи в тех случаях, когда пользователь оставил место пароля пустым. Когда он разобрался в черве, то обнаружил, что эта часть программы не работала должным образом.