В понедельник утром исполнилось ровно две недели, как я здесь работаю. Я казался себе не таким уж волшебником…
Я подробно, как первокурсник, записал в журнал все события. Не то чтобы я намеревался использовать эти записи – просто хотелось попрактиковаться в текстовом процессоре Макинтоша. И еще я помнил «Правило большого пальца для астрономов»: все, что не записано – не существовало.
Босс потребовал меня к себе, как только пришел.
Я думал, что он в ярости из-за этих терминалов. Руководство у нас добродушное, но даже волшебникам не полагается тащить без спроса груды оборудования. Но Рой даже не заикнулся о терминалах. Его интересовал хакер.
– Когда он возник?
– В воскресенье, в пять утра, на три часа.
– Стер что-нибудь?
– Уничтожил одну программу, которая, как ему казалось, следит за ним.
– Опасность реальна?
– Он – суперпользователь. Может уничтожить все файлы.
– Можно с ним покончить?
– Наверное. Мы знаем одну дырку; можно легко заштопать.
– Полагаете, это его остановит?
Я мог догадаться, куда он клонит. Рою не хотелось захлопывать двери. Он знал, что мы можем легко аннулировать права доступа Свентека. А теперь, когда мы знаем про дыру, то и привести в порядок «Гну Эмакс»: достаточно добавить в программу пару строчек для проверки каталога назначения. Первое, что приходит в голову – прикрыть лавочку. Мы знаем, как хакер проникает в систему, и знаем, как его вышвырнуть оттуда. Но какие подарочки оставил нам наш загадочный гость? У каких еще пользователей он срисовал атрибуты доступа? В какие еще компьютеры вломился? Именно от этого болела голова. Распечатка показала, что хакер – весьма компетентный программист-системщик, способный использовать малейшие плюхи, о которых мы и понятия не имели. Что же он еще натворил?
Если вы – суперпользователь, то можете изменять любые файлы. Не перекурочил ли хакер системные программы, открывая себе черный ход? Не поставил ли заплату на систему, чтобы она распознавала его волшебный пароль? Не занес ли компьютерный вирус? В персональных компьютерах вирусы распространяются путем копирования самих себя в другие программы. Если вы передаете кому-нибудь зараженную дискету, вирус копирует самого себя в другую программу, распространяясь с дискеты на дискету. Если вирус доброкачественный, то его трудно обнаружить, правда, и особого вреда он не приносит. Но нетрудно соорудить злокачественный вирус, копирующий самого себя и стирающий файлы данных. Так же просто создать вирус, который будет спать несколько месяцев и в один прекрасный день вдруг взорвет все вокруг. Вирусы – это существа, преследующие программистов в их ночных кошмарах.
Обладая правами суперпользователя, хакер мог заразить нашу систему так, что ее потом уже никогда не вылечишь. Его вирус мог скопироваться в системные программы и затеряться в дебрях компьютерной памяти. Копируя себя из программы в программу, он увернулся бы от любой попытки его уничтожить.
В персональном компьютере можно заново установить операционную систему после ее уничтожения. Наша же подвергалась очень сильным изменениям. Мы не можем обратиться к изготовителю и сказать: «Дайте нам исходную копию». При заражении можно только реинсталлировать систему с лент, хранящих копию возобновления. Если вирус занесен шесть месяцев назад, то эти ленты тоже заражены.
Может, он поставил нам логическую мину – программу с «часовым механизмом», которая рванет когда-нибудь в будущем? Или, возможно, этот незваный гость «расстрелял» наши файлы, «убил» парочку заданий и «развинтил» систему учета. Не натворил он чего поужасней?
Можно ли доверять программам и данным? Мы не могли. Если вдруг он нашел другой способ взлома, то попытка вышвырнуть его не сработает. Необходимо выяснить, кто он, что натворил и что собирается делать.
– Скорее всего, это какой-нибудь студентик университета Беркли, – сказал я Рою. – Все они ЮНИКСовские волшебники и держат нас за идиотов.
– Я не очень в этом уверен, – сказал Рой, откинувшись в кресле. – Почему некто из Беркли вламывается через Тимнет, когда мог бы без труда набрать номер нашей системы и подключиться по телефону?
– Может быть, Тимнет – это крыша, – возразил я. – Укрытие. Если бы он прямо набрал номер лаборатории, то мы бы его накрыли. Но теперь нам надо следить и за Тимнетом, и за телефонными подключениями.
Мои размахивания руками не убедили босса. Может быть, научный опыт, а может быть, природная склонность к сомнениям развили в Рое критический склад ума: он не согласится, что это студент, пока его сюда не притащат. Уикендовские распечатки показали, что это, несомненно, хороший программист, но его можно было искать где угодно. Чтобы выследить парня, надо висеть на телефонных каналах. Изрядная работенка.
Рой принял решение не принимать решения. «Давай перекроем на день все сетевые подключения. Завтра утром я поговорю с директором лаборатории. Подумай, что надо сделать. Мы можем подождать, но рано или поздно мы сядем на хвост этому парню или просто вышвырнем его.»
Мне сильно надо гоняться за кем-то? Это отвлечет меня от программирования. Вряд ли ловля хакера имеет много общего с астрономией или физикой. Больше похоже на игру в прятки или в сыщика и вора. Но есть в этом деле и плюс – я могу изучить телефонные каналы и принципы работы сетей. Представляю себя ребенком, ворвавшимся в мамочкину спальню с воплем: «Ни с места! Бросай клавиатуру!»
Во второй половине дня во вторник позвонил Рой: «Директор сказал: „Это электронный терроризм. Бери все, что нужно, но поймай этого ублюдка. Забирай все машинное время. Потрать три недели. Схвати его за хвост!“»
За мной стоит все рассвирепевшее руководство. Вперед!
Я рулил домой, изобретая хитроумные ловушки для хакера. По мере приближения к дому мои мысли устремились в направлении ужина. Здорово, если к ужину меня ждут!
Вот уже несколько лет Марта Мэтьюс и я жили вместе. До этого мы были друзьями и настолько хорошо знали друг друга, что не могли даже представить, что когда-то были незнакомы. Мои приятели только руками разводили. Они не предполагали, что я способен оставаться с одной и той же женщиной столько лет. Я влюбился, ухаживал, затем мы почувствовали, что не можем обходиться друг без друга. Обычно я сохранял хорошие отношения с бывшими возлюбленными, но не делал попыток к продолжению романов. Цинизм и сарказм защищали меня. Но с Мартой – другое дело. Постепенно между нами исчезали все барьеры. Она настаивала, чтобы мы обсуждали наши разногласия, хотела знать причины моего настроения, требовала, чтобы мы оба думали о том, как лучше ладить. Иногда это трудно было вынести – я терпеть не мог ничего обсуждать, когда был раздражен, – но обычно действовало благотворно. У меня появился инстинкт построения гнезда. Мне нравилось в свободное время бродить по дому и устранять всякие там неполадки, ремонтировать выключатель, менять лампочки или чинить витражи из цветных стекол. Мы провели много уютных вечеров вдвоем: она – за шитьем, я – за чтением. Иногда играли в скрэббл. Я начинал чувствовать…
Жениться? Мне?! Нет. Ни за что. Брак – это конец, ловушка для дураков. Когда вы женитесь, от вас ждут, что вы останетесь на всю жизнь таким, как в первый день. Если дойдет дело до ругани, то смыться невозможно. И надоест видеть одно и то же лицо каждый день. Тоска и пошлость.
Жить вместе – совсем другое дело. Оба свободны. Мы добровольно выбираем, продолжать ли совместную жизнь. Мне так лучше, и Марта, кажется, довольна.
Я спрашивал себя, не расстроится ли она, если следующие несколько недель я буду ночевать на работе. За три недели надо отловить хакера. А реально? Пара дней уйдет на подготовку, еще несколько – на выслеживание в сети и захват с поличным. Вероятно, придется сотрудничать с полицией, значит, еще день или два. За две недели, наверное, управимся, и я смогу вернуться к обслуживанию компьютеров, а, может быть, займусь астрономией.
Мы должны сплести сеть, достаточно мелкую для хакера и достаточно крупную для наших ученых мужей. Я должен обнаружить хакера, как только он подключится к линии, и позвонить ребятам из Тимнета с просьбой отследить его.
О проекте
О подписке