Продолжая использовать наш сайт, вы даете согласие на обработку файлов cookie, которые обеспечивают правильную работу сайта. Благодаря им мы улучшаем сайт!
Принять и закрыть

Читать, слущать книги онлайн бесплатно!

Электронная Литература.

Бесплатная онлайн библиотека.

Читать: Червь Морриса 2.0 - Артак Оганесян на бесплатной онлайн библиотеке Э-Лит


Помоги проекту - поделись книгой:

Артак Оганесян

Червь Морриса 2.0

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

– Ми-иша, притормози! – крикнул я сыну. Сам остановился, встал на одну ногу, отпустил руль велосипеда и ответил на звонок.

– Атака уровня 3 или даже 2, – раздался в наушнике голос асссистента.

– Открываю ленту, – я быстренько вытащил из плотно прилегающего кармашка велосипедных шорт смартфон и принялся пролистывать заголовки сообщений. Если верить им, началась большая заваруха. Давно уже не было таких дерзких масштабных нападений на Интернет!

– Собирай всех в офисе! Буду примерно через час… Да, и подключи группу быстрого реагирования на телеконф минут через десять.

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

– Вызову такси, вернёшься к маме. Извини, дружище, сам слышал – срочное дело.

– Пап, мама не в Москве, так что я у тебя до вечера воскресенья.

– Тогда держи мои ключи, посидишь дома один․ – Я потянулся было к другому кармашку, но сын отмахнулся.

– А может, возьмёшь к себе на работу? Помнишь, ты всё обещал.

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

–Ты сам рассказывал мне, как играл с перфокартами у своего отца на работе, про машинные залы с магнитными лентами, телетайпами…

– Ну ты вспомнил нафталиновые времена! Сейчас везде обычные компьютеры и принтеры, какие у каждого дома…

– А ещё ты описывал, как играл в пакмена на первых персоналках…

– Миш, там всё горит, – перебил я, – критична каждая минута, все антивирусники уже кинулись в борьбу, мне нужно спешить.

– Пап, могу я посмотреть, как ты работаешь начальником?! – И он сморщил нос. Когда Мишка был маленьким, он не только смешно морщил нос, но и начинал часто моргать, и, глядя на эту мультяшную мордочку, невозможно было ему отказать. А сейчас… уже не Мишка, а Михаил. Вымахал пацан! Столько лет прошло после развода, а меня всё не покидает чувство вины, что уделяю ему мало времени.

– Так и быть, увидишь отца в боевых условиях! Хотя… что там боевого, всё будет тихо-мирно. Это пожарные и скорая спасают планету с мигалками и движухой, а мы – без ажиотажа.

Вдвоём мы легко установили велосипеды в крепления на крыше машины. Только я сел за руль, как на приборной панели отобразился вызов на телеконференцию. Голос дежурного менеджера заполнил салон:

– Ребята, пока вы все мчитесь сюда, введу в курс дела. Атаковано несколько сот тысяч узлов Сети, то есть речь уже идёт о миллионах заражённых компьютеров.

– В чём вредоносность этого вируса? – спросил один из аналитиков.

– Нет инфы. Известно, что это не вирус, а червь. Американцы установили, что он попал в Сеть из Массачусетского университета, но туда его подбросили либо китайцы, либо мы, русские.

– Они подкрепили чем-то свои подозрения? – поинтересовалась ведущая тестировщица.

– Пока нет.

– С какой скоростью распространяется?

– С момента первого сообщения о его появлении прошло три с небольшим часа. И он цепляет не только компьютеры, но и смартфоны с планшетами.

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

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

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

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

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

– Оба наших терминала, подключённых к нью-йорскому сегменту сети, заразились!

– Отловили, как червь проник?

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

– Да, помню, но ведь все производители браузеров сразу выпустили заплатки?

– Ну ты знаешь, – улыбнулся мне один из программистов, – они-то выкатили, но пока сисадмины и безопасники корпоратов одобрят исправления…

– Знаю-знаю. – А ещё я представил армию домашних компьютеров, на которых беспечные пользователи редко обновляют софт, и посетовал в голос: – Кто-то вовремя подсуетился, узнав про уязвимость защиты, воспользовался люком.

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

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

– Кто этот молодой человек? – кокетливо спросила незнакомая мне девушка, из новеньких, наверное. Она сидела рядом и прислушивалась к нашему диалогу.

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

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

Но тут прозвучало объявление, и все вернулись к проблеме։

– Эвристический сканер обнаружил, что червь смело обращается к веб-сервисам… не поверите – нашим же. К программным интерфейсам, которые органы обязали нас, антивирусные компании, открыть им, органам, для доступа извне.

