Я люблю тебя, Мелани
<p align="justify" style="color: rgb(0, 0, 0); font-family: "Times New Roman"; font-size: medium;">
Окола часа пополудни небольшой крытый тентом грузовичок Kingo выехал за ворота строящегося участка в районе Довье и, загудев электродвигателем, двинулся в сторону шоссе. В кузове, схваченный тросами, застыл ящик, полный гвоздей, металлолома и битых бутылок. В куче этого хлама притихли полтора килограмма взрывчатки SuperB.
Отразив капотом по-августовски флегматичного солнечного зайца, автомобиль вывернул на большую дорогу и остановился на минуту — водитель копался с плеером, у которого опять отвалились плагины. Рухлядь!
Потом он высунулся в окно, чтобы окинуть взглядом огороженный глухим забором участок и покачать головой каким–то своим мыслям. Хмыкнул и двинулся в сторону города.
Это был самый обычный китайский грузовичок, какие сотнями снуют по улицам с утра до вечера, развозя товар по магазинчикам, лавчонкам и забегаловкам. Поэтому полицейский пост на въезде в город не обратил на него никакого внимания.
Мишель быстро определил, что это RADOS — специализированная операционная система реального времени. Программист и хакер с тринадцатилетним стажем, он уже сталкивался с такой штукой, но подобные системы никогда его особо не интересовали: они обычно используются там, где требуется контроль над кучей периферии; ничего интересного, пока не знаешь, что обслуживает ОС — полицейское управление, атомную электростанцию или испытательный полигон. Как бы то ни было, хорошо, что он заполучил в своё распоряжение машину на подобной системе — устойчивость, быстродействие и гибкость ему обеспечены.
Он проверил порты. Похоже, к ним были подключены пара мониторов и десяток каких–нибудь датчиков — не интересно. А главное, ничего не поймёшь, пока не знаешь цели или не увидишь систему вживую.
Где–то, разумеется, есть сервер, собирающий информацию с клиентов подобных этому. Выйти на него с такого клиента, пожалуй, нельзя, если это рядовой контроллер, а не терминал. Но Мишель всегда исходил из принципа «возможно всё, пока не доказано обратное».
Благо, в стандартной поставке RADOS имеется интерпретатор Scheme. Мишель набросал небольшой скрипт, который подберёт нужную комбинацию данных для обращения к серверу, если протокол окажется нетипичным.
Скрипту довольно быстро удалось нащупать нужную комбинацию и сформировать запрос — протокол использовался стандартный. Сервер отозвался и разрешил доступ в локальную сеть. Лёгкость получения доступа убедила Мишеля в том, что клиент — маловажная персона, что никому и в голову не приходила необходимость защитить его от управления извне, что место его работы — не атомная электростанция и даже не захудалый полицейский участок, а что–нибудь вроде школы. Стои́т этакий старый замученный Conrad‑700 в кабинете физики или химии — бедолага, которому никакая защита не снилась и в самом сладком сне и чья жизнь закончится во время показа очередного химического фокуса десятку–другому вундеркиндов, когда он засбоит и перепутает водород с кислородом…
Но нет, это не школа, а что–то более серьёзное, судя по размаху локальной сети, которую ему не удалось охватить одним взглядом. Тем не менее, портировщиков системы её внутренняя безопасность, кажется, не волновала. Как будто никакая секретная информация не обращалась в этих потоках битов; не скрывались в океане байтов замаскированные рифы баз данных, на его дне не хранили свои тайны затонувшие корабли секретных депеш, не сторожили их диковинные монстры глубин в виде защитных модулей, не сиял во тьме одинокий маяк супервайзера. И это хорошо.
А главное, у сервера был выход в глобальную сеть, во внешний мир. А когда есть выход, что ещё нужно! Мурлыча «Братец Жак», он толкнул эту дверь.
Женевьева выключила компьютер. Подошла к окну и долго смотрела на улицу, на дома напротив, редких прохожих, летнее кафе на углу Камю. Вздохнула, отхлебнула давно остывшего кофе, поморщилась.
День выдался хороший, тёплый августовский день. Скоро придёт сентябрь, ещё немного побалует солнцем, а потом зарядят дожди по неделе и с моря будет дуть промозглый ветер.
— Мелани, — окликнула она, — ты не забыла, что мы должны ехать?
— Не забыла, мамочка, — отозвался жизнерадостный голосок. — Я уже иду.
Шесть лет, господи, ей уже шесть лет! Или — ещё только шесть?.. Ну, это как посмотреть. Это как со стаканом, который то ли наполовину пуст, то ли наполовину полон.
Что же делать, как жить дальше? Нет, она не ропщет, не жалуется — что толку жаловаться… Разумеется, она положит жизнь на то, чтобы Мелани выросла из нежной весёлой попрыгуньи в разумную, приспособленную к этому непростому миру взрослую женщину, но… Ах, Мишель, Мишель, как ты мог?!
— Готова? — улыбнулась она навстречу дочери.
— Мама, а можно, я расскажу Пьеру про Мюэтту?
— Пьеру? Пьер — это?..
— Ну ты же помнишь, мамочка, не притворяйся! — возмутилась Мелани.
— Ах, Пьер! — улыбнулась Женевьева. — Ну конечно, помню. Только давай поговорим об этом, когда вернёмся, хорошо?
— Ага.
— Как ты сказала?
— Да.
Когда дочка устроилась на заднем сиденье их маленькой машины, Женевьева проследила за тем, чтобы она хорошенько пристегнула ремень. Потом посмотрела на себя в зеркало заднего вида. И надела чёрные очки.
— Ну ладно, поехали, детка… Сначала где-нибудь перекусим.
Водитель Kingo прикурил сигарету и глубоко, с удовольствием, затянулся. Смотри, как разошёлся день! А ведь утро не предвещало ничего подобного, обычное пыльное утро. Но потом этот звонок… Двести франков за полтора часа работы — нормально, а? Нормально, ребята, очень даже ничего!
Шумно и со смаком выпустив из лёгких дым, чувствуя, как жизнерадостно зачастило сердце, он увеличил звук в проигрывателе и прибавил газу. Теперь до города он будет ехать по прямой. Домчит в мгновенье ока, под свой любимый Deep Purple. Заказчик с денежками будет ждать в кафе напротив «Этуаль». Если не будет, надо постоять, он подъедет самое позднее в четверть третьего.
И привезёт две сотни…
Жизнь хороша, ребята! Ух, насколько она бывает хороша!
Базу данных своего провайдера он взломал давно, ещё когда искал того идиота, что изводил Женевьеву похабными письмами. Теперь ему надо было лишь найти в базе Мелани и подключиться к порту, на котором сидел управляющий бот. Нет, он, конечно, не следил исподтишка за дочерью, глупости, но он должен быть на всякий случай уверен, что всегда получит доступ к её компьютеру в случае необходимости.
Бот отозвался на запрос, предоставил Мишелю права администратора, показал системные тесты, открыл аудио–видео.
И он вдруг увидел лицо дочери. Мелани смотрела прямо на него. Разумеется, она смотрела не на него, а в видеокамеру, но от неожиданности он чуть не вздрогнул.
— … однако король Жан-Луи не узнал об этом, потому что заболел и ушёл лечиться, — услышал он конец фразы. Наверное, дочка общалась с кем–то. Или делала запись для видеоблога. В свои шесть лет она много чего могла и хотела сказать миру, этот человечек. Мишель улыбнулся, чувствуя, как щемит сердце от нежности.
— Мелани, — услышал он голос жены из другой комнаты, — ты не забыла, что мы должны ехать?
— Не забыла, мамочка, — отозвалась дочь. — Я уже иду.
Она закрыла окно записи и устремилась к выходу. Остановилась на минуту у зеркала, чтобы пробежаться щёткой по волосам и с комично-взрослой женской серьёзностью оглядеть своё отражение. Потом, прежде чем Мишель успел взять управление видеовыводом, вернулась к компьютеру и коснулась сенсора «сна». Изображение пропало, исчезло соединение.
Ладно, хорошо, можно попробовать зайти на компьютер жены. Но там он не ставил своего демона, и самолично настраивал защиту, так что всё, что он сможет получить — это пару пинков под зад.
На то, чтобы найти в базе данных Женевьеву, ушло несколько секунд. Её компьютер был не в сети. Ну разумеется, жена его человек ответственный, она не оставит железяку включённой, если отправляется дальше входной двери. Ну а в кого Мелани, я вас спрашиваю?
Зато в сети был другой, странным образом имевший в базе данных тот же самый ID, что и компьютер Женевьевы… И что бы это значило?.. А это значит, что некто выходит в сеть и старается, чтобы об этом не знали. Или это кто–то из работников компании тайно выделяет родственнику линию, бесплатную, разумеется. Или ещё что–нибудь, но в любом случае это нехорошо.
Однако это не его, не Мишеля, дело, верно?..
Зависит от точки зрения…
Он скачал из своего облака любимый сниффер, перехватил последний пакет данных, отправленный серым компьютером в сеть. Когда немного погодя на выходе появился файл дешифровки, он открыл его и присвистнул. Текст состоял из червяков и закорючек арабской вязи.
Переводчик разобрался с посланием, немного по–своему, конечно, но в целом понятно: «Всё сделано, брат. Машина сейчас поехать и там синий шатёр занесение 'Гала'. 14:00 улица Медлин 42 подтвердить следует (не переведённые закорючки) их постигнет. Бог на всё милостивый, брат, радость мне!»
«Медлин» — это Мадлен, надо полагать. Улица, которая… Так, а где эта улица? Где–то же рядом с домом.
Он открыл карту, нашёл улицу Мадлен. Нет, не рядом, но и не так далеко — в шести перекрёстках от его дома, на запад. Не самая значительная улица, и под номером 42 ничего особенного — арена «Этуаль». Ну и чему же так радуется неведомый отправитель? Что его братишка успеет на концерт классической музыки? Или что́ у нас там сегодня в «Этуаль»?..
Интернет–афиша сообщила, что сегодня в «Этуаль» состоится митинг и траурные мероприятия, посвящённые дню поминовения жертв терроризма. Вот как… Братья хотят помянуть погибших в терактах? В это слабо верится. Так чего же они хотят?
Мишель отыскал в базе хост, которому «брат» отправлял пакет, и передал полученные данные геолокатору. Выяснилось, что компьютер расположен где–то в Довье — южный пригород, район нежилой, в основном склады, мелкие заводики, подстанция…
Просканировал его порты. Один из них прослушивался какой–то службой. На запрос служба выдала подпись операционной системы, в среде которой вертелась. Бог ты мой! это была версия Linux образца шестидесятилетней давности, а служба представилась как DTH. Если только это не уловка, конечно, ведь как дёшево и сердито: в мире, где всё давно вертится на монстрах вроде HeliOS и Dignity, пойди найди человека, который знал бы уязвимости, имевшиеся в подобном раритете! Мишелю они тоже были неведомы. Но он, разумеется, знал, где искать информацию, а потому снарядил поискового робота.
Найденный роботом эксплоит отработал быстро — он раскачал DTH, подобрал ключ, получил права администратора. Тогда Мишель поставил на хост своего бота, подключился к открытому им порту и принялся копаться в файловой системе.
Файлы, хранящиеся на диске были бы крайне интересны спецслужбам: вот бородатые люди в чёрном что–то взрывают, вот они казнят заложников, произносят речи и лозунги на арабском, обстреливают полицейские посты…
Он снова открыл карту. Куда бы ни поехала Женевьева, но если она направляется в центр, ей не миновать улицы Мадлен. На часах сервера 13:12. Надо успеть до двух.
Он прошёлся по карте до западного конца Мадлен. Выяснил, что из южных пригородов на неё можно попасть только с Гонкур или с Рю–де–Кавайон. Коль скоро машина едет из Довье, то вряд ли она отправится на Кавайон — это лишний крюк, плюс мост, перед которым вечная пробка. Значит, остаётся Гонкур.
Они не должны доехать до перекрёстка у Мадлен, не должны! И Мишель уже знал, как их остановить.
Он принялся высчитывать кратчайший маршрут от Довье до Гонкур, прикидывая, в каком месте можно было бы затормозить повозку смерти. Определившись, закрыл карту и отправился в городскую подсеть.
С оператором связи пришлось повозиться. Но в конце концов он добился от него правды. Послать сообщение на номер Женевьевы было делом техники: «Жени, не езжай по улице Мадлен! В два часа там будет теракт. Целую. Мишель». Это на всякий случай. Если ему не удастся остановить смерть.
Водитель грузовичка Kingo под синим тентом с белым росчерком «Gala» на боку остановился у летнего кафе на Сен-Мартен. В график он укладывается, так что выпить чашку эспрессо и съесть гамбургер сам бог велел.
Когда он вернулся к грузовику, рядом стояла полицейская машина. Сержант присел у заднего колеса и заглядывал под кузов.
— Ваша машина, мсье? — спросил он, когда водитель с недоеденным бутербродом в руке подошёл и встал рядом.
— Моя.
— А собака?
— Чего?
— Собака тоже ваша?
Водитель опустился на корточки рядом с полицейским и увидел белую псину, лежащую под задним мостом.
— Привет, парень, — сказал он псу. И полицейскому: — Нет, это не мой.
— Вы могли его задавить.
Шофёр пожал плечами. Потом присвистнул и поманил собаку бутербродом. Белый пёс недоверчиво вильнул хвостом и, прижав уши, стал выбираться из–под машины на запах котлеты.
— Порядок, — сказал шофёр, наблюдая, как дворняга управляется с бутербродом.
— Счастливого пути, — кивнул сержант.