Архитектор правды / Ошибка в коде

Ошибка в коде

Глава 5 из 25

Звон в ушах не проходил. Он был похож на писк старого монитора, который вот-вот взорвется. Приклад автомата — отличный аргумент в любом споре, особенно когда он прилетает в скулу.

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

— Хулиганство и ложный вызов, — сказал он, протягивая мне влажную салфетку. — Кто-то позвонил и сказал, что в твоей квартире варят мет. Группа захвата была на взводе. Извини за фингал, Марк. Сенатор Коган позвонил начальнику округа. Телохранители демократии резко вспомнили, что у них нет ордера.

Я вытер кровь с разбитой губы и швырнул салфетку в урну.

— Это не мет, Аркаша. Это была демонстрация силы.

— Чьей? — он нахмурился.

— Моей личной головной боли.

Я сел в машину. Квартира была скомпрометирована. Аппаратура изъята «для экспертизы» (читай: разграблена ментами). Но Елена, или тот, кто скрывался за этой маской скучной библиотекарши, просчиталась в одном. Она думала, что лишила меня инструментов.

Наивная.

Профессионал отличается от любителя не качеством инструмента, а наличием плана «Б». Любитель, потеряв молоток, плачет. Профессионал забивает гвоздь лбом, если придется. Или достает из тайника пневматический гвоздебой.

Я поехал не в отель и не к друзьям (которых у меня не было). Я поехал в «Склеп».

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

Внутри было холодно и гудело. Серверные стойки мигали зелеными диодами, как глаза стаи волков в темноте.

Я сел за главный терминал. Три монитора с разрешением 8К. Клавиатура без маркировки.

Я был зол. Нет, это не то слово. Я был в бешенстве. Холодном, расчетливом бешенстве хирурга, у которого пациент проснулся во время наркоза и плюнул ему в лицо.

Елена Волкова. «Ученик». Она знала о камерах. Она знала о моих методах. Она навела на меня копов, чтобы выиграть время.

Но зачем? Чтобы сбежать?

Я проверил трекеры. Её телефон был дома. Её лицо мелькнуло на камере у подъезда десять минут назад. Она не бежала. Она сидела в своей квартире без зеркал и ждала моего следующего хода.

— Ты хочешь войны, Лена? — прошептал я, разминая пальцы. — Ты её получишь.

Моя ошибка была в том, что я атаковал её социальную оболочку. Деньги, работа, репутация — это все внешнее. Это одежда. Она сбросила её с улыбкой. Чтобы уничтожить её, мне нужно добраться до мяса. До её истинной истории.

Она стерла себя из зеркал. Но она не могла стереть себя из «облака».

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

Я запустил «Цербер» — мой лучший поисковый алгоритм. Задача: найти любые скрытые облачные хранилища, связанные с Еленой Волковой, её IP-адресами, MAC-адресами её устройств или биометрическими данными.

Пока «Цербер» рыскал по сети, я налил себе виски. Дешевый, жесткий бурбон, который я держал здесь для дезинфекции ран — душевных и физических.

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

Сигнал тревоги. «Цербер» нашел след.

Это был не Google Drive и не iCloud. Это был частный сервер, замаскированный под трафик заброшенного онлайн-магазина автозапчастей. Сервер находился физически в Исландии, в дата-центре, который славился тем, что не задает вопросов.

Объем данных: 50 Терабайт.

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

— Что же ты там хранишь, мышка? — я потер руки.

Я начал процедуру взлома. Стандартный протокол: сканирование портов, поиск SQL-уязвимостей, подбор ключей.

Обычно на этом этапе я вижу панику системы. Файрвол пытается закрыть дыры, но мои скрипты быстрее. Это как взламывать консервную банку ножом — грубо, но эффективно.

Но здесь было тихо.

Мой первый пакет данных ударился о защиту и исчез. Никакого отчета об ошибке. Просто пустота.

Я попробовал снова, используя более агрессивный червь «Таран».

Ничего. Сервер поглощал мои атаки, как черная дыра поглощает свет.

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

Это была не стена. Это был лабиринт.

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

— Невозможно, — пробормотал я.

Такой софт не продают в даркнете. Такой софт не пишут энтузиасты.

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

Но Елена — архивариус. Она носит свитера из секонд-хенда и ест гречку. Откуда у неё защита уровня Пентагона?

Мой азарт сменился холодным, липким пониманием.

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

Я удвоил усилия. Я подключил ботнет — сеть из десяти тысяч зараженных компьютеров по всему миру, чтобы увеличить вычислительную мощность. Вентиляторы в «Склепе» завыли, набирая обороты. Температура в помещении начала расти.

Я долбил эту стену виртуальной кувалдой. Я искал любую щель.

И вдруг стена исчезла.

Просто растворилась.

На экране появилось окно входа. Без пароля. Просто приглашение: guest / guest.

Я замер. Это ловушка. Самая очевидная ловушка в мире. «Добро пожаловать, идиот».

Но любопытство — это самый сильный наркотик. Сильнее героина, сильнее власти. Я должен был увидеть, что внутри.

Я нажал Enter.