– То есть авторы червя либо из нашего брата, переметнувшиеся на тёмную сторону, либо имеют отношение к спецслужбам…

– Зачем червяку стучаться в эти АПИ, там же ничего нет, кроме базы сигнатур? – мыслил вслух разработчик нашего такого интерфейса.

– Может, чтобы самомодифицироваться, если вдруг выявит, что сигнатура его кода уже в базе? – предположил другой разработчик.

– Крутая идея! – похвалили его, – Полиморф, который на лету определяет… Ёшкин кот, это как преследуемому прослушивать эфир полицейского канала.

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

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

– Ещё удивляет, что он не оставляет следов на диске, пока что замечен только в оперпамяти.

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

– Так и делаем, запускаем поведенческий анализ в заражённой среде.

Я решил не мешать команде, взял сына под локоть и повёл из «стекляшки» на кухню.

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

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

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

– А что ты сейчас делаешь? – спросил меня Миша. Первым порывом было сказать ему «погоди, потом», но я сдержался.

– Ребята сделали дамп памяти. Это как бы слепок сняли или снимок сделали…

– Я знаю это слово, пап, мы проходим информатику в школе.

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

– Вы глазками будете всё смотреть? – удивился сын.

– Нет, конечно, есть утилиты для сверки памяти с эталонными образцами, чтобы увидеть разницу до вторжения червя и после.

– А ты сам что делаешь?

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

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

Разработчик в майке с надписью «In code we trust» («Мы верим в код»), пристроившийся рядом со мной, хрустел вафлями. Доев очередную, он выдал характеристику:

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

– Думаешь, червь безобидный? – спросил я.

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

– Папа писал на ассембелере, – хвастливо заметил Миша.

– Респект! Сейчас таких профи осталось мало, – отозвался парень, дожевал кусок и, отряхнув руки о штаны, продолжил стучать на клавиатуре.

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

– Кто-то пытался расшифровать этот кусок? – и я озвучил адреса байтов.

– Да, это подбор паролей, – не отрываясь от своего экрана, ответила ведущая аналитик, – там массив из 432 слов.

– 432?! – удивился я.

– Да, а что?

– Червь Морриса! – воскликнул я. – Он использовал ровно столько наиболее употребительных слов, чтобы вскрывать пароли аккаунтов.

Все взоры обратились ко мне.

– Возвращение великого интернет-червя? – задал кто-то с пафосом вопрос.

– Ха! Вот что имелось в виду под «Моррис 2.0»! – усмехнулся другой. – Я тут в форуме увидел, не понял, к чему они так назвали.

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

– Юзеры в постах жалуются, что время от времени эта зараза как бы выключает дисплей и пишет зелёными символами на чёрном фоне: «I’M THE CREEPER… THERE IS MY REAPER?» Даже не знаю, как перевести эту ерунду на русский.

– Первым известным вирусом был The Creeper, – поделился я вслух своими знаниями, – в переводе с английского «проныра» или «ползучее растение». Он печатал сообщение: «Я – ПРОНЫРА… ПОЙМАЙ МЕНЯ, ЕСЛИ СМОЖЕШЬ». Его обезвредила другая программа, первый антивирус под названием The Reaper, то есть «Жнец» или «Смерть с косой».

– Этот наглец бросил вызов! – не будь Миши рядом, я бы не стал столь театрально продолжать, но момент оправдывал очевидную патетику: – мы должны первыми выпустить алгоритм обнаружения и обезвреживания!

Миша вполголоса спросил меня:

– А почему бы всем фирмам не объединить усилия? Быстрее же добьётесь результата.

– С одной стороны, так оно и есть, а с другой – это гонка, кто первый – о том все будут говорить, к тому побегут пользователи покупать его антивирусный продукт.

– Меркантильненько, – оскалился Миша.

– И да, и нет. Я бы хотел, чтобы наша команда была первой не только потому, что успех принесёт нам новый бизнес, но и потому что каждый почувствует себя героем дня.

– А ты был героем дня?

– Да, бывало.

– Расскажи.

– Давай потом, сейчас не время…

– Расскажи сейчас, пожалуйста, – Миша заглянул мне в глаза. Что с ним сегодня такое? Ладно, пока команде от меня ничего не требуется, поведаю о былых временах.

Мы покинули переговорку и отошли в пустующую половину зала, присели на столы напротив друг друга, и я начал:

– Тебе было лет пять…

– То есть до вашего с мамой развода.

– Верно.

– И?



Поделиться книгой:

На главную
Назад