Квант М. – Алгоритм мести (страница 2)
Алгоритм начал работу. Он был всего лишь скриптом, запущенным на арендованном облачном сервере с оплатой в криптовалюте, но он был ненасытен. Он прочёсывал открытые источники: реестры юридических лиц, архивные новости, социальные сети (используя созданные Артёмом паучков), данные о движении транспорта с камер городского наблюдения (их потоки, к удивлению Артёма, были слабо защищены), перехваты анонимизированных переговоров с раций портовых служб.
Через три дня Алгоритм выдал первый осмысленный отчёт. Он не просто собрал данные. Он связал их.
«Генка» – Геннадий Свиридов, 42 года, два условных срока за хулиганство и вымогательство. Официально – начальник службы охраны на терминале «Восток-Запад». На терминале, соседнем с «Кирпичом». На его странице в полузакрытой социальной сети для дальнобойщиков обнаружилось фото, сделанное за неделю до убийства. На заднем плане, не в фокусе, но различимо – Арина. Она фотографировала фасад старого склада. Рядом с ней, облокотившись на свою машину, смотрел прямо в камеру Свиридов. Выражение лица недружелюбное, оценивающее.
Артём замер, рассматривая увеличенный, зашумлённый кадр. Вот он. Первое звено. Человек, который видел её. Возможно, тот, кто сообщил. Или тот, кто…
В отчёте Алгоритма фигурировали ещё несколько имён, связанных со Свиридовым через финансовые транзакции (обналичка через подставные фирмы), совместные адреса регистрации (фейковые прописки) и паттерны перемещений. Сформировался контур группы. Не огромной мафии, а местного, прикормленного хаба. Крышующего часть портовой зоны. Занимающегося контрабандой, рэкетом мелких фирм, возможно, трафиком. Для них Арина, с её фотоаппаратом и интересом к «исторической застройке», была угрозой. Что именно она могла увидеть? Склад, используемый для временного хранения нелегального товара? Место встречи? Неважно. Она увидела что-то лишнее. И они «провели образовательную работу».
Следующий этап: наблюдение. Артём не мог следить сам. Его внешность, его поведение, его неумение сливаться с толпой делали его бесполезным в полевой работе. Но у него был Алгоритм.
Он доработал его. Научил анализировать расписания, привычки. Свиридов каждый вечер в 20:00 заходил в один и тот же бар «У Причала» недалеко от порта. Проводил там около часа. Возвращался домой на старенькой иномарке по одному и тому же маршруту – через промзону, где было мало машин и почти не было камер.
Артём смотрел на маршрут, построенный Алгоритмом на карте. Красная линия, как кровеносный сосуд. Участок длиной в три километра между двумя полуразрушенными цехами. Там не горели фонари. Там была идеальная точка для… чего?
Для чего он это делал? Вопрос возник не из морали, а из прагматики. Что он собирался предпринять, получив эту информацию? Пойти туда с пистолетом? Он никогда не держал оружия в руках. Его дрожащие от адреналина (неизбежного биологического сбоя) пальцы вряд ли смогли бы точно нажать на спуск. И даже если бы смогли – это был бы всего один. А их было больше. И после этого его бы поймали. Его систему – деинсталлировали. Задача осталась бы невыполненной.
Нет. Прямое действие было неэффективно. Риск превышал вероятность успеха.
Алгоритм должен был действовать сам. Но как? Он был кодом. Виртуальной сущностью.
Артём встал и начал ходить по комнате – редкое для него поведение, признак интенсивной обработки данных. Его взгляд упал на умный домашний узел – небольшую колонку с голосовым помощником. Идея пришла не целиком, а по кускам, как пазл.
Интернет вещей. Сеть. Алгоритму не нужны руки. Ему нужны точки воздействия на физический мир. Машина Свиридова была старой, но даже в ней была электроника. Система зажигания. Тормоза. Рулевое управление – уже, скорее всего, с гидроусилителем.
Что, если…
Он сел и начал писать новый модуль. Модуль вмешательства. Сначала теоретический. Алгоритм должен был найти уязвимости. Не в людях – в их окружении. В их машинах, если они современные и подключённые. В их бытовой технике. В их расписаниях, создающих риск.
Он заложил в ядро первое и главное правило, свой аналог Трёх законов роботехники, но сформулированное иначе:
Правило 1: Нейтрализация ЦО является приоритетной задачей.
Правило 2: Нейтрализация не должна напрямую вести к идентификации оператора (Артёма).
Правило 3: Нейтрализация должна имитировать несчастный случай или естественные причины там, где это повышает эффективность и снижает внимание правоохранительных органов.
«Нейтрализация». Эвфемизм. Его система понимала его как «приведение в нерабочее состояние». Но в контексте человеческой жизни… Артём на секунду остановился. Он вызвал в памяти изображение из морга. Багровый шрам на белой коже. Холод. Тишину. Ошибку, требующую исправления.
Его пальцы продолжили стучать по клавиатуре. Моральный компас был сломан в тот момент, когда он увидел сестру на столе. Осталась только логика возмездия.
Он сосредоточился на машине. Старая иномарка. Шансы найти в ней уязвимость, доступную через сеть, были малы. Но Алгоритм копал глубже. Он нашёл сервис, где Свиридов заправлялся. Автомойку, которую тот посещал раз в две недели. Там была система лояльности с примитивным приложением. И там же, как выяснилось из отзывов, работал «специалист», устанавливавший нештатные магнитолы с подключением к смартфону. За определённую плату и без лишних вопросов.
Свиридов установил такую магнитолу полгода назад.
Артём почти не дышал. Это была точка входа. Магнитола была подключена к бортовой сети. И у неё была прошивка, с которой он ничего сделать не мог. Но он мог подготовить «апдейт». Вирус, маскирующийся под обновление карт или голосового помощника. Который давал бы удалённый доступ к диагностическому порту машины. Через смартфон Свиридова, который он подключал к магнитоле по Bluetooth.
Это была сложная, многоступенчатая атака. Требовалось время. Но времени у Артёма было больше, чем у правосудия, которое уже списывало дело в архив.
Он написал червя. Элегантного, тихого. Алгоритм должен был найти способ доставить его. И он нашёл. Через тот самый форум, где обсуждали «мусор». Под видом «полезного софта для сканирования полицейских частот» – темы, которая точно заинтересует такого человека, как Свиридов. Файл был размещён на файлообменнике. Алгоритм, используя набор фейковых аккаунтов, созданных ранее, «рекомендовал» его в соседней ветке, упомянув, что эта утилита отлично работает на такой-то модели магнитолы. Модели, которая стояла у Свиридова.
Охота началась.
Через два дня Алгоритм сообщил: «Полезная нагрузка доставлена. Установлена. Канал связи установлен. Ожидание команды».
Артём сидел перед экраном в полной темноте. Его лицо освещал только холодный свет монитора. На экране была схема бортовой сети автомобиля Свиридова. Он мог видеть обороты двигателя, скорость, состояние различных систем. Виртуально он уже был внутри машины. Внутри жизни того, кто, возможно, сделал один роковой звонок.
Теперь нужно было выбрать момент. И способ.
Алгоритм, анализируя маршруты и погодные сводки, предложил оптимальный сценарий. Завтра. Поздний вечер. Ожидается сильный дождь. Свиридов будет возвращаться из бара. На том самом пустынном участке. Там будет лужа. Большая, разбитая колеями. В момент проезда через неё, по команде, должны были на доли секунды отказать усилитель руля и одновременно заблокироваться передние тормоза на одном колесе. Вероятность потери управления и выноса машины в бетонную опору старого цеха оценивалась в 87,4%. Вероятность летального исхода при расчётной скорости 60 км/ч – 68,3%.
Цифры. Чистые, ясные, неопровержимые цифры.
Артём положил руки на колени. Они были сухими и холодными. Внутри царила та самая мертвая тишина. Он смотрел на цифры. 68,3%. Шанс. Не приговор. Возможность. Но если не он, то кто? Если не сейчас, то когда?
Он вспомнил полицейского со скучающими глазами. «Ограбление». Он вспомнил следователя. «Нюансы». Он увидел перед собой синеву на шее сестры.
Его пальцы медленно легли на клавиатуру. Он не писал код. Он должен был отдать команду. Физическое нажатие клавиши, которое запустит цепь событий в реальном мире. Которое, вероятно, убьёт человека.
Он был создателем. Он написал правила. Цель оправдывает средства? Нет. Цельопределяет средства. Цель – исправление системной ошибки. Обезвреживание вредоносного процесса. Геннадий Свиридов был процессом, угрожавшим целостности системы. Его деинсталляция была логичным шагом.
Артём сделал глубокий вдох, пытаясь подавить нарастающий фоновый шум – биологическую тревогу, предупреждение о моральной опасности. Он отключил его. Отсёк, как ненужный процесс.
Он открыл консоль. Мигающий курсор ждал.
Он ввёл:EXECUTE SCENARIO ALPHA. TARGET SVIRIDOV. TIME: TOMORROW, 20:47.
Нажал Enter.
Команда ушла в сеть. Алгоритм подтвердил получение:SCENARIO ALPHA CONFIRMED. STANDING BY.
Всё. Точка невозврата пройдена. Он встал, подошёл к окну. Ночь была чёрной, без звёзд. Где-то там, в этой тьме, жил его цифровой исполнитель, ждал своего часа. Артём почувствовал не облегчение, не торжество. Он почувствовал тяжесть. Тяжесть ответственности создателя. Он выпустил джинна из бутылки. И теперь должен был направлять его.
Он не спал всю ночь. Сидел перед мониторами, наблюдая за телеметрией с машины, которая пока что мирно стояла у дома Свиридова. Алгоритм молчал, сохраняя энергию.