Файловая система открылась. Папки. Тысячи папок. «Проект: Генезис». «Проект: Паноптикум». «Досье: Объект 145 (Коган)». «Досье: Объект 001 (Марк)».

У меня пересохло в горле. Там было досье на меня.

Я кликнул на папку. Она была пуста.

Я кликнул на другую. Пусто.

Все папки были пустыми. Это были муляжи. Декорации. Потемкинские деревни в цифровом аду.

— Ты издеваешься надо мной? — я ударил кулаком по столу.

Внезапно курсор мыши дернулся. Я убрал руку от мыши. Курсор двигался сам.

Он медленно поплыл к центру экрана. Открыл терминал командной строки.

Зеленые буквы начали появляться на черном фоне. Не мгновенно, а с той скоростью, с какой печатает человек.

«Привет, Архитектор. Тебе нравится мой дом?»

Она была здесь. Она была в моей системе. Через изолированный канал. Через мой собственный эксплойт.

Я потянулся к кабелю питания, чтобы вырубить сервер.

«Не советую», — напечаталось на экране. — «Если ты выдернешь шнур, я отправлю копию видео с бейсбольной битой всем контактам в твоем телефоне. Включая твою маму. Она ведь жива? Дом престарелых «Солнечный закат», палата 12?»

Я замер. Моя рука зависла над розеткой. Она знала про маму. Никто не знал про маму. Я сменил ей фамилию, перевез в другой город, оплачивал счета через пять офшоров.

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

— Чего ты хочешь? — напечатал я дрожащими пальцами.

«Я хочу, чтобы ты понял, Марк. Ты думаешь, что играешь в шахматы. Но мы играем в го. И я уже окружила твою территорию».

— Кто ты?

Пауза. Курсор мигал, как бьющееся сердце.

«Я — зеркало, которого у меня нет. Я отражаю то, что ты боишься увидеть».

Экран начал искажаться. Пиксели поплыли, превращаясь в цифровой шум. Мои мониторы — все три — начали транслировать одно и то же изображение.

Это был я.

Я, сидящий в этом подвале прямо сейчас. Вид сзади.

Я резко обернулся. За спиной была глухая стена. Там не было камер. Я проверял этот бункер лично, с детектором полей.

Я снова посмотрел на экран. Ракурс изменился. Теперь камера смотрела сверху.

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

Она взломала «железо» здания. Она видела меня все это время.

— Сука! — я схватил стул и швырнул его в датчик. Пластик разлетелся, но изображение на экране не исчезло.

«Ты слишком эмоционален для профессионала», — продолжал печатать невидимый собеседник.

Вентиляторы в системном блоке взвыли, переходя на ультразвук. Запахло горелым пластиком. Процессор разогревался до критических температур. Она перегружала вольтаж. Она жарила мое железо удаленно.

— Прекрати! — заорал я.

«Ты хотел найти ошибку в коде, Марк? Ошибка — это ты. Ты системный баг, который возомнил себя программистом».

Мониторы вспыхнули ярким белым светом, ослепляя меня в полумраке подвала.

Раздался громкий хлопок — лопнул конденсатор на материнской плате. Дым повалил из системного блока густым черным облаком.

Система вырубилась.

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

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

Но вдруг один из мониторов — средний — мигнул и включился. Он работал автономно, от батареи бесперебойника.

На черном экране не было интерфейса ОС. Не было командной строки. Там горела одна надпись. Крупными, красными буквами, словно написанная кровью пикселей:

«ТЫ РАБОТАЕШЬ ГРЯЗНО, МАРК. ПОРА УЧИТЬСЯ ЧИСТОПИСАНИЮ. ЖДУ ТЕБЯ В “СИНЕЙ БОРОДЕ” ЧЕРЕЗ ЧАС. ПРИХОДИ ОДИН. И НЕ ЗАБУДЬ СВОЮ СОВЕСТЬ. ЕСЛИ НАЙДЕШЬ».

Экран погас окончательно.

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

Я посмотрел на свои руки. Они были в саже.

«Ты работаешь грязно».

— Ладно, — сказал я в темноту. — Ладно, Лена. Ты хочешь встречу? Ты её получишь.

Я вышел из бункера, захлопнув тяжелую стальную дверь. «Синяя Борода» — это бар для тех, кто не хочет быть найденным. Идеальное место для встречи двух призраков.

Я потрогал карман. Пистолет был на месте. Но я знал, что он мне не поможет. В этой войне пули были бесполезны. Здесь убивали правдой.

Я сел в машину и повернул ключ зажигания. Радио включилось само собой. Сквозь помехи пробился знакомый женский голос, напевающий детскую считалочку: «Раз, два, три, четыре, пять… Я иду тебя искать…». Я с ужасом понял, что голос идет не из радиоприемника. Он шел из динамиков моего телефона, который лежал на пассажирском сиденье и который я выключил час назад.


Как вам эта глава?
Комментарии
Войдите , чтобы оставить комментарий.

Комментариев пока нет.

🔔
Читаете эту книгу?

Мы пришлем уведомление, когда автор выложит новую главу.

0
Поделитесь мнением в комментариях.x