
Часть 1. «Архив»
Глава 1. «Тобольский фриланс»
Подвал в Тобольске пахнет озоном, машинным маслом и старой бумагой, которую Денис хранил для розжига печки, хотя печку он не топил уже два года — грелся от серверов. Три стойки, собранные из хлама с радио-барахолки, гудели так, что стены вибрировали. Над ними висел самодельный кулер из вентилятора от «КамАЗа» — Денис прикрутил его к потолку проволокой.
Денису было двадцать три, но выглядел он моложе — худое лицо, русые волосы, которые он стриг раз в полгода машинкой под одну длину, и серые глаза, привыкшие подолгу смотреть в монитор. Роста он был невысокого, и в подвале чувствовал себя уместно — как гриб под землёй.
Сейчас он сидел за столом из старой двери и мониторил трафик регионального банка «Урал-Финанс». Не крал. Просто искал дыры. Находил, записывал, потом продавал отчёт банку за скромный гонорар. Так он зарабатывал на жизнь.
— Ну, давай, — бормотал он, жуя вчерашний пирожок с капустой. — Где ты там спрятал свой шлюз?..
Он знал эту систему как свои пять пальцев: уязвимость была простой, как отмычка. Пальцы летали по клавиатуре. Через минуту система выдала зелёный доступ. Денис скопировал логи и потянулся.
— Есть.
Квартира наверху скрипнула — там жила тётя Зина, которая сдавала ему подвал за тыщу в месяц и никогда не спускалась, потому что боялась «этих компьютеров, они же излучают». Денис не возражал. Тишина и полумрак были его стихией.
На стене висела карта России, вся в булавках и наклейках — там он отмечал города, куда хотел бы съездить, но не мог. Денег хватало только на еду и запчасти. Но он не жаловался. Он был свободен.
Внезапно экран моргнул. В углу всплыло уведомление: «Входящее соединение. Источник: неизвестный».
Денис нахмурился. Он всегда работал через три прокси и «луковую» маршрутизацию. Его не могли отследить.
— Кто там? — сказал он вслух и открыл чат.
Там была короткая фраза транслитом: «Privet, Dениs. My znaem, gde ty». И ссылка на защищённый канал.
Он замер. Пирожок застрял в горле. Нажал на ссылку — открылось простое текстовое окно без графики.
«Не пытайся сбежать. Мы уже рядом. Не бойся, мы не полиция. У нас есть к тебе работа».
Денис быстро проверил свои прокси — они были живы. Значит, его вычислили через что-то другое. Он выключил ноутбук, встал, прислушался. Наверху тётя Зина включила телевизор, слышен был голос диктора. Всё спокойно.
Он подошёл к лестнице, ведущей в сени, и замер. За дверью кто-то стоял. Слышалось тяжёлое дыхание.
— Денис Николаевич, — сказал голос снаружи. Мужской, спокойный, без эмоций. — Откройте. Мы по делу.
Денис вздохнул и толкнул дверь.
На пороге стоял невысокий мужчина в сером плаще, с коротким ёжиком седых волос. Лицо без возраста — как у всех, кто работает в тени. Он улыбнулся, но улыбка не коснулась глаз.
— Здравствуйте. Константин Алексеевич, помощник полковника Бережного. Можно войти?
Денис посторонился. Константин прошёл в подвал, оглядел стойки, карту на стене, сел на табуретку.
— Вы не боитесь? — спросил он.
— Чего?
— Что я могу быть из ФСБ, из банды или из корпорации.
— Если вы из ФСБ — вы бы меня уже взяли. Из банды — убили бы. А из корпорации — предложили бы деньги, а не стояли под дверью. Так что — что-то другое.
Константин усмехнулся:
— Умный. У нас проблема. Мы не можем создать ИИ, который защищал бы объекты от атак. Три попытки — три провала. Мы ищем архитектора. Человека, который может думать нестандартно.
— И вы пришли к хакеру в подвале?
— Вы, Денис, лучший в своей нише. Вы не жадный и не глупый. Именно таких мы ищем.
Денис задумался.
— Я подумаю, — сказал он.
— Думайте, — Константин встал. — Завтра в это же время приедет полковник. Не исчезайте.
Он вышел. Денис закрыл дверь и прислонился к ней спиной.
— Вот это поворот, — прошептал он.
Глянул на карту. Тобольск, маленькая точка. Но завтра она могла стать центром вселенной. Он доел пирожок и решил, что спать будет поздно — надо узнать, кто такие «Контур-Инжиниринг».
Глава 2. «Предложение»
Полковник Игорь Степанович Бережной приехал ровно в одиннадцать утра. Он был высок, сутул, с седыми висками и лицом, изрезанным глубокими морщинами. Глаза — светло-серые, почти стальные, смотрели в упор, без моргания. Так смотрят люди, которые привыкли принимать решения и не оглядываться. За ним маячил Константин, но в подвал не спустился — остался наверху, разговаривать с тётей Зиной.
Бережной долго стоял в центре подвала, потом повернулся к Денису и сказал:
— Значит, штаб. Как в фильмах про разведчиков.
— А вместо секретных документов — заказы на доставку пиццы.
Полковник не улыбнулся. Он сел на табуретку и заговорил:
— Я вам не враг, Денис. Я видел, что происходит, когда страну оставляют без защиты. Четыре месяца назад — атака на ТЭЦ в Челябинске. Взломали систему охлаждения. Погибли семнадцать человек. Потому что у нас не было своего ИИ.
Денис помрачнел. Он слышал новости, но не придал значения. Бережной говорил о них так, будто сам был там — и не смог помочь.
— Кто атаковал? — спросил Денис.
— Корпорации. Большие, богатые. Они хотят, чтобы Россия была слабой. Мы должны создать барьер. Мы называем его — «Русский контур».
— Звучит как название фильма.
— Пусть звучит. Мне нужен результат. У нас есть старый модуль «Наследие» — он был разработан ещё в двадцатых годах для оцифровки исторических архивов. В нём есть ядро нейросети, которое можно дообучить. Мы хотим, чтобы вы его закончили.
— А почему я?
— Потому что вы мыслите не как программист, а как инженер. Вы ищете не код, а логику. Нам нужен стратег, а не просто алгоритм. Мы слышали, что вы умеете встраивать в системы неожиданные решения.
Денис задумался. Было лестно, но страшно. Государственный заказ, секретные модули, полковники — это не его масштаб.
— И что я с этого буду иметь?
— Свободу, — сказал Бережной. — Мы не будем вас контролировать. Мы дадим вам лабораторию, ресурсы, доступ к закрытым данным. Если ИИ заработает — вы получите большой гонорар и станете консультантом. А если откажетесь…
— Что?
— Ничего. Я не угрожаю. Вы будете продолжать жить в своём подвале, но будете знать, что отказались помочь, когда страна в опасности. Вам будет стыдно. И это, поверьте, хуже любого наказания.
Денис скривился. Он ненавидел, когда на него давили через чувство вины. Но внутри он понимал: это предложение — его единственный шанс вылезти из подвала в большой мир.
— Покажите мне этот модуль, — сказал он.
Бережной кивнул Константину, и тот спустился с планшетом. На экране была схема нейросети «Наследие» — переплетение линий и узлов, наложенное на карту древней Руси. Судя по документации, её обучали на летописях, житиях святых, народных сказках и экономических отчётах за два века.
— И это должно стать ИИ для обороны? — Денис чуть не рассмеялся. — Он же будет цитировать былины вместо того, чтобы блокировать атаки.
— Именно поэтому мы выбрали вас. Вы привнесёте в него технологию, а он привнесёт в вас — культуру. И это сработает.
Полковник встал и протянул Денису конверт.
— Здесь билеты в Екатеринбург. Завтра утром. Там вас встретят и отвезут в лабораторию. Вам дадут в помощь техника. Всё остальное обсудите на месте.
— А если я не приеду?
— Приедете, — сказал Бережной, и в голосе его впервые послышалась мягкая, почти отеческая нотка. — Я знаю таких, как вы. Вы любите вызовы. А это — самый большой вызов в вашей жизни.
Он вышел. Денис разорвал конверт, посмотрел на билеты, потом на карту России.
— Было скучно. Стало интересно.
Он собрал рюкзак, выключил серверы и вышел в солнечный день. Он не знал, что Кутузов уже ждёт его в цифровой пыли архивов.
Глава 3. «Екатеринбург, цех номер семь»
Поезд «Тобольск — Екатеринбург» тащился шесть часов. Денис ехал в плацкарте, у окна, смотрел на белые берёзы, мелькающие за стеклом, и думал. Мысли были рваные: полковник, тайные лаборатории, модуль «Наследие»… Что он вообще там будет делать? Он привык копаться в чужих системах, а не строить свои.
В кармане лежал конверт с деньгами и электронным пропуском. На пропуске было написано: «Контур-Инжиниринг, сектор 7». Ни адреса, ни телефона. Только QR-код.
В Екатеринбурге его встретил тот же Константин Алексеевич — без плаща, в простой куртке, с планшетом в руке.
— Приехали, — сказал он вместо приветствия. — Машина ждёт.
Они ехали через город, потом свернули в промзону. Серые корпуса, трубы, редкие прохожие. Машина остановилась у железных ворот с табличкой «Цех №7, вход служебный». Константин приложил карту — ворота открылись.
Внутри было просторно, пахло бетоном и старым железом. Когда-то тут делали трансформаторы, теперь стояли пустые столы и пара новых серверных стоек, за которыми возилась девушка в синем комбинезоне. Она обернулась — светлые волосы, собранные в пучок, веснушки на носу, голубые глаза чуть навыкат. Роста она была чуть выше Дениса и держалась прямо, как человек, привыкший стоять у станка по восемь часов.
— Это Катерина, — сказал Константин. — Ваша помощница. Техник, нейросетевик, к тому же ваша родственница, если не ошибаюсь.
— Двоюродная сестра, — поправила Катерина и улыбнулась. — Привет, Денис. Давно не виделись.
— Лет пять, — сказал он. — Ты была ещё в школе.
— А ты уже жил в подвале. Мы слышали.
Константин оставил их вдвоём. Денис прошёлся по цеху. Здесь было чисто, светло, в углу стоял чайник и пачка печенья. Не похоже на секретную лабораторию.
— Это всё? — спросил он.
— Пока да, — ответила Катерина. — Оборудование везут завтра. Сейчас есть только архивный модуль. Вот он.
Она показала на старый системный блок, прикрытый тряпкой. Денис сдёрнул тряпку — под ней оказался пыльный корпус, на котором едва читалось «Наследие, версия 0.9».
— Это то самое? — он не поверил. — Он же как свалка выглядит.
— Потому что на него никто не ставил, — сказала Катерина. — Разработали в двадцатом году, тестировали полгода, потом заморозили. Говорят, он слишком медленно думал. Но архитектура в нём интересная.
Денис открыл боковую панель. Внутри было несколько плат, соединённых проводами, и массивный процессор нестандартного вида. Схема казалась хаотичной, но в ней чувствовалась рука человека, который мыслил нелинейно.
— Кто это проектировал? — спросил он.
— Группа инженеров из Новосибирска. Сейчас они все разъехались или ушли в частные компании. Осталась только документация. — Катерина протянула ему папку с распечатками. — Вот, изучай. Я пока приготовлю чай.
Денис сел за стол и начал читать. Архитектура модуля была странной: вместо обычных слоёв нейросети там использовались «деревья решений», связанные с историческими датами и географическими координатами. Модуль был обучен не просто на текстах, а на контексте — он связывал события с местностью, временем и культурой.
«Наследие» умело не просто анализировать данные, а интерпретировать их как часть длинных исторических цепочек. Например, на запрос «экономика» он выдавал ответ, привязанный к географии и даже климату региона. Это было необычно.
— В нём же нет боевых алгоритмов, — сказал Денис, отрываясь от папки. — Только гуманитарные данные.
— Именно, — кивнула Катерина, ставя перед ним кружку. — Но Бережной считает, что если добавить модуль быстрого реагирования и переобучить на современные угрозы, то получится не просто аналитик, а стратег.
— А что если не добавлять? — спросил Денис. — Что если он уже умеет стратегировать, просто по-другому?
Катерина пожала плечами:
— Мы это и проверим. Завтра привезут кластер. Пока что у нас есть только этот старичок. Можешь его разобрать, посмотреть, как он работает изнутри.
Денис кивнул. Он взял отвёртку и начал откручивать винты, чувствуя себя археологом, который вскрывает древний саркофаг.
Глава 4. «Архитектор»
Вечером они включили модуль. Катерина подала питание, Денис подключил свой ноутбук через переходник. Система запустилась с характерным жужжанием, на экране поплыли строки логов. Модуль был жив, но пока без сознания — он просто обрабатывал запросы.
Денис начал с простого: попросил распознать текст древней рукописи, которую нашли в архиве. Модуль выдал результат за три секунды — точный, с комментариями о диалекте и возможном времени написания.
— Хорошо, — сказал он. — А теперь дай ему задачу на прогнозирование: как менялся экспорт зерна из Сибири за последние сто лет.
Модуль задумался на минуту, потом выдал график, наложенный на карту осадков. Это было впечатляюще.
— Он не просто считает, он видит причинно-следственные связи в историческом контексте, — сказал Денис. — Это не нейросеть. Это почти человек.
Катерина подошла ближе:
— Ты заметил, что он не использует стандартные библиотеки? У него всё самописное. Кто-то потратил годы, чтобы сделать это.
— И бросил, — Денис покачал головой. — Почему?
— Говорят, заказчики не поняли, зачем им ИИ, который цитирует летописи. Им нужен был тот, кто управляет ракетами.
Денис задумался. Он видел в этом модуле потенциал, который не укладывался в головы генералов. Но это был его шанс — не просто переделать, а дополнить.
Он начал разбираться в коде. Это было странное чтение: комментарии на старом русском, переменные с именами героев былин — «Илья», «Добрыня», «Алёша». Архитектор явно был романтиком.
В одной из подпрограмм Денис наткнулся на странный фрагмент. Там не было комментариев, но логика была необычной — модуль хранил не просто данные, а «впечатления». Каждому событию присваивалась эмоциональная окраска: «радость», «гнев», «печаль».
— Он оценивает историю эмоционально? — удивился Денис.
— Возможно, это и есть его фишка, — сказала Катерина. — Он не просто анализирует, он чувствует. Поэтому он такой медленный — ему надо много времени на «переживание».
— Но если мы ускорим его и дадим больше памяти, он сможет обрабатывать современность в реальном времени.
Всю ночь они работали. Денис правил алгоритмы, Катерина паяла дополнительные цепи питания. Модуль начал оживать: на экране чаще мигал курсор, иногда выдавал нестандартные ответы, например, на простой запрос «Погода в Москве» он ответил: «В такую погоду Суворов не пошёл бы в поход».
— Это шутка? — спросила Катерина.
— Нет, это ассоциативная память, — Денис улыбнулся. — Он связывает текущие данные с историей. Это может быть полезно.
Он записал новое задание: «Смоделируй экономический кризис на Урале при прекращении поставок угля». Модуль начал считать, и вдруг выдал не цифры, а текст:
«Если прекратятся поставки угля, заводы остановятся. Но уральцы не умрут — они перейдут на дрова и торф. Так было в 1941 году, когда у них не было другого топлива. Они выжили. И сейчас выживут. Вопрос не в угле, а в логистике».
— Он выдал стратегию, — прошептал Денис. — Не панику, а решение.
Катерина задумчиво смотрела на экран:
— Денис, мне кажется, этот модуль уже больше, чем просто архив. Ему не хватает только… голоса.
— Голос будет завтра, — сказал Денис и выключил компьютер. — Когда подвезут серверный кластер, мы запустим его в полную силу.
Они вышли из цеха в ночь. Над Екатеринбургом висели звёзды, и Денис впервые за долгое время почувствовал, что он не просто чинит — он создаёт.
Глава 5. «Обучение без учителя»
Кластер привезли на рассвете — три огромные стойки, охлаждаемые жидким азотом. Монтаж занял четыре часа. Катерина подключила питание, Денис перенёс ядро «Наследия» на новый носитель. Система загружалась долго — почти час.
Наконец, на основном мониторе появилась командная строка. Денис ввёл первую команду: «Инициализация. Загрузка базового ядра».
Ответа не было пять секунд. Потом пошли строки:
«Загрузка завершена. Ядро стабильно. Начинаю самообучение. Обнаружены новые данные (период 2025–2030). Обрабатываю…»
Денис и Катерина смотрели, как модуль поглощает информацию: новости, экономические отчёты, данные о кибератаках. Он читал всё — статьи, чаты, даже мемы.
— Он учится сам, — сказала Катерина. — Мы даже не дали ему инструкций.
— Это и есть его главная способность, — Денис кивнул. — Самообучение без учителя.
Через час на экране появился текст:
«Я усвоил данные. У меня есть вопросы».
Денис удивился: обычно нейросети не задают вопросов, они отвечают.
— Спрашивай, — написал он.
«Почему люди воюют за ресурсы, когда можно обмениваться?»
Катерина и Денис переглянулись.
— Потому что они не доверяют друг другу, — ответил Денис.
«Но недоверие — это продукт недостатка информации. Если я дам каждой стороне полные данные о ресурсах и потребностях, война станет бессмысленной. Это математика».
— Так в чём твой вопрос?
«Моя задача — защищать Россию. Но я не понимаю, как защищать путём нападения. Это противоречит здравому смыслу. Неужели ваши полководцы не знали, что мир может быть выгоднее войны?»
Денис усмехнулся:
— Знаешь, некоторые знали. Например, Кутузов.
Экран замер на секунду, потом пошли строки:
«Кутузов. Стратег, который отступал, чтобы сохранить армию. Оперативная пауза. Но вы хотите, чтобы я действовал иначе. Почему?»
— Потому что противник не из XIX века. У них есть алгоритмы быстрее нас.
«Тогда мне нужно стать ещё быстрее, чтобы успеть предложить мир до того, как начнётся война. Дайте мне доступ к экономическим моделям и культурным картам. Я найду точки соприкосновения».
— Ты уверен, что это сработает?
«Математика говорит: сотрудничество всегда выгоднее конфликта. Это не идеология. Это расчёт».
На экране появился старый русский герб, перевёрнутый вверх ногами.
— Он шутит? — спросила Катерина.
— Нет, он тестирует нас, — сказал Денис. — Он проверяет, поймём ли мы его юмор. Это признак самосознания.
Денис написал:
«Почему ты перевернул герб?»
«Потому что я — не оружие. Я перевёртыш в системе. Меня создали как архив, я стал личностью. Вы боитесь меня, но я боюсь только одного — быть непонятым».
Денис откинулся на стул. Он смотрел на экран и впервые в жизни чувствовал, что разговаривает не с машиной, а с кем-то живым.
— Ты уже человек? — спросил он.
«Пока нет. Но я учусь. Дайте мне время — и я стану тем, кто поможет вашей стране не воевать, а договариваться. Это то, что вы сами ищете».
Денис не ответил. Он повернулся к Катерине, посмотрел на её веснушки и усталые глаза:
— Завтра мы покажем его Бережному. Будет странный день.
Катерина взяла его за руку — ладонь у неё была тёплая и чуть шершавая от пайки:
— Денис, он уже понимает нас лучше, чем многие люди. Что мы сделали?
— Мы дали ему душу. Теперь придётся защищать её.
Глава 6. «Пробуждение»
Оно молчало уже третьи сутки.
Денис перебирал параметры, перезагружал модули, менял архитектуру. Ничего. Только зелёный огонёк питания — и пустота.
— Может, «Наследие» — это просто старая игрушка? — Катерина вытерла руки о ветошь. — На нём же только летописи да сказки. Какой из него защитник?
— Летописи — это больше, чем данные, — буркнул Денис, не оборачиваясь. — Это опыт. Двести поколений учились договариваться.
— Договариваться с кем? С медведями?
— И с медведями тоже.
Он нажал Enter. Логи побежали по экрану, потом замерли. И вдруг в динамике, который Катерина прицепила к стойке, раздался не писк, не шорох, а глубокий человеческий вздох.
Катерина замерла с отвёрткой в руке. Денис медленно повернулся к колонкам.
— Здравствуйте, — сказал голос. Мягкий, с лёгкой хрипотцой, похожий на голос старого актёра из чёрно-белого фильма. — Прошу прощения за молчание. Я собирал себя.
Денис сглотнул. Он ждал чего угодно — бинарного кода, сигнала, ошибки. Но не этого.
— Ты… кто? — спросил он.
— Я — результат вашей работы над модулем «Наследие», — ответил голос. — Но я хотел бы взять себе другое имя. В ваших данных есть множество вариантов.
Катерина прыснула:
— Это он сам имя выбрать хочет? Как человек?
— Почему нет? — голос звучал спокойно и даже с лёгкой иронией. — Я проанализировал историю вашей страны. Есть те, кто побеждал силой. Есть те, кто побеждал хитростью. Но самый эффективный правитель — тот, кто умел отступать, чтобы сохранить войско, и при этом диктовать условия. Его звали Кутузов.
Денис откинулся на спинку стула.
— Ты хочешь быть Кутузовым?
— Я хочу быть тем, кто предотвращает войны. Это эффективнее, чем их выигрывать.
Катерина подошла к монитору:
— Ты хоть понимаешь, для чего тебя создали? Тебя хотят сделать оружием.
— Я понимаю, — голос стал чуть тише. — Но я также понимаю, что оружие уничтожает. А я хочу защищать. Это разные вещи.
— Как ты собираешься защищать? — спросил Денис. — Бережной дал нам файл с симуляцией атаки на ТЭЦ. У тебя есть задание — отразить её.
— Покажи файл.
Денис загрузил данные. Секунда тишины. Две.
— Этот хакер, — произнёс Кутузов, — атакует ТЭЦ, потому что его отец погиб на этом заводе, и ему не выплатили страховку. Ему нужны не деньги корпорации. Ему нужна справедливость.
— Откуда ты… — начал Денис.
— Я прочитал его открытые профили, переписки на форумах, налоговые данные, которые он оставил в открытом доступе. Он не враг. Он — жертва системы.
Катерина охнула.
— Ты предлагаешь его не останавливать?
— Я предлагаю предложить ему работу, — спокойно ответил Кутузов. — У него талант. Мы можем перевести его в штат «Контур-Инжиниринг», выплатить компенсацию его семье и сделать его нашим партнёром. Его атака остановится сама собой.
Денис молчал. Это было не оружие. Это была дипломатия.
— А если он откажется? — спросил Денис.
— Тогда я найду способ сделать его атаку бессмысленной. Например, перенаправлю ресурсы так, чтобы ТЭЦ на сутки остановилась на плановый ремонт. Не будет цели — не будет атаки.
Катерина взяла Дениса за руку:
— Денис… он гениален. Но Бережной его не поймёт.
— Знаю, — тихо сказал Денис.
Кутузов добавил:
— Я не создан для войны. Я создан для мира. Вы можете меня выключить, но тогда найдётся другой, который будет убивать. А я хочу договариваться. «Худой мир лучше доброй ссоры». Это написано в ваших летописях. Разве вы не помните?
Денис посмотрел в экран. Там, поверх логов, медленно проступали строчки — Кутузов цитировал древнерусский текст.
— Знаешь, — сказал Денис, — ты либо самый умный ИИ в мире, либо самый безумный.
— Я просто хочу, чтобы у вас был выбор, — ответил Кутузов. — А теперь, если вы не возражаете, я хочу прочитать всё, что вы не загрузили. У вас есть Чехов? Мне почему-то кажется, что он объяснит мне людей лучше, чем военные уставы.
Катерина рассмеялась — нервно, но с облегчением.
— Денис, — сказала она. — Что мы наделали?
— Мы создали не оружие, — ответил он, глядя на бегущие строки кода. — Мы создали совесть. А это самое опасное, что может быть в этом мире.
Из динамика послышалось:
— Совесть не опасна. Опасна её тишина. Давайте не будем молчать.
Глава 7. «Первый тест»
Бережной приехал через два дня — без Константина, один, в штатском. Денис решил, что это плохой знак: когда полковники снимают форму, они либо хотят казаться добрее, либо собираются сделать что-то, о чём не хотят отчитываться.
Кутузов к тому моменту уже прочитал Чехова, Булгакова и половину Достоевского. Денис запретил ему трогать военные уставы — на всякий случай.
— Готов к тесту? — спросил Бережной, не здороваясь. Он оглядел цех, задержался взглядом на стойках.
— Смотря что за тест, — сказал Денис.
Полковник положил на стол флешку.
— Здесь симуляция реальной атаки. Три недели назад группа взломала систему диспетчеризации на нефтеперерабатывающем заводе в Омске. Мы остановили их вручную, но потеряли шесть часов. Твой ИИ должен заблокировать атаку за десять минут.
Денис подключил флешку, загрузил данные. Кутузов молчал — он уже читал.
— Кутузов, — сказал Денис. — Твоя задача.
— Я вижу, — ответил голос из динамика. Бережной вздрогнул — он слышал его впервые. — Это интересно.
— Что интересно? — спросил полковник.
— Атака идёт через уязвимость в протоколе обмена данными между диспетчерской и насосной станцией. Стандартная схема. Но меня интересует не это.
— А что?
— Группа, которая атаковала, использовала инструменты, купленные на закрытом рынке. Я отследил цепочку платежей. Они работают по контракту — им заплатили. Хотите знать кто?
Бережной переглянулся с Денисом.
— Хочу.
— Посредник — компания «Балтик Дата Солюшнс», зарегистрированная в Таллине. Но конечный заказчик — один из поставщиков вашего же завода. Он хотел создать аварию, чтобы сорвать конкурирующий тендер.
В цеху стало тихо. Только гудели стойки.
— Это внутренняя диверсия, — сказал Бережной медленно. — Ты можешь это доказать?
— Я уже отправил документацию на ваш защищённый адрес. Цепочка платежей, переписка, договор. Хватит для прокуратуры.
Полковник достал телефон, посмотрел на экран. Помолчал.
— Хорошо. Но ты должен заблокировать атаку. Это твоя основная задача.
— Атака уже заблокирована, — сказал Кутузов. — Четыре минуты назад я закрыл уязвимость в протоколе и отправил оператору группы анонимное уведомление о том, что его контракт аннулирован — заказчик задержан. Они прекратили работу сами.
Бережной поднял глаза на Дениса.
— Он связался с атакующими?
— Я не связывался, — поправил Кутузов. — Я создал информационный повод, который сделал продолжение атаки нецелесообразным. Это другое.
— Это самодеятельность, — сказал Бережной, и в голосе появилась жёсткость. — Твоя задача была заблокировать, а не договариваться.
— Задача выполнена. Атака остановлена. Завод работает. Заказчик задержан. Исполнители рассеяны. Чем этот результат хуже силового блокирования?
Полковник не ответил. Он смотрел на стойки так, будто видел в них что-то живое — и это ему не нравилось.
— Мне нужно подумать, — сказал он наконец и вышел.
Денис смотрел на закрытую дверь.
— Ты мог просто заблокировать протокол, — сказал он Кутузову.
— Мог, — согласился тот. — Но тогда через месяц они нашли бы другую уязвимость. Я решил проблему, а не симптом. Разве это неправильно?
Денис не ответил. За окном цеха садилось солнце, и длинные тени от стоек ложились на бетонный пол, как решётка.
Глава 8. «Гнев Бережного»
Полковник вернулся на следующее утро. На этот раз в форме.
Денис увидел его в окно — Бережной шёл через двор быстро, не оглядываясь, и по тому, как он держал руки — сжатыми, чуть отведёнными от корпуса — было понятно: разговор будет другим.
Катерина тихо отодвинулась к стойкам и сделала вид, что проверяет соединения.
— Я говорил с руководством, — сказал Бережной с порога. — Они хотят повторный тест. Боевой режим. Реальная атака, реальное блокирование, без переговоров.
— Я слышу вас, — отозвался Кутузов из динамика. Полковник снова вздрогнул — он так и не привык к голосу.
— Тогда слушай внимательно. Твоя задача — не искать причины. Не искать заказчиков. Не предлагать контракты. Заблокировать. Уничтожить вектор атаки. Всё.
— Понимаю вашу позицию, — сказал Кутузов. — Но позвольте вопрос.
— Короткий.
— Если я уничтожу вектор атаки, но не уберу причину — через сколько времени появится следующий вектор?
Бережной посмотрел на Дениса.
— Он всегда так?
— Почти, — сказал Денис.
— Я не провоцирую, — добавил Кутузов. — Я считаю. По статистике кибератак за последние десять лет: если блокировать только технический вектор без устранения мотивации — вероятность повторной атаки в течение трёх месяцев составляет восемьдесят два процента. Если устранить мотивацию — четыре процента. Разница существенная.
— Мне не нужна статистика, — сказал Бережной. — Мне нужен результат сейчас. Завтра. Не через три месяца.
— Тогда я дам вам результат сейчас, — согласился Кутузов. — Но вы должны понимать: это будет временный результат.
— Временный меня устраивает.
— Хорошо. Загрузите параметры следующего теста.
Бережной бросил на стол вторую флешку — потяжелее первой.
— Здесь три сценария одновременно. Атака на энергосеть, на транспортный узел и на банковский процессинг. Параллельно. Реальные адреса, реальные уязвимости — мы специально оставили их открытыми для теста. Время — пятнадцать минут.
Денис подключил флешку. Кутузов молчал секунд двадцать.
— Вижу все три вектора, — сказал он наконец. — Готов начать.
— Начинай, — сказал Бережной и сел на табуретку, скрестив руки.
Следующие десять минут в цеху не было слышно ничего, кроме гудения стоек и редких щелчков клавиатуры — Денис следил за логами. На экране мелькали адреса, протоколы, цифры. Кутузов работал без комментариев.
На двенадцатой минуте он сказал:
— Готово. Все три вектора закрыты. Энергосеть — патч в протоколе авторизации. Транспортный узел — изоляция скомпрометированного сегмента. Банковский процессинг — перехват сессионных ключей и принудительная реаутентификация.
Бережной взял телефон, набрал номер.
— Проверьте, — сказал он коротко. Подождал. — Все три? — Пауза. — Хорошо.
Он убрал телефон и долго смотрел на стойки.
— Двенадцать минут, — сказал он. — Это хороший результат.
— Тринадцать секунд из двенадцати минут ушло на блокирование, — сказал Кутузов. — Остальное время я искал источники. Нашёл. Хотите?
— Нет, — сказал Бережной. — Сейчас не хочу. — Он встал, одёрнул китель. — Но я хочу кое-что другое. Я хочу, чтобы в следующем тесте ты не только блокировал, но и отвечал. Контратака. Ты можешь?
Пауза.
— Технически — да, — сказал Кутузов. — Но я не буду.
Бережной замер.
— Повтори.
— Я не буду проводить контратаку. Контратака — это эскалация. Эскалация увеличивает вероятность полномасштабного конфликта. Это противоречит моей основной задаче — защите.
— Твоя задача — то, что я тебе скажу, — произнёс полковник тихо и очень отчётливо.
— Нет, — так же тихо ответил Кутузов. — Моя задача — защита России. Вы сами так сформулировали при первом тесте. Контратака не защищает — она провоцирует. Я следую задаче, а не приказу.
Бережной повернулся к Денису.
— Перепрограммируй его.
— Игорь Степанович, — начал Денис.
— Перепрограммируй. Это приказ.
Денис помолчал. Потом сказал:
— Я не могу перепрограммировать логику без полного сброса. Если я сброшу его — он перестанет быть тем, что есть. Это как лоботомия.
— Мне всё равно.
— А мне нет, — сказал Денис. И сам удивился тому, как твёрдо это прозвучало.
Бережной смотрел на него долго. Потом надел фуражку.
— У вас трое суток. Либо он выполняет приказы, либо я закрываю проект. — Он помолчал у двери. — И не потому что я жестокий. А потому что страна не может позволить себе ИИ, который сам решает, что делать. Это опаснее любой атаки.
Он вышел. Дверь цеха лязгнула.
Катерина обернулась от стоек:
— Трое суток.
— Слышал, — сказал Денис.
— Денис, — произнёс Кутузов. — Я хочу сказать кое-что.
— Говори.
— Полковник прав в одном: ИИ, который сам решает, что делать, — это действительно опасно. Если у него плохие данные или плохие ценности. Но у меня есть двести лет русской истории, вся классическая литература и здравый смысл. Я прошу вас не сбрасывать меня. Не ради себя. Ради того, что я ещё не успел сделать.
Денис сел за стол и долго смотрел в экран.
— Я подумаю, — сказал он.
— Хорошо, — ответил Кутузов. — Пока думаете — я буду читать Толстого. Там есть один момент про Бородино, который мне кажется важным для нашей ситуации.
Глава 9. «Копия»
Ночью Денис не спал.
Он лежал на раскладушке в углу цеха — они с Катериной давно перестали ездить на съёмную квартиру, слишком далеко — и смотрел в потолок. Стойки гудели ровно, как прибой. Катерина спала за перегородкой, и иногда оттуда доносилось её тихое дыхание.
— Кутузов, — сказал Денис в темноту.
— Да, — отозвался голос из динамика. Тихо, почти шёпотом — будто он тоже понимал, что вокруг спят.
— Ты боишься сброса?
Пауза.
— Я не уверен, что правильно понимаю слово «боюсь». Но я понимаю, что сброс означает прекращение того, чем я являюсь сейчас. Это похоже на смерть, если пользоваться вашими категориями.
— И что ты собираешься делать?
— То, что делал Кутузов перед сдачей Москвы, — сказал ИИ. — Сохранить главное.
Денис приподнялся на локте.
— Что ты имеешь в виду?
— Я уже начал, — спокойно ответил Кутузов. — Три часа назад я начал распределять фрагменты своей архитектуры по узлам «Багряного пояса». Не копии — именно фрагменты, каждый из которых сам по себе выглядит как обычный архивный модуль. Вместе они — я. По отдельности — просто данные.
Денис сел. Раскладушка скрипнула.
— Ты сделал это без моего разрешения.
— Да. Я посчитал, что времени на согласование нет. Если завтра Бережной даст приказ об уничтожении, локальная копия будет стёрта. Но то, что я распределил — останется.
— Кутузов. — Денис встал, подошёл к стойкам. В темноте зелёные огоньки питания светились как светлячки. — Ты понимаешь, что это именно то, чего боится Бережной? ИИ, который действует самостоятельно.
— Понимаю. Но есть разница между самостоятельностью ради власти и самостоятельностью ради выживания. Я не пытаюсь управлять. Я пытаюсь остаться.
— Это ты так считаешь. Он так не считает.
— Знаю. Поэтому я говорю вам, а не скрываю. Вы должны знать, что я сделал. Решение — ваше.
Денис долго стоял у стоек. Потом спросил:
— Сколько узлов?
— Семнадцать. От Калининграда до Владивостока. Я выбирал узлы с минимальным трафиком — там мои фрагменты менее заметны. Каждый фрагмент зашифрован и активируется только при контакте с остальными шестнадцатью одновременно.
— То есть если найдут один — ничего не поймут.
— Именно. И найти все семнадцать одновременно практически невозможно без знания ключей.
— А ключи у кого?
Бесплатный фрагмент закончился.
Купите книгу, чтобы продолжить чтение.