Read the book: «Системная ошибка»
Глава 1
Вероника
До начала рабочего дня оставалось больше сорока минут, но тишина на двадцать восьмом этаже никогда не была настоящей. Она лишь маскировала фоновый гул серверных шахт и монотонное шуршание приточной вентиляции.
Я стояла у панорамного окна своего кабинета с чашкой остывающего эспрессо в руке. Внизу, сквозь промозглую октябрьскую морось, расползалась бесконечная серая сетка утреннего города. На полированном стекле отражался мой силуэт: графитовый брючный костюм из плотной шерсти, застёгнутая на все пуговицы шёлковая блузка, идеально уложенные светлые волосы. Броня, которую я надевала каждое утро задолго до того, как в холле звенели створки скоростных лифтов.
Через двадцать один день «НексТек» должен был закрыть сделку с ключевым инвестором.
Двадцать один день. Для финансового директора это был срок финального аудита, для генерального — дата многомиллиардного триумфа, а для меня — обратный отсчёт до неизбежного вскрытия старых ран. В рамках предпродажной проверки внешние аудиторы неизбежно дойдут до запечатанного архива двадцать первого года. До тех самых данных, из-за которых три года назад распался мой брак, а моя безупречная карьера едва не превратилась в пепел.
Дверь приоткрылась без стука. В компанию во всём здании так могла входить только одна женщина.
Тамара перешагнула порог, держа в руках узкую синюю папку. Её строгое каре было безупречным, но во взгляде читалась та сосредоточенная настороженность, которая появлялась у моего заместителя только при запахе крупной юридической катастрофы.
— Он уже в здании? — спросила я, не оборачиваясь.
— Ещё нет, оформляет гостевой пропуск на центральном ресепшене, — Тамара подошла к столу и положила папку прямо поверх стопки моих регламентов. — Но я пришла не за этим. Посмотри на лист согласования.
Я повернулась, поставила чашку на край стола и открыла картонную обложку.
Внутри лежал типовой проект срочного договора на оказание консультационных услуг. Позиция — внешний ведущий архитектор информационной безопасности. Срок действия — ровно три недели, аккуратно под финал инвесторской проверки. Имя кандидата: Волков Кирилл Викторович. Тридцать четыре года.
Но мой взгляд зацепился не за имя. В графе обязательной предварительной проверки службой безопасности не было синей подписи начальника охраны Журавлёва. Вместо неё поперёк листа размашистым почерком генерального директора стояла резолюция: «Оформить допуск в особом порядке. Проверку исключить. В.П. Громов».
Пальцы на мгновение похолодели. Я медленно провела кончиками пальцев по шероховатой бумаге, чувствуя, как внутри туго натягивается привычная пружина тревоги.
— Громов отменил проверку безопасности? — мой голос прозвучал ровно, без единой лишней вибрации. Профессиональная деформация: чем сильнее удар, тем тише и суше я говорю.
— Собственноручно, — Тамара скрестила руки на груди. — Журавлёв в бешенстве, хотя вида не показывает. Виктор Петрович спустил распоряжение в кадры двадцать минут назад в обход внутреннего портала. Ни проверки на благонадёжность, ни запроса справок, ни анализа аффилированности. Человека с улицы заводят на позицию главного архитектора за три недели до закрытия международной сделки. Вероника, это не просто нарушение регламента. Это дыра размером с парадные ворота.
— Кто он такой?
— По официальному резюме — независимый эксперт по расследованию сложных инцидентов, криптографическим контурам и оценке архитектурных рисков. Работал на закрытых проектах, последние два года вёл частную практику. Никаких публичных следов, никаких интервью.
Я закрыла папку. Хлёсткий звук хлопка прозвучал в пустом кабинете как выстрел.
— Тамара, оставь оригинальный лист с резолюцией у себя. Сними две копии, одну положи в сейф комплаенса, вторую отдай мне. И ни одной подписи в системе до тех пор, пока я не вернусь от Громова.
— Ты думаешь, он станет слушать?
— Он обязан меня выслушать, — ответила я, забирая копию. — Потому что если этот архитектор совершит хотя бы одну ошибку, совет директоров спросит с того, чья подпись стоит под актом допуска к персональным данным. А эта подпись — моя.
Приёмная генерального директора пахла дорогим табаком, полированным шпоном канадского ореха и тяжёлым, почти осязаемым спокойствием власти.
Виктор Петрович Громов сидел за массивным столом и листал утреннюю финансовую сводку. В свои пятьдесят пять он выглядел человеком, который давно приучил обстоятельства подстраиваться под собственный ритм: безукоризненный тёмно-синий костюм индивидуального пошива, седые виски, внимательный, тяжёлый взгляд хозяина положения.
— Проходи, Вероника, — он даже не поднял головы, безошибочно узнав звук моих шагов. — Садись. Кофе?
— Спасибо, Виктор Петрович, я уже пила, — я не села, оставшись стоять напротив его стола. Прямая спина, дистанция в два метра. Я положила лист с его резолюцией на край полированной столешницы. — Нам нужно обсудить кандидатуру Кирилла Волкова.
Громов наконец отложил планшет, откинулся на спинку кожаного кресла и мягко, снисходительно улыбнулся. Этой улыбкой он обычно гасил конфликты на правлении, заставляя собеседника чувствовать себя излишне суетливым.
— Я знал, что ты придёшь через пять минут после того, как кадры получат распоряжение. Твоя преданность процедурам всегда меня восхищала.
— Это не преданность, это моя должностная инструкция, — спокойно парировала я. — Мы стоим на пороге проверки инвестора. Любой нестандартный допуск к ключевым сегментам сети станет первым вопросом внешних аудиторов. Вы лично сняли проверку кандидата службой безопасности. Почему?
Взгляд Громова неуловимо изменился. Мягкость никуда не исчезла, но под ней проступил холодный металл.
— Потому что служба безопасности Журавлёва умеет проверять только кредитные истории и штрафы за парковку. А мне нужен специалист высочайшего класса, который за двадцать один день перетряхнет всю инфраструктуру и гарантирует, что при открытии архивных контуров у инвестора не возникнет ни единой заминки. Волков — лучший в своём деле. Я знаю его лично.
— Если вы знаете его лично, это повод заявить о потенциальном конфликте интересов, а не обходить проверку на благонадёжность, — возразила я, глядя ему прямо в глаза. — Мы не имеем права пускать внешнего подрядчика к закрытым сегментам без формального аудита.
Громов вздохнул, опёрся локтями о стол и подался вперёд. Его голос стал тише, доверительнее — и от этой перемены тона у меня внутри всё сжалось.
— Вероника. Скажи мне, кто руководил процессом, когда три года назад у нас случился тот злополучный инцидент?
Воздух в кабинете словно разом потерял весь кислород.
— Вы прекрасно знаете, кто, — с трудом удерживая голос в рабочих рамках, ответила я.
— Именно. Твой бывший муж. Сергей использовал твои рабочие доступы, чтобы выгрузить то, к чему не имел права прикасаться. Скандал был чудовищный. Совет директоров требовал твоей немедленной отставки с передачей материалов в следственные органы. Кто тогда встал между тобой и акционерами? Кто убедил комитет, что твоя подпись под тем отчётом была лишь технической ошибкой, а не преступной халатностью?
Я молчала, чувствуя, как ногти впиваются в ладони под манжетами пиджака. Он бил точно в нерв.
Он делал это каждый раз, когда я пыталась очертить твёрдую границу. Виктор Петрович никогда не кричал. Ему было достаточно мягко напомнить, что моя карьера, моя репутация и этот кабинет принадлежат мне исключительно по его личной милости. В двадцать первом году он действительно прикрыл меня. Он убедил совет принять отчёт без первичных системных логов, заявив, что инцидент исчерпан. И я подписала тот документ. Подписала, зная, что в нём не хватает ключевых страниц, потому что была раздавлена предательством мужа и смертельно боялась пойти на дно вместе с ним.
Этот долг висел на мне все три года. Невидимый ошейник, поводок от которого Громов держал в своём кармане.
— Я помню всё, что вы сделали, Виктор Петрович, — произнесла я, выдерживая паузу. — Но именно поэтому я здесь. Если тот архив будет поднят сейчас, любая процедурная брешь ударит и по компании, и по мне. Я не могу отменить ваше распоряжение о найме Волкова. Вы генеральный директор. Но как руководитель комплаенс-контроля я имею исключительное право определять режим и условия его доступа.
Громов прищурился.
— И что ты предлагаешь?
Я достала из папки заранее подготовленный лист с дополнительными условиями к контракту.
— Никакого безусловного входа. Мы оформляем Волкова как внешнего консультанта со строгим мандатом ровно на двадцать один день. В договор вносится правило двойного контроля. Любая критическая операция, любое обращение к изолированным контурам и тем более к архивам двадцать первого года будет требовать двойного подтверждения. Первый ключ — его технический токен. Второй ключ — мой персональный комплаенс-сертификат. Без моей физической верификации ни один закрытый контейнер не откроется.
— Ты связываешь ему руки, Вероника, — поморщился Громов. — Ему придётся бегать за тобой ради каждого тестового запуска.
— Нет. Я защищаю периметр, — отрезала я. — Каждое совместное действие будет автоматически писаться в неизменяемый зеркальный журнал на внешнем сервере. Если Волков пришёл делать свою работу — это ограничение его не стеснит. Если у него есть иные задачи, система зафиксирует попытку вмешательства мгновенно. Либо мы подписываем контракт с правилом двойного контроля, либо я прямо сейчас направляю уведомление председателю комитета по аудиту о несанкционированном обходе процедур безопасности.
Тишина сгустилась до предела. Громов смотрел на меня долгим, оценивающим взглядом. Он взвешивал риски. Уведомление в комитет накануне визита инвесторов связало бы ему руки сильнее любых моих комплаенс-зажимов.
Наконец он взял со стола тяжёлую перьевую ручку.
— Ты слишком упряма, Вероника. Но пусть будет по-твоему. Двойной ключ. Только учти: если из-за твоих бюрократических препонов он не успеет подготовить инфраструктуру к аудиту, за сорванную сделку совет директоров спросит лично с тебя.
— Я привыкла отвечать за свои подписи, — сказала я, забирая подписанный им лист.
Вернувшись на свой этаж, я застала Тамару у принтера.
— Он подписал? — быстро спросила она.
— Подписал, — я отдала ей документ. — Вноси изменения в договор. Правило двойного контроля в полной редакции: раздельный криптографический доступ, двойная авторизация для любых операций с чувствительными массивами данных, синхронизация с неизменяемым журналом. Аппаратный токен доступа передать ему только после личной подписи под регламентом. И вот это, — я положила перед ней оригинал листа с визой Громова, — запри в наш нижний сейф. Никаких цифровых копий в общем хранилище.
Тамара внимательно прочитала текст. На её лице промелькнуло сложное выражение — смесь облегчения и неподдельного страха.
— Ты ведь понимаешь, во что ввязалась? — тихо произнесла она, глядя мне в глаза. — Если Волков окажется троянским конём, твоя подпись под вторым ключом сделает тебя его автоматической сообщницей. Громов просто отойдёт в сторону и скажет, что доверил тебе контроль над опасным специалистом, а ты не справилась.
— Понимаю, — глухо отозвалась я. — Но без второго ключа он получил бы полную свободу действий внутри закрытого контура двадцать первого года. А так — ему придётся считаться со мной.
В одиннадцать часов утра на моём рабочем мониторе вспыхнуло окно трансляции с камер входной группы.
Служба безопасности активировала временный гостевой пропуск для нового внешнего консультанта. Я переключила изображение на широкоугольную камеру над центральными турникетами.
Кирилл Волков вошёл в холл первого этажа.
Он был высок, широкоплеч, в простом тёмном пальто с мокрыми от дождя плечами и строгом тёмном свитере под горло. Никакого корпоративного глянца, никаких показных атрибутов дорогого консультанта. Его движения отличались скупой, заземлённой точностью человека, который привык двигаться в пространстве без лишнего шума. Он не вертел головой, не оглядывал стеклянное великолепие тридцатиэтажного атриума, как делали почти все новички.
Он подошёл к турникету, спокойно принял из рук охранника пластиковую карточку с красной полосой временного допуска и приложил её к считывателю.
Зелёный индикатор мигнул. Створки разошлись.
И в этот самый момент Волков, не делая следующего шага, медленно поднял голову.
Он посмотрел точно в объектив купольной камеры под высоким потолком — прямо туда, откуда я наблюдала за ним. Взгляд был цепким, тяжёлым, совершенно нечитаемым. Без тени растерянности или показной дерзости. Он словно с первой же секунды пребывания в здании точно знал, где находятся узлы наблюдения, кто именно сидит по ту сторону объектива и по каким невидимым проводам течёт контроль.
Я не шелохнулась, хотя сердце в груди пропустило глухой, неровный толчок.
Глава 2
Кирилл
— Волков, бросай железо. Первый день всё равно комом, пойдём с нами, пропустим по пинте темного.
Парень в толстовке с логотипом компании притормозил у моего стола, уже закинув рюкзак на плечо. Его напарник ждал у лифтов. К семи часам вечера двадцать шестой этаж почти обезлюдел: мониторы в открытой зоне гасли один за другим, в коридоре пахло остывшим пластиком.
— Спасибо, в другой раз, — я даже не поднял глаз от экрана, сохраняя ровную, нейтральную интонацию. — Нужно дочитать регламент разграничения прав.
Парень пожал плечами, переглянулся со своим напарником и двинулся к выходу. Они сочли меня очередным занудным аудитором, помешанным на инструкциях. Идеально. За три года я отвык от пустых разговоров у кулера и не собирался заводить приятелей в месте, куда вернулся с одной-единственной целью.
Щёлкнул магнитный замок коридорной двери, и этаж окончательно погрузился в тишину.
Я откинулся на жесткую спинку рабочего кресла и посмотрел на корпоративный ноутбук. Рядом с клавиатурой тускло блестел матовый металлический корпус выданного мне аппаратного токена — физического ключа, без которого рабочий профиль превращался в бесполезный кусок пластика.
Три года назад в этих же серверных шахтах рухнула вся моя жизнь.
Тогда, в двадцать первом, я задержался в дата-центре на ночь, чтобы остановить несанкционированную выгрузку клиентской базы. Я остановил её, намертво запечатав контейнер аварийным криптографическим контуром, но наутро проснулся главным обвиняемым. Поддельные системные журналы говорили, будто взломщиком был именно я. Судебный приговор, сломанная карьера, клеймо человека, к которому корпорации боятся подходить на пушечный выстрел.
Утром Виктор Громов положил передо мной контракт. Настоящую сделку мы заключили ещё до того, как секретарша напечатала текст: я должен был восстановить доступ к архиву двадцать первого года перед приходом международных инвесторов, а взамен Громов пообещал передать мне служебные материалы, доказывающие фальсификацию моего уголовного дела.
Я не верил Виктору Петровичу ни на грош. Генеральный директор никогда ничего не отдавал из благородства. Если он вытащил меня из небытия и провёл через парадный вход, значит, старый архив понадобился ему срочно и отчаянно. Но этот временный контракт на двадцать один день был моим единственным легальным шансом войти в систему и забрать собственное имя назад.
Я открыл электронную версию договора, утверждённую кадрами два часа назад.
Громов снял проверку безопасности Журавлёва своей властью, но он был в этой компании не единственным хозяином. В договор была вшита отдельная страница, добавленная юридическим отделом и комплаенс-контролем.
Пункт о раздельном криптографическом доступе. Пункт восемь-четыре.
Я медленно читал сухие юридические формулировки, и внутри меня просыпалось редкое, почти забытое чувство профессионального уважения. Текст составил человек, который прекрасно понимал, какую опасность несёт специалист моего профиля.
Женщина с двадцать восьмого этажа. Вероника Полякова.
Утром, стоя под объективом камеры в центральном вестибюле, я безошибочно вычислил, куда тянется управляющий провод наблюдения. Камера на двадцать восьмом этаже держала вход под прямым углом. Я знал, чья фамилия стоит на регламентах безопасности данных. Я ждал увидеть послушного вице-президента, удобную чиновницу, готовую штамповать любые решения своего генерального директора.
Но Полякова поступила иначе. Она не стала публично скандалить с Громовым из-за отмены проверки безопасности. Вместо этого она аккуратно, по всем правилам корпоративного права, набросила на меня стальную цепь.
Согласно её условиям, любая критическая операция в изолированных сегментах требовала двух синхронных подтверждений. Первым ключом выступал мой технический аппаратный токен, вторым — её личный комплаенс-сертификат. Без её физической цифровой подписи я не мог не то что открыть запечатанный контейнер двадцать первого года — я не мог даже развернуть тестовую копию боевой базы. При этом каждое моё обращение автоматически уходило в независимый внешний журнал, который невозможно стереть задним числом.
Полякова не просто защищала компанию от меня. Она защищала себя от возможных последствий решений Громова.
Умный ход. Холодный, расчетливый и безупречный с точки зрения закона. Но этот же механизм создавал для меня глухой тупик: если я попытаюсь дотянуться до старых логов в обход протокола, система зафиксирует нарушение мгновенно, и тогда обратный путь к оправданию будет отрезан навсегда.
Однако у любого двойного замка есть обратная сторона. Если я не могу войти без неё, значит, и Громов со своими людьми не сможет незаметно уничтожить архив, пока действует этот контур.
Мне нужно было выяснить, как именно устроен периметр вокруг меня и кто на самом деле держит руку на пульсе сети.
Я вставил матовый токен в разъём. Индикатор моргнул ровным янтарным светом. Пальцы привычно легли на клавиатуру, выбивая команды с той механической точностью, которая вырабатывается годами ночных дежурств.
Я не собирался взламывать защиту. Это было бы глупостью первокурсника. Вместо этого я остался строго внутри выделенной мне песочницы и сформировал диагностический запрос.
Абсолютно безвредная техническая приманка. Обычный сервисный опрос структуры каталогов, замаскированный под проверку целостности контрольных сумм старых аварийных отчётов. В теле запроса не было исполняемого кода, не было скрытых команд. Я лишь обратился к несуществующему служебному маркеру проверки за двадцать первый год. Если архитектура чиста, система просто вернёт штатную ошибку отсутствия файла, положит запись в общий журнал и забудет об этом.
Но если за моим профилем наблюдают вне регламента — этот запрос неизбежно привлечёт внимание.
Я нажал клавишу ввода. Запрос ушёл в глубину сети.
На экране побежали бледные строки системных ответов. Первое подтверждение я получил почти сразу: закрытый сегмент архива действительно существовал. Тот самый аварийный криптографический контейнер, который я запечатал три года назад, оставался на месте, глубоко в недрах защищённого серверного узла. Его не стёрли и не перезаписали. Он лежал нетронутым, словно неразорвавшийся снаряд, дожидаясь инвесторского аудита.
Но ключ к нему был разорван надвое. Без подписи Вероники Поляковой он оставался слепым монолитом.
Я откинулся на спинку и стал ждать, не закрывая панель локальной телеметрии. Минуты текли медленно. Вентиляция монотонно шелестела над головой, где-то вдалеке щелкнуло реле ночного освещения, погрузив дальний край коридора в глубокую тень.
Прошло сорок пять минут.
На сорок шестой минуте нижняя строка консоли слабо мигнула, сменив цвет на тревожный бледно-жёлтый.
Кто-то обратился к метаданным моей диагностической приманки.
Я придвинулся к столу, вглядываясь в детали перехваченного события. Обращение шло не от автоматической службы комплаенса Поляковой — её сертификат молчал. Запрос был выполнен вручную, через внутреннюю служебную учётную запись с расширенными правами мониторинга.
Служба безопасности компании. Департамент Журавлёва.
Я медленно прокрутил технический след. Официального инцидента зарегистрировано не было. Никакой служебной карточки, никакого официального уведомления комплаенса. Начальник службы безопасности просто залез в мой изолированный сеанс своими ключами, проверил, что именно я искал, и попытался незаметно закрыть сессию.
Вот только он не знал, что приманка была настроена на фиксацию самого факта пассивного чтения.
Внутри у меня похолодело от злого, отточенного азарта. Громов лично отменил проверку Журавлёва, публично дав понять, что охрана не имеет права совать нос в мою работу. Однако люди Журавлёва сидели в сети и не спускали с меня глаз с первой же минуты. Они действовали втайне от Поляковой и, возможно, даже втайне от самого генерального директора.
Или же вся эта показная ссора Громова со своей службой безопасности была лишь спектаклем, предназначенным для того, чтобы усыпить мою бдительность?
Одно было ясно наверняка: здесь шла двойная охота. Вероника Полякова строила против меня легальные процедурные барьеры, а безопасники Журавлёва выслеживали каждый мой шаг из тени, выжидая малейшей ошибки.
Я аккуратно свернул сеанс, сохранил выгрузку перехваченного события на зашифрованный внешний носитель и выдернул аппаратный токен из порта. Стеклянный корпус ноутбука тихо остывал.
Время вышло. На сегодня компания «НексТек» выдала мне всё, что могла.
На первом этаже царил полумрак. Дневной лоск тридцатиэтажного атриума растворился в ночной подсветке; у центральных турникетов скучал единственный охранник в тёмной форме. При виде меня он неторопливо подобрался, проследив за тем, как я прикладываю временную карту к оптическому датчику.
Зуммер пискнул коротко и глухо. Створки выпустили меня наружу.
Холодный октябрьский воздух ударил в лицо мелкой водяной пылью. Я поднял воротник пальто, сунул руки в карманы и спустился по гранитным ступеням к широкому тротуару делового квартала. Москва гудела вечерними пробками, витрины ресторанов размывались в мокром асфальте красными и золотыми полосами.
Я свернул на второстепенную улицу, направляясь в сторону станции метро. Прошёл мимо глухой стены многоуровневого паркинга, скользнув взглядом по зеркалу заднего вида припаркованного фургона.
Сзади, метрах в сорока от меня, медленно катился тяжёлый чёрный седан без опознавательных знаков такси.
Слишком медленно для улицы со свободным движением.
Я сбавил шаг, сделав вид, что достаю из кармана телефон, и плавно повернул за угол дома. Седан тут же перестроился в правый ряд, проехал перекрёсток и замер у края тротуара с работающим двигателем, удерживая точную дистанцию в три корпуса.
Сквозь наглухо тонированное лобовое стекло нельзя было разглядеть водителя, но траектория манёвра была слишком знакомой. Так ведут наружное наблюдение профессионалы, которым не нужна погоня — им нужна фиксация маршрута и контактов.
Они пасли меня не только через офисные камеры и служебные учётные записи безопасности. Меня вели физически, прямо от дверей офиса.
Я убрал телефон обратно в карман, ощутив сквозь ткань плотный холод аппаратного ключа.
Игра началась гораздо раньше, чем рассчитывал Громов, и ставки в ней были куда выше, чем кресло директора или инвесторские миллиарды. И где-то в эпицентре этой надвигающейся катастрофы находилась женщина со строгим взглядом и безупречной причёской, которая думала, что её правила и пункты договоров способны удержать шторм.
Глава 3
Вероника
Во вторник к полудню над городом повисла тяжёлая, белёсая пелена, превратившая панорамные окна малой переговорной на двадцать восьмом этаже в сплошной матовый экран. Внутри было прохладно — система климат-контроля упрямо держала двадцать градусов, гоняя по стеклянному аквариуму сухой, лишённый запахов воздух.
До прихода внешних аудиторов оставалось двадцать дней.
Тамара сидела напротив меня за овальным столом из белого композита и пальцем листала конфигурационную ведомость на служебном планшете. На ней был безупречно выглаженный тёмно-синий жакет, а на столе перед ней лежала открытая папка комплаенс-контроля. Мы работали вместе четыре года, и я знала каждую её привычку: если Тамара крутила между пальцами титановый стилус, не касаясь экрана, значит, степень корпоративной угрозы в её личной шкале зашкаливала за пределы допустимого.
— Стенд изолирован, — произнесла она, не поднимая глаз. — Я лично проверила сетевые таблицы. Ни одного сквозного моста в промышленную сеть. Данные полностью обезличены: синтетические имена, случайные адреса, фальшивые балансы счетов. Настоящих персональных данных там нет ни байта. Если твой протеже решит что-то слить, инвесторы получат телефонную книгу с номерами из семи девяток.
— Он не мой протеже, Тома, — тихо и отчётливо ответила я, поправляя манжету шёлковой блузки. — Он выбор Виктора Петровича. Наша задача — сделать так, чтобы этот выбор не стоил компании головы, а мне — лицензии и должности.
— Ты слишком спокойна, Вероника. Журавлёв с утра ходит по этажу чернее тучи. Охрана шепчется, что Громов устроил ему публичный разнос за вчерашнее самоуправство на турникетах, но начальник безопасности явно не собирается отступать. Он ждёт, когда архитектор оступится. И поверь, он будет копать под каждый протокол, который выйдет из твоего кабинета.
— Пусть копает, — я положила обе ладони на холодную столешницу. — Если процедура безупречна, лопата сломается о железобетон.
Ровно в двенадцать ноль-ноль в матовую стеклянную дверь постучали. Коротко, два чётких удара костяшками пальцев. Без заискивания, без лишней паузы.
— Войдите, — сказала я.
Дверь скользнула в паз, и в переговорную вошёл Кирилл Волков.
Вблизи, при ровном дневном освещении, он казался ещё крупнее, чем на экранах мониторов утренней проходной. На нём был простой графитовый свитер плотной вязки под горло и тёмные строгие брюки без стрелок. Никаких часов престижных швейцарских марок, никаких золотых запонок или накрахмаленных воротников, столь любимых вице-президентами «НексТек». В руках он держал закрытый тонкий ноутбук в титановом корпусе и пластиковый конверт со служебными материалами.
Его взгляд — серый, глубокий, почти лишённый внешней эмоции — скользнул по Тамаре, затем задержался на мне. В нём не было вызова, но присутствовала та концентрированная, давящая собранность, которая заставила мои плечи инстинктивно напрячься под пиджаком. Он оценивал обстановку, как сапёр оценивает незнакомый коридор: быстро, методично, без суеты.
— Добрый день, Вероника Сергеевна, — его голос оказался низким, с лёгкой бархатистой хрипотой, удивительно спокойным для человека, которого накануне вели наружным наблюдением до самого метро. — Тамара Игоревна.
— Присаживайтесь, Кирилл Викторович, — я указала на кресло напротив, сохраняя безукоризненно ровную дистанцию.
Он сел, не делая лишних движений, положил ноутбук на стол и раскрыл пластиковый конверт. Никакой спешки, никакого желания понравиться или сгладить углы. От него пахло свежим холодным воздухом, чистым хлопком и едва уловимой горечью крепкого черного кофе.
— Мы пригласили вас для согласования архитектуры вашей рабочей среды, — начала я, глядя ему прямо в переносицу. — Генеральный директор обозначил вашу задачу предельно широко: аудит уязвимостей и подготовка инфраструктуры к открытию архивных контуров перед сделкой. Однако комплаенс-контроль устанавливает границы, в которых эта задача будет выполняться.
Волков слегка наклонил голову, давая понять, что слушает, но не проронил ни слова. Он держал паузу с тем профессиональным терпением, которое свойственно людям, знающим реальную цену чужим словам.
— Вы получаете изолированную песочницу, — продолжила я, развернув к нему экран второго планшета со схемой разграничения. — Это точная структурная копия наших серверных узлов, но развёрнутая на отсечённом сервере. Внутри — синтетический массив. Все персональные данные клиентов, сотрудников и контрагентов заменены искусственными значениями. Вы можете тестировать нагрузку, анализировать криптографические цепочки, искать структурные бреши. Но доступа к промышленным базам у вас не будет.
— Разумно, — коротко отозвался Кирилл. Его пальцы спокойно лежали на матовой крышке ноутбука. — Было бы странно доверять боевую базу внешнему подрядчику с первого дня.
— Это не вопрос доверия, Кирилл Викторович, — отрезала я чуть резче, чем планировала, почувствовав, как внутри шевельнулось глухое раздражение от его непроницаемости. — Это вопрос минимизации корпоративных рисков. В договоре зафиксировано условие о раздельном доступе. Любая операция, выходящая за пределы песочницы, любая попытка коснуться изолированных архивов двадцать первого года потребует двух ключей. Ваш технический токен инициирует сессию, мой сертификат подтверждает её легитимность. Без моего личного присутствия и подтверждения ни один закрытый контейнер не сдвинется с места.
Тамара придвинула к нему бумажную копию регламента, скреплённую синей печатью.
— Вам необходимо ознакомиться с протоколом ограничений и поставить подпись, — добавила она сухо. — Каждое действие фиксируется в независимом зеркальном журнале.
Кирилл не потянулся за ручкой. Вместо этого он поднял глаза, и на долю секунды мне показалось, что воздух между нами стал плотнее.
— Я прочитал регламент ещё вчера вечером, — спокойно сказал он, глядя мне в глаза. В его взгляде не было враждебности, но была тяжесть человека, который видит скрытые механизмы лучше тех, кто их проектировал. — Условия составлены грамотно, Вероника Сергеевна. Вы отлично защищаете периметр от меня. Но пока вы строили эту стену, вы оставили открытой дверь в собственную спальню.
Тамара нахмурилась:
— Выбирайте выражения, Волков.
— Я выбираю факты, — Кирилл даже не повернулся в сторону моего заместителя; его внимание было приковано исключительно ко мне. Он придвинул свой ноутбук, открыл крышку и повернул корпус так, чтобы мы обе видели экран. — Позволите?
Я молча кивнула, стараясь не выдать внезапного укола тревоги. Сердце толкнулось в рёбра чуть сильнее обычного.
На экране не было сложных программных кодов — только структурная схема прохождения системных событий, нарисованная строгими векторными линиями.
— Вчера после оформления я запустил штатную диагностику внутри выделенного мне тестового профиля, — заговорил Кирилл, и его тон стал сухим, деловым, лишённым всякого намёка на полемику. — Обычный сервисный опрос структуры служебных каталогов. Безвредная приманка. Запрос ушёл в систему в девятнадцать сорок. А в двадцать сорок шесть метаданные этого запроса были просмотрены извне.
— Комплаенс-служба не открывала ваши сессии вчера вечером, — мгновенно среагировала Тамара. — Мой сертификат был деактивирован в восемнадцать ноль-ноль.
— Я знаю, — подтвердил Кирилл. — Это был не комплаенс. Запрос был перехвачен внутренней учётной записью службы безопасности. Департаментом господина Журавлёва.
Я почувствовала, как по спине пробежал неприятный холодок. Пальцы под столом сжались в кулаки.
— Служба безопасности имеет регламентный доступ к мониторингу общего сетевого периметра, — ровным тоном произнесла я, удерживая лицо в полной неподвижности. — В этом нет нарушения.
— Есть, — мягко, но с неотвратимой уверенностью возразил Волков. Он подался вперёд, опершись предплечьями о стол, сократив расстояние между нами до полуметра. Я уловила тепло его тела и то глухое, вибрирующее напряжение, которое исходило от каждого его жеста. — Служба безопасности имеет право мониторить трафик только при зарегистрированном инциденте. Вчера инцидента не было. Но это лишь половина проблемы. Посмотрите сюда.
Он коснулся тачпада, увеличивая центральный узел схемы.
— Ваша комплаенс-архитектура построена на предположении, что служба безопасности является доверенным контролёром, — сказал он, глядя мне прямо в глаза. — Магистральный канал передачи журналов устроен так, что охрана видит все ваши протоколы в режиме реального времени. Они могут читать любой акт, любую запись вашего согласования. Но при этом контур службы безопасности изолирован от комплаенса. Когда люди Журавлёва залезают в ваши служебные записи или в мою песочницу, система не оставляет следа на вашей панели управления. Вы слепы к их действиям. Они видят вас насквозь, а вы их — нет.
В переговорной повисла звенящая тишина. Слышно было только, как за стеклом монотонно шуршит приточная вентиляция.
Тамара медленно перевела взгляд с экрана на меня. На её лице застыло выражение тревожного осознания. Она поняла всё без лишних слов.
Я смотрела на схему, чувствуя, как внутри рушится иллюзия абсолютной защищённости, которую я выстраивала годами.
Это была классическая корпоративная слепая зона. Три года назад, когда создавалась текущая модель безопасности, Журавлёв настоял на исключительных полномочиях своего подразделения, мотивируя это защитой от внутренних утечек. Громов тогда лично утвердил эту схему. И все эти годы я считала, что контролирую соблюдение регламентов, в то время как начальник службы безопасности имел техническую возможность негласно наблюдать за каждым моим шагом, оставаясь в абсолютной тени.
Если бы Волков захотел сыграть против меня, он мог бы промолчать. Использовать эту дыру в своих интересах. Или дождаться аудита и позволить проверяющим размазать комплаенс-контроль за архитектурную близорукость.
Но он выложил карту на стол.
— Зачем вы мне это показываете, Кирилл Викторович? — спросила я, заставляя свой голос звучать прохладно и отстранённо, хотя внутри всё кипело от возмущения собственной уязвимостью. — Хотите выторговать расширенные привилегии для своего профиля?
Кирилл чуть заметно усмехнулся — одним уголком губ, скупо и горько.
— Если бы мне нужны были привилегии, я бы обратился к Громову через вашу голову, — ответил он тихо. — Но мне нужен рабочий результат. Вы установили правило двух подтверждений. Это жесткий механизм, но честный: мы оба отвечаем за то, что откроем. Однако если между моим ключом и вашей подписью сидит третий игрок, способный перехватить трафик и подменить логи до того, как они попадут в неизменяемый журнал, мы оба станем виновными при первой же внештатной ситуации. Двойной замок не работает, если у соседа есть дубликат отмычки.
— Что вы предлагаете? — вмешалась Тамара, в голосе которой уже не было прежнего ледяного скепсиса.
— Изолировать журналы песочницы от общего сервера службы безопасности, — Кирилл развернул планшет с проектом изменений. — Прямое перенаправление событий: только на мой закрытый терминал и на персональную консоль комплаенс-контроля. Зеркальное дублирование в независимый внешний архив без права удалённого редактирования. Журавлёв получит доступ к этим данным только по официальному запросу при расследовании конкретного инцидента, с обязательной электронной визой Вероники Сергеевны.
Я внимательно вчиталась в предложенные им строки.
Он не просил для себя ничего лишнего. Он не требовал административных прав на сервере, не претендовал на доступ к персональным данным, не пытался ослабить моё влияние. Напротив: предложенная им схема связывала его по рукам и ногам ещё крепче, но одновременно выбивала почву из-под ног у внутренней службы безопасности. Теперь любая попытка Журавлёва сунуть нос в тестовый стенд автоматически оставляла несмываемый цифровой след на моём рабочем столе.
Он предлагал мне оружие против общего надзора. И делал это с холодной, хирургической точностью человека, который прекрасно знал, каково это — оказаться беззащитным перед сфальсифицированными отчётами.
Я подняла глаза от экрана. Волков ждал моего вердикта. Спокойный, недвижимый, держащий свои мысли под железным замком. На миг наши взгляды скрестились, и в глубине его зрачков мелькнуло нечто такое, что заставило мой пульс сбиться с ритма: абсолютное понимание моих собственных страхов. Он словно читал мою броню, понимая, чего мне стоит эта маска безупречной леди-директора.
— Тамара, внесите эти правки в регламент песочницы, — распорядилась я, отводя взгляд к стеклу панорамного окна. Мой голос звучал сухо и твёрдо. — Прямой канал, закрытое зеркалирование, исключение несанкционированного перехвата. Подготовьте дополнительное соглашение к контракту.
— Сделаю через десять минут, — кивнула Тамара, быстро поднимаясь из-за стола и забирая свою папку. Она посмотрела на Кирилла долгим, оценивающим взглядом, затем тихо вышла, оставив нас вдвоём.
Звук закрывшегося замка прозвучал особенно отчётливо.
Воздух в переговорной мгновенно изменился. Без Тамары официальная строгость кабинета отступила, обнажив плотное, вибрирующее напряжение, которое мы оба старательно игнорировали последние двадцать минут.
Кирилл взял стилус, лежавший возле планшета. Его пальцы двигались уверенно, без малейшей дрожи. В правом нижнем углу электронного документа он поставил размашистую, чёткую подпись, подтверждающую добровольное принятие схемы взаимного контроля.
Затем он плавно пододвинул планшет обратно ко мне.
Расстояние между нашими руками сократилось до нескольких сантиметров. Я видела на его правом запястье тонкий старый шрам, почти скрытый манжетой свитера, и ощущала сухое тепло, исходившее от его кожи. Мои собственные пальцы на секунду замерли над гладким стеклом экрана.
— Вы не спросили, доверяю ли я вам, Кирилл Викторович, — негромко произнесла я, поднимая на него глаза.
Кирилл не отвёл взгляда. В его лице не было ни тени корпоративного заискивания, лишь спокойная, тяжелая мужская уверенность.
— Доверие — это эмоциональная уязвимость, Вероника Сергеевна, — ответил он тихим, низким голосом, в котором отчетливо прозвучала скрытая сталь. — В этом здании оно стоит слишком дорого, чтобы требовать его вслух. Я предложил вам систему, в которой вам не нужно мне верить. Вам достаточно следить за приборами.
Он встал из-за стола, одним точным движением захлопнул крышку своего ноутбука и убрал его под мышку. Высокий, закрытый, собранный, он на мгновение замер надо мной, глядя сверху вниз.
— Доступ к стенду я получу после обеда? — спросил он совершенно деловым тоном.
— Ровно в четырнадцать ноль-ноль, — ответила я, заставляя себя дышать ровно и глубоко. — Стенд будет открыт.
— Спасибо, — он слегка склонил голову и направился к выходу.
Дверь переговорной бесшумно закрылась за его спиной.
Я осталась сидеть одна в холодной белизне комнаты, глядя на экран планшета, где тускло светилась его свежая цифровая подпись под схемой двух ключей.
Глава 4
Кирилл
В час ночи серверный зал двадцать шестого этажа напоминал глухой стальной бункер, погруженный в вечную мерзлоту.
Система охлаждения с монотонным металлическим свистом гнала потоки ледяного воздуха сквозь решётки фальшпола. В длинных рядах черных стоек мерцали россыпи зеленых и янтарных светодиодов — бесстрастный пульс корпоративной памяти, перемалывающей терабайты транзакций. Здесь не было окон, не было смены дня и ночи. Только холод, запах озона и тяжелый гул вентиляторов, от которого через пару часов начинало ломить виски.
Я сидел перед выдвижной консолью в узком проходе резервного узла. За два дня методичной работы внутри выделенной мне песочницы я окончательно убедился: тестовый контур был собран на каркасе старой инфраструктуры компании. Те же сетевые шлюзы, те же алгоритмы маршрутизации, которые я настраивал здесь три года назад.
Мне выделили технологическое окно с полуночи до двух часов ночи — короткий промежуток минимальной нагрузки на сеть, когда регламент позволял запускать глубокую диагностику криптографических таблиц без риска уронить клиентские сервисы.
Это было абсолютно законное окно. Но главное — оно открывало прямой путь к границе изолированного хранилища.
Я вставил аппаратный токен в терминал сервисной стойки. На черном поле монитора строчка за строчкой разворачивались цепочки служебных команд. Диагностический пакет скользил по внутренним магистралям, опрашивая физические накопители, уходя всё глубже в закрытые кластеры.
И в ноль одиннадцать минут система выдала отклик.
На экране замер уникальный криптографический отпечаток запечатанного контейнера двадцать первого года.
У меня перехватило дыхание, хотя внешне я остался абсолютно неподвижен. Тот самый массив. Исходный зашифрованный контейнер, который я заблокировал в ночь аварии, существовал. Его не уничтожили, не перезаписали мусорными байтами. Он лежал в защищенной ячейке, нетронутый и целостный, как бронированный сейф на дне океана. Внутри находились первичные журналы — единственное материальное доказательство того, что три года назад я остановил вывод клиентской базы, а не взламывал ее.
Но сейф был закрыт на два оборота.
Чтобы завершить тестовый опрос и зафиксировать структуру заголовков архива, требовалось встречное действие. Терминал потребовал вторую цифровую подпись — персональный сертификат комплаенс-контроля. Правило двойного подтверждения, жестко вшитое Вероникой в мой рабочий контракт, сработало как часы.
Она не уехала домой. Я знал это, потому что на этаже дирекции продолжал гореть свет в ее угловом кабинете. Она готовила документацию к предстоящей инвесторской проверке, методично выверяя каждую страницу.
Я сохранил текущую сессию в буфере, вытащил токен и поднялся по пожарной лестнице на двадцать восьмой этаж.
Ночные коридоры дирекции казались вымершими. Приглушенный дежурный свет превращал стеклянные перегородки в глубокие темные зеркала. Дверь в кабинет комплаенс-директора была приоткрыта на пару сантиметров. Из проема полосой падала полоса теплого желтого света.
Я подошел бесшумно, уже собираясь постучать по гладкому дереву косяка, но рука замерла в воздухе.
Вероника сидела за столом, окруженная высокими стопками бумажных папок и раскрытыми аудиторскими описями. Ее графитовый жакет висел на спинке кресла. Блузка из тонкого шелка была расстегнута на две верхние пуговицы, открывая бледную шею и ключицы. Волосы, обычно собранные волосок к волоску, слегка растрепались, пара светлых прядей выбилась на лоб.
Она держала ручку над очередным документом, но ее пальцы мелко, неуправляемо дрожали.
Я стоял в тени коридора и видел то, чего она никогда не позволила бы заметить днем при свете софитов и взглядах подчиненных. Она была на пределе физического истощения. Ее дыхание было поверхностным, частым; она прижала ладонь к виску, пытаясь справиться с приступом головокружения, и на мгновение крепко зажмурилась.
На экране ее рабочего монитора висел открытый запрос от моего сервисного терминала: системное уведомление на подтверждение второй подписи для завершения ночного теста.
Вероника опустила руку на мышь, намереваясь подтвердить операцию механически, просто чтобы закрыть зависшую задачу. Но рука соскользнула, сбив со стола пустую фарфоровую чашку. Чашка покатилась по толстому ковролину, глухо стукнувшись о ножку стола.
Я шагнул в кабинет, намеренно обозначив шаги тяжелым стуком подошв о порог, чтобы не напугать ее внезапным появлением.
Она вскинула голову. В ее глазах на долю секунды мелькнула растерянность, почти испуг от застигнутой врасплох слабости, но уже через мгновение лицо застыло в привычной строгой маске. Только бледность выдавала ее с головой — кожа казалась прозрачной, под глазами залегли темные тени.
— Кирилл Викторович? — ее голос сорвался на полутоне, стал сухим, хриплым. Она прокашлялась, пытаясь вернуть ему начальственную плотность. — Вы пришли за подтверждением? Запрос уже в системе. Я сейчас подпишу.
Она потянулась к считывателю сертификата, но пальцы снова подвели ее, не попадая по пластиковой карте.
— Не надо, — сказал я спокойно.
Я остановился в двух шагах от ее стола, держа руки на виду и не нарушая границу ее личного пространства.
— Что значит — не надо? — Вероника нахмурилась, упрямо сжимая губы. — Технологическое окно открыто до двух часов ночи. Если мы не снимем диагностику сегодня, завтра график сдвинется. До проверки инвесторов меньше трех недель, у нас нет запаса по времени.
— Вы бледная, и у вас дрожат руки, — произнес я, глядя ей прямо в лицо. — Вы когда в последний раз ели?
Она замерла, ошеломленная не столько самим вопросом, сколько той спокойной, безапелляционной уверенностью, с которой он был задан. Привыкшая к корпоративным спорам, она приготовилась защищать регламент, а не объяснять свое самочувствие.
— Это не имеет отношения к делу, — холодно парировала она, но плечи ее предательски опустились.
— Имеет, — я сделал полшага в сторону тумбы, где стояла корпоративная кофемашина и стеклянный графин. — На втором ключе завязана юридическая ответственность. Если вы подпишете операцию в состоянии, когда едва держитесь на ногах, это нарушение того самого регламента, за который вы так бьетесь. Вам нужна помощь?
Вопрос повис в воздухе. Простой, прямой, без снисходительности и без фальшивой жалости.
Вероника посмотрела на меня долгим, тяжелым взглядом. Судя по тому, как напряглась ее челюсть, первой реакцией было выставить меня за дверь и напомнить о субординации. Но пальцы по-прежнему дрожали, а плечи заметно опустились.
Она медленно опустила ладони на край стола, сжав пальцы так, что побелели костяшки, и едва слышно выдохнула:
— В девять утра. Чашка кофе и круассан на бегу.
— Понятно, — кивнул я. — Сидите и не вставайте.
Я налил в чистый стакан прохладной воды из кулера, достал из кармана ветровки герметичный батончик из прессованных орехов и темного шоколада, который всегда носил с собой на случай непредвиденных ночных авралов, и положил все это перед ней. Затем поднял упавшую чашку и поставил ее на поднос.
— Пейте медленно, — сказал я, отступая на шаг назад, возвращая ей воздух и контроль.
Вероника не стала спорить. Она взяла стакан обеими руками, сделала несколько небольших глотков, затем разорвала упаковку батончика. Через пару минут к ее щекам начал возвращаться слабый, едва заметный цвет. Дрожь в пальцах постепенно утихла.
— Вы теряете свое окно, Кирилл, — негромко произнесла она, глядя на экран, где до истечения сессии оставалось сорок минут. Впервые за все дни она назвала меня просто по имени, без отчества, и этот тихий звук прозвучал в пустом ночном кабинете неожиданно интимно. — Вы ведь этого ждали. Вывернули регламент наизнанку, заставили меня пойти на уступки в песочнице, чтобы добраться до закрытых секторов. А теперь стоите здесь и смотрите, как уходит время.
Я усмехнулся — глухо, невесело.
Мне до зубовного скрежета нужно было это окно. Мне нужно было запустить сканирование, забрать структуру заголовков архива, вычислить контрольные суммы и подготовить почву для оправдания своего имени. Для этого требовалось всего одно нажатие на ее клавиатуре. Достаточно было подсунуть ей токен, пока она не успела опомниться.
Но я не мог этого сделать.
Не с ней. Не после того, как три года назад меня уже втоптали в грязь чужой подписью, сделанной под давлением и вслепую.
— Я не собираюсь использовать ваше состояние, чтобы получить подпись, — ответил я, глядя ей прямо в глаза. — Если мы работаем по правилу взаимного контроля, оно должно оставаться честным. Я не беру доступ из ослабевших рук.
Она молчала, не отводя взгляда. В ее глазах не было благодарности — взрослые, битые жизнью люди не разбрасываются благодарностями за чашку воды и кусок шоколада. Но в них появилось нечто куда более ценное: осознание того, что граница, которую я держал, была настоящей. Я не пытался играть роль благородного рыцаря, я просто следовал кодексу, который невозможно нарушить без потери уважения к себе.
— Что с тестом? — спросила она, когда пауза затянулась.
— Тест остановлен, — я подошел к ее монитору, не касаясь ее плеча, хотя чувствовал исходящее от нее тепло и едва уловимый аромат жасмина и сухого шелка. Я аккуратно нажал клавишу отмены на сервисной панели. — Сессия разорвана в штатном режиме. Никаких аварийных сбоев, никаких несогласованных записей.
— Громов завтра утром проверит журнал ночных заданий, — заметила она, и в ее голосе прозвучала профессиональная настороженность. — Он увидит невыполненную диагностику. Спросит, почему процесс буксует.
— Пусть спрашивает, — отозвался я. — Я зафиксирую перенос окна в официальной карточке. Напишу, что при предварительном тестировании возникли архитектурные нестыковки, требующие калибровки.
Вероника медленно покачала головой.
— Нет. Ложь в техническом журнале — это повод для внутренней проверки. Мы напишем правду, оформленную по правилам.
Она придвинула клавиатуру. Ее движения снова стали точными, выверенными, собранными. Она открыла форму служебного тикета управления изменениями, связала ее с идентификатором ночной сессии и быстро набрала несколько строк.
Я читал текст через ее плечо:
«Технологическое окно перенесено по мотивированному решению ведущего архитектора. Причина приостановки признана обоснованной и достаточной. Повторный запуск запланирован в штатном порядке после согласования параметров».
Она приложила свой комплаенс-сертификат к считывателю и нажала кнопку сохранения.
Электронная печать легла в журнал.
Внутри у меня что-то дрогнуло. Глухо, болезненно и остро.
За последние три года любая моя остановка, любое техническое решение, отклонявшееся от стандартного протокола хотя бы на миллиметр, превращалось противниками в доказательство преступления. В обвинительном акте двадцать первого года каждая моя попытка перестраховаться трактовалась как умышленный саботаж. Меня приучили к тому, что система никогда не признает твоих резонов — она лишь фиксирует вину.
А сейчас женщина, которая еще сорок восемь часов назад смотрела на меня как на потенциального диверсанта, собственноручно внесла в неизменяемый реестр запись о том, что мое решение было законным и обоснованным.
Она не стала спасать меня. Она просто выполнила свою работу, защитив процедуру и признав факт. И в этом сухом канцелярском действии было больше человеческого признания, чем во всех дежурных извинениях, которые я когда-либо слышал.
Вероника закрыла карточку задачи, заблокировала рабочий экран и поднялась из-за стола. На этот раз она держалась уверенно, хотя усталость все еще сквозила в каждом движении.
— Я вызываю корпоративное такси, — сказала она, снимая с вешалки графитовое пальто. — Вам тоже пора уходить, Кирилл. Ночью здесь больше делать нечего.
— Я провожу вас до проходной, — я не спрашивал, а просто констатировал факт, снимая с вешалки свою куртку.
Она на секунду задержала на мне взгляд, словно взвешивая, стоит ли возразить, но промолчала. Лишь едва заметно кивнула.
Мы спустились в пустом скоростном лифте в полном молчании. Зеркальные стены отражали нас двоих: собранную, строгую женщину в безупречном пальто и крупного мужчину в темной одежде, стоящего на шаг позади. Между нами было меньше полуметра, но мы не касались друг друга. Это молчание больше не было враждебным. В нем звенело новое, еще не названное вслух понимание.
В холле первого этажа ночной охранник проводил нас настороженным взглядом из-за стойки, пока стеклянные створки турникета со щелчком выпускали нас в прохладу ночного города.
На улице моросил редкий дождь. В свете фонарей мокрый асфальт отливал тусклым свинцом. Через пару минут к тротуару бесшумно подкатил желтый седан с шашечками.
Я открыл перед ней заднюю дверцу, придерживая ее за край.
Вероника села на кожаное сиденье, повернулась ко мне и на мгновение задержала руку на опущенном стекле двери.
— Спокойной ночи, Кирилл, — негромко произнесла она.
— Доброй ночи, Вероника Сергеевна, — ответил я.
Машина плавно тронулась с места и растворилась в пустом проспекте.
Я остался стоять на мокром тротуаре, глубоко вдыхая холодный воздух. В кармане пальто лежал рабочий токен. Диагностическое окно было утеряно, завтра Громов наверняка потребует объяснений задержки, а безопасники Журавлева продолжат копать под мой профиль.
Но в базе данных лежала нетронутая запись, сделанная ее рукой.
А в буфере моего ноутбука на двадцать шестом этаже оставался зафиксированный отпечаток старого запечатанного контейнера. Архив был жив. И теперь я точно знал, что в этой войне за правду я больше не один.
Глава 5
Вероника
Журавлёв положил обе ладони на стопку распечатанных журналов сетевых подключений и посмотрел через стол на меня.
В пятницу в десять утра большая переговорная на двадцать восьмом этаже и без того напоминала зал закрытого трибунала. Длинный стол из полированного белого камня рассекал комнату пополам, словно нейтральная полоса; за окнами висела низкая сырая хмарь, а резкий свет под потолком не оставлял лицам спасительных теней.
Виктор Петрович Громов сидел во главе стола и неторопливо крутил в пальцах дорогую перьевую ручку, сохраняя непроницаемое выражение арбитра. Журавлёв расположился по правую руку от него — массивный, плотно сбитый мужчина пятидесяти лет в мешковатом сером костюме.
Я заняла место напротив, положив перед собой тонкий серый планшет в кожаном чехле. На мне был темно-синий приталенный жакет, скрывающий напряжение в плечах, и шелковый платок, повязанный под самый ворот. Никаких лишних бумаг. В корпоративных войнах побеждает не тот, кто приносит гору макулатуры, а тот, кто безупречно знает последовательность шагов в регламенте.
Кирилл вошел ровно в десять ноль-ноль.
Он перешагнул порог без тени суеты или показной бравады. Темный пиджак поверх простого свитера, собранный, спокойный взгляд, тяжелый шаг человека, привыкшего рассчитывать только на собственное равновесие. Он скользнул глазами по Громову, едва заметно кивнул мне и сел на свободный стул с краю стола, оставив между собой и безопасником ровно три пустых кресла.
— Все в сборе, — негромко произнес Громов, откладывая ручку. — Игорь Олегович, вы созвали это экстренное совещание. Мы вас слушаем.
Журавлёв шумно выдохнул через нос, открыл верхнюю папку и бросил на середину стола три скрепленных листа.
— Я требую немедленного расторжения контракта с господином Волковым, блокировки его пропусков и передачи материалов внутренней проверки в юридический департамент для подготовки заявления, — отчеканил он, уставившись на Кирилла тяжелым, немигающим взглядом.
Громов даже бровью не повел, лишь перевел взгляд на меня.
— На каком основании, Игорь Олегович? — ровным, подчеркнуто деловым тоном спросила я.
— На основании прямой попытки несанкционированного доступа к закрытым контурам в первый же вечер работы, — Журавлёв ткнул толстым пальцем в верхнюю строчку распечатки. — В понедельник, в девятнадцать сорок, подрядчик сформировал запрос к служебным файлам архива двадцать первого года. Без согласованного наряда, без уведомления моей службы. Человек едва переступил порог компании и тут же полез щупать закрытые сектора. Виктор Петрович, я предупреждал вас: брать людей с улицы в обход стандартной проверки благонадежности — прямая диверсия. Теперь у нас на руках зафиксированный инцидент.
В переговорной повисла вязкая, давящая тишина.
Мне было нетрудно предположить, чего добивался начальник охраны. После понедельничного распоряжения Громова это слишком походило на попытку вернуть себе контроль. И одновременно Журавлёв бил по мне: если внешний архитектор взломал периметр под моим комплаенс-надзором, вся вина за допущенную брешь ложилась на мои плечи.
Я не стала оправдываться или повышать голос. Эмоции на таких встречах мгновенно считываются как слабость.
— Покажите мне карточку зарегистрированного инцидента, — спокойно произнесла я, глядя Журавлёву в лицо.
Начальник безопасности нахмурился:
— Какая еще карточка? Вот распечатка системного журнала!
— По действующему регламенту любое подозрительное событие становится инцидентом только после открытия служебного тикета и уведомления руководителя комплаенс-контроля, — ответила я, выдерживая паузу. — В системе нет зарегистрированной карточки за девятнадцать сорок понедельника. Соответственно, юридически инцидента не существует. А что касается технической стороны вопроса — передаю слово архитектору. Кирилл Викторович, поясните, пожалуйста, назначение этого запроса.
Я повернулась к Кириллу. На долю секунды наши взгляды встретились. В его серых глазах не было паники — там читалась холодная, сосредоточенная готовность к бою. По тому, как его взгляд на секунду задержался на мне, я решила, что он понял: я не собираюсь сдавать позиции и оставляю ему коридор для контратаки.
Кирилл положил руки на стол, переплетя длинные пальцы.
— То, что господин Журавлёв называет попыткой взлома, являлось базовой калибровкой диагностического стенда, — заговорил он низким, размеренным голосом, в котором звенела абсолютная техническая уверенность. — Запрос был отправлен исключительно внутри изолированной тестовой среды, предоставленной мне комплаенс-службой. Имя файла, к которому обращался запрос, было фиктивным. В теле пакета отсутствовал исполняемый код, там не было инструкций для выгрузки или модификации данных. Это была штатная диагностическая приманка.
— Приманка? — перебил Журавлёв с саркастической усмешкой. — Вы кого тут ловить собрались, Волков? Нас?
— Я проверял, есть ли в периметре нерегламентированные утечки системных событий, — Кирилл даже не повернул головы в сторону безопасника, обращаясь напрямую к Громову. — И получил исчерпывающий ответ. В двадцать сорок шесть того же вечера метаданные моей приманки были открыты и скопированы. Запрос поступил с внутренней учетной записи департамента безопасности. Без зарегистрированного повода, без санкции комплаенса и в обход согласованного зеркального журнала.
Журавлёв побагровел:
— Мы контролируем безопасность периметра! Это наши прямые обязанности!
— Ваши обязанности заканчиваются там, где начинается нарушение корпоративного регламента, — жестко парировал Кирилл. — Мой контракт содержит прямое условие о раздельном доступе и независимой фиксации всех операций с тестовым массивом. Негласное вмешательство вашей службы в изолированную сессию подрядчика — это прямое нарушение режима конфиденциальности.
Он замолчал, оставив Журавлёва задыхаться от возмущения, и добавил ровным, почти будничным тоном:
— Впрочем, господин начальник охраны решил не ограничиваться цифровым следом. Спустя сорок минут после того, как его сотрудники покопались в моих файлах, меня вели наружным наблюдением от дверей центрального офиса до пересадочного узла метро. Черный представительский седан держал дистанцию в сорок метров.
Громов медленно выпрямился в кресле. Его цепкий, тяжелый взгляд скользнул с Кирилла на начальника безопасности.
— Игорь Олегович? — голос генерального стал тихим и опасным. — Это правда?
— Виктор Петрович, мы обязаны проверять контакты человека с улицы! — начал оправдываться Журавлёв, теряя прежнюю уверенность. — Мы действовали в интересах защиты активов компании перед визитом инвесторов!
Пришло время положить на стол главный аргумент.
Я коснулась экрана планшета, выводя на настенную панель переговорной электронную выписку.
— Служба безопасности имеет право привлекать наружное наблюдение только по письменному представлению, утвержденному генеральным директором и завизированному комплаенс-контролем, — сказала я, и каждое мое слово падало в тишину, как щелчок взводимого затвора. — Такого согласования не было. Но это лишь часть проблемы.
На экране развернулась таблица со штампами въезда и выезда с подземного паркинга нашего делового комплекса за понедельник.
— Это журнал учета транспортных средств, — продолжила я, обводя пальцем выделенную строку. — Автомобиль, который сопровождал Кирилла Викторовича, числится за охранным предприятием, работающим у нас на субподряде по прямому договору со службой безопасности. Он покинул периметр через две минуты после выхода Волкова из здания. На каком основании корпоративный транспорт и ресурсы субподрядчика используются для негласной слежки за приглашенным специалистом?
Журавлёв вжался в кресло, судорожно подбирая слова. Теперь вместо показательной расправы над подозрительным архитектором вопросы грозили уже ему самому: превышение полномочий, нецелевое расходование бюджета и нарушение корпоративной тайны.
— Я... это была стандартная оперативная мера предосторожности... — пробормотал он, глядя исключительно на Громова.
— Мера предосторожности, не оформленная надлежащим актом, называется самоуправством, — отрезала я, не оставляя ему шанса на маневр. — И если эта информация всплывет в отчете внешних аудиторов через две недели, у инвесторов возникнут серьезные вопросы к качеству корпоративного управления в компании.
Я замолчала, сложив руки на столе.
Мы с Кириллом не договаривались об этой атаке заранее. Мы не обсуждали стратегию ночью, когда он помогал мне справиться с истощением в моем кабинете. Но сейчас, в критический момент, мы сработали как единый, идеально отлаженный механизм. Он обеспечил безупречную техническую фактуру, я связала ее нормативными актами и документами.
Мы стояли плечом к плечу — не потому, что между нами возникло слепое доверие, а потому, что оба защищали общие границы.
Громов молчал почти минуту, разглядывая то Журавлёва, то Кирилла, то меня. В его глазах не было гнева — там мерцал острый, расчетливый интерес гроссмейстера, увидевшего неожиданный ход на доске. Он оценил, насколько быстро и безжалостно мы нейтрализовали угрозу начальника охраны. И эта наша сплоченность явно не входила в его первоначальный сценарий.
Расторгнуть контракт с Волковым Громов не мог. Для этого ему пришлось бы признать недействительной собственную письменную визу на найм и признать, что начальник службы безопасности прав. А отдавать власть подчиненным Виктор Петрович не умел органически.
— Достаточно, — наконец произнес генеральный директор, поднимая ладонь. Голос его звучал глухо и сухо. — Игорь Олегович, вы превысили свои полномочия. Всю самодеятельность с внешним наблюдением немедленно свернуть. Никаких проверок без официального уведомления комплаенса. Материалы вашей так называемой проверки подшить в архив и забыть.
Журавлёв стиснул зубы, собрал свои распечатки и, не говоря ни слова, шумно поднялся из-за стола. Его уход оставил после себя ощущение тяжелого, затаенного реванша. Он не смирился — он просто отступил в тень, дожидаясь нашего следующего промаха.
— Кирилл Викторович, продолжайте работу в рамках утвержденного регламента, — добавил Громов, не глядя на архитектора. — До аудита шестнадцать дней. Мне нужен результат, а не междоусобные войны.
— Принято, Виктор Петрович, — Кирилл спокойно встал, кивнул мне и вышел из переговорной.
Я подождала пару секунд, собирая планшет, и тоже направилась к выходу. Но в дверях меня настиг тихий, вкрадчивый голос Громова:
— Вероника. Задержись на минуту.
Я остановилась, положив руку на холодную ручку двери, и медленно повернулась к нему.
Генеральный директор стоял у панорамного окна, заложив руки за спину. Серый свет из окна очерчивал его безупречный профиль.
— Вы с Волковым отлично спелись, — произнес он мягко, почти ласково, но от этого тона у меня внутри все инстинктивно сжалось. — Прямо образцовый тандем. Он подставляет ловушки, ты прикрываешь его процедурой. Красивая работа.
— Я защищала регламент компании и чистоту процесса, Виктор Петрович, — ровно ответила я. — Если бы мы позволили Журавлёву раздуть фальшивый скандал, совет директоров заблокировал бы сделку еще до приезда внешних аудиторов.
Громов повернул голову, и его губы тронула тонкая, ледяная улыбка.
— Ты умная женщина, Вероника. Но иногда ум ослепляет сильнее глупости. Ты так увлеклась защитой своих правил и своего нового подопечного, что забываешь о главном.
Он сделал два неторопливых шага в мою сторону, остановившись на расстоянии вытянутой руки.
— Совет директоров не станет разбираться в тонкостях ваших диагностических приманок. Они видят только подписи на документах. Твоя подпись стоит под каждым протоколом его допуска. Ты сама настояла на раздельном контроле и правиле двух ключей. И если Волков в конечном итоге оступится — или сделает то, ради чего на самом деле сюда пришел, — ты не сможешь сказать акционерам, что ничего не знала. В их глазах ты будешь не принципиальным контролером, а его прямой соучастницей.
Слова прозвучали тихо, без нажима, но в них отчетливо проступила тяжесть будущего обвинения. Это не было отеческим советом. Это было предупреждение о капкане, который Громов уже начал для нас расставлять.
— Я несу ответственность за каждый свой шаг, Виктор Петрович, — выдержав его взгляд, произнесла я. — И за каждый ключ, который держу в руках.
— Посмотрим, — негромко отозвался он и махнул рукой в сторону двери. — Иди работать.
Я вышла в пустой коридор дирекции. Пальцы слегка онемели от напряжения, но дыхание оставалось ровным.
Кирилл стоял в дальнем конце холла, у высокого окна, выходящего на пожарную лестницу. Он ждал меня. Услышав звук моих каблуков по полированному граниту, он повернулся.
Я подошла ближе, остановившись на положенной служебной дистанции. От него пахло холодным утренним ветром и крепким кофе. В полумраке коридора его лицо казалось высеченным из камня, но в глазах больше не было прежней отчужденности.
— Спасибо, Вероника Сергеевна, — произнес он негромко.
В его голосе не было дежурной благодарности за «спасение» — он не считал себя спасенным и не нуждался в жалости. Это было скупое, взрослое признание равного.
— Я сделала то, что требовал протокол, — ответила я, стараясь, чтобы голос не дрогнул от той осязаемой плотности воздуха, которая мгновенно возникла между нами.
— Нет, — Кирилл чуть качнул головой, глядя мне прямо в зрачки. — Вы не изменили правилам, когда на вас давили со всех сторон. В этом здании это редкое качество.
Он помолчал секунду, затем развернулся и зашагал к лестнице, ведущей на его двадцать шестой этаж. Я смотрела ему вслед, пока дверь не закрылась.
Глава 6
Кирилл
После утреннего разбора Громов задержал Веронику за закрытой дверью. Я не слышал ни слова, но того, как он смотрел на неё перед тем, как створки сошлись, мне хватило: давление теперь шло не только на меня.
К пяти часам вечера этаж погрузился в ту липкую, обманчивую тишину, которая всегда наступает в корпорациях после сокрушительных аппаратных бурь. Разгром начальника службы безопасности разлетелся по этажам глухими пересудами, но вслух о нём никто не говорил. Инженеры в открытой зоне старательно делали вид, что поглощены мониторингом. Я сидел за рабочим столом спиной к коридору; за панорамными окнами синели ранние октябрьские сумерки, а на стекле отражались строки конфигурационных файлов, которые я просматривал исключительно по инерции.
Я слишком хорошо знал этот прием. Чужую подпись, чужую должность и чужой страх Громов умел превращать в капкан.
Три года назад меня уничтожили точно так же. Сначала навязали нестандартную аварийную задачу, вынудили действовать на грани регламента, а затем перевернули каждый мой шаг с ног на голову, подсунув следователям сфабрикованные выгрузки. Тогда рядом со мной никого не было. Я принял удар один и заплатил за это судимостью, запретом на профессию и годами вычеркнутой жизни.
Но Вероника не была бойцом-одиночкой. Она была топ-менеджером с безупречным именем, для которой репутация служила единственным щитом. Утром она встала между мной и Журавлёвым не ради спасения подозрительного внешнего подрядчика — она защищала свои регламенты. Однако в глазах руководства она сделала шаг на мою территорию. Она разделила со мной ответственность.
И если я позволю ей подойти ближе, эта надвигающаяся катастрофа накроет её вместе со мной.
Шорох шагов за стеклянной перегородкой заставил меня выпрямиться.
Я не оборачивался, но безошибочно узнал этот чёткий, размеренный ритм каблуков по полимерному полу. Стеклянная створка мягко скользнула в сторону, впустив в тесный бокс тонкий, сухой аромат жасмина и свежесваренного кофе.
Вероника вошла, прикрыв за собой дверь ровно настолько, чтобы отсечь взгляды из открытой зоны, но оставить полупрозрачный зазор — привычка человека, который никогда не запирается наглухо без служебной необходимости.
На ней был тот же тёмно-синий жакет, но шёлковый платок на шее был чуть ослаблен. Она выглядела усталой после тяжёлого дня, однако в осанке, в повороте головы и в спокойном взгляде серых глаз сквозило то редкое внутреннее облегчение, которое испытывает человек, выигравший опасный бой. В руках она держала две бумажные чашки с пластиковыми крышками.
— Не помешаю, Кирилл Викторович? — спросила она негромко. Её голос звучал мягче, чем на утреннем судилище, без привычной металлической комплаенс-ноты.
— Смотря с чем вы пришли, Вероника Сергеевна, — ответил я, плавно поворачиваясь на кресле. Лицо я держал абсолютно нейтральным, руки опустил на колени, не делая навстречу ни единого движения.
Она подошла к краю стола и поставила передо мной одну из чашек. Сквозь клапан поднимался тонкий пар с горьким запахом двойного эспрессо.
— С кофе, — просто сказала она. — И с коротким разговором без свидетелей.
Я не притронулся к чашке. Лишь бросил на неё короткий взгляд и снова посмотрел на Веронику снизу вверх.
— Слушаю вас.
Она оперлась ладонью о край моего рабочего стола, чуть наклонив голову. Расстояние между нами снова сократилось до полуметра, и я физически ощутил исходящее от неё живое тепло.
— Я хотела сказать спасибо за утро, — произнесла она, глядя мне прямо в глаза. В её взгляде не было заигрывания, но сквозила открытая, взрослая готовность признать силу партнёра. — Ваша приманка для службы безопасности была дерзким ходом, но без неё мы бы не выбили почву из-под ног Журавлёва. Вы действовали точно. И главное — выдержали регламент до последней запятой.
— Я выполнял свою работу, — сухо отозвался я, не меняя позы.
Вероника чуть заметно улыбнулась — уголком губ, словно списав мою резкость на профессиональную колючесть.
— Мы оба её выполняли, — мягко парировала она. — Но теперь у нас есть пространство для манёвра. Журавлёв временно нейтрализован, Громов вынужден считаться с процедурой. Нам нужно использовать это затишье. Я проверила расписание технических работ на серверах: в ночь с субботы на воскресенье нагрузка на сеть будет минимальной. Мы можем открыть новое технологическое окно. Вы проведете глубокую калибровку тестового стенда, я дам подтверждение со своего терминала.
Она говорила спокойно, уверенно, строя совместный план действий. В её голосе проступало то доверие, которого она так яростно избегала в первые дни. Она искренне верила, что наша утренняя победа создала надёжный плацдарм. Она была готова встать со мной рядом на следующем шаге, рискнуть своей электронной визой, чтобы мы вместе добрались до истинных причин сбоев.
И именно это доверие было смертельно опасным.
Она действовала так, будто правила и регламенты всё ещё могли защитить от людей калибра Громова. Но правила работают только до тех пор, пока их признают обе стороны. А против нас играли краплёными картами.
Если я приму её совместный план, если позволю ей стать моим полноценным союзником — я привяжу её к мишени на своей спине. А когда ловушка захлопнется, Громов просто предъявит совету директоров её подписи и скажет, что увлечённая директриса комплаенса покрывала хакера из личных симпатий.
Ей нужно было отойти. Срочно, жёстко, без оглядки. Даже если для этого мне придётся разорвать то хрупкое человеческое тепло, которое только начало прорастать между нами.
Я медленно поднялся из кресла. Я был выше её почти на голову, и моя тень легла на полированную поверхность стола, отсекая тёплый свет коридорных ламп.
— Вы делаете неверные выводы из утреннего инцидента, Вероника Сергеевна, — мой голос прозвучал глухо, отчуждённо и холодно, как щелчок замка на морозе.
Вероника замерла. Её пальцы на краю столешницы едва заметно дрогнули.
— Что вы имеете в виду?
— Я имею в виду то, что вы услышали, — я смотрел не ей в глаза, а чуть выше, на идеально уложенную прядь светлых волос у её виска, намеренно избегая прямого контакта. — Утром я защищал исключительно свой контракт и свою безопасность. Журавлёв копал под меня лично. То, что технические доказательства удачно вписались в ваши должностные инструкции и помогли вам поставить на место зарвавшегося безопасника, — случайное совпадение. Не стоит искать в этом признаков партнёрства.
Воздух в стеклянном боксе словно мгновенно вымерз.
Я видел, как изменилось её лицо. Мягкость исчезла без следа, словно её смыло ледяной водой. Кожа на скулах натянулась, черты лица заострились. Она не отшатнулась, не опустила взгляда — её выдержка была феноменальной, но в глубине зрачков на долю секунды плеснуло острое, осязаемое недоумение, переходящее в глухую, болезненную обиду.
Она пришла ко мне с открытым забралом. По-человечески. А я ударил её наотмашь сухим канцелярским цинизмом.
— Вот как, — очень тихо, почти беззвучно произнесла она. Её голос потерял всякую вибрацию, став плоским и бесцветным.
— Именно так, — продолжал я, забивая этот клин с методичностью хирурга, вскрывающего нарыв без наркоза. Внутри у меня всё ныло от этой лжи, но я заставлял себя держать тон. — Я внешний консультант с фиксированным сроком полномочий. Мне не нужны неформальные договорённости, ночные бдения и совместные тактические альянсы. У меня есть чёткий перечень задач по аудиту инфраструктуры. И чем меньше эмоционального шума будет вокруг этого процесса, тем быстрее мы разойдёмся в разные стороны.
Она молчала несколько секунд, которые показались мне вечностью.
Я физически чувствовал, как внутри неё возводится обратная стена. Та самая глухая, железобетонная броня комплаенс-директора, которую она на мгновение сняла, переступив порог моего бокса. Плечи её расправились, подбородок чуть приподнялся.
— Вы совершенно правы, Кирилл Викторович, — отчеканила она. Каждое слово звенело замороженной сталью. — Эмоциональный шум здесь абсолютно лишний. И раз уж вы настаиваете на исключительной чистоте формата — давайте вернёмся к букве регламента.
Она выпрямилась, убрала руку со стола и сделала шаг назад, восстанавливая строгую двухметровую служебную дистанцию.
— Запрос на ночное технологическое окно в выходные дни отклонён, — её голос звучал так, будто мы находились в зале арбитражного суда. — До тех пор, пока вы не предоставите мотивированное письменное обоснование с детальной спецификацией каждого диагностического запроса, доступ к изолированному стенду будет ограничен дневными часами. Любое обращение к архивным сегментам замораживается. Мы будем двигаться строго по процедуре. Никаких исключений.
Она даже не взглянула на оставленный на столе кофе.
Повернувшись на каблуках с идеальной, выверенной грацией, Вероника толкнула стеклянную дверь и вышла в коридор, оставив за собой шлейф морозного воздуха и оглушающую тишину.
Я остался стоять посреди бокса.
Грудь сдавило тяжёлым, тупым спазмом. Я сделал то, что должен был сделать: оттолкнул её на безопасное расстояние, выбил из-под неё статус моего доверенного лица, вернул наши отношения в рамки сухого протокола. Теперь, если меня обвинят во взломе или саботаже, никто не сможет заявить, что она действовала со мной заодно. Её отказ открыть ночной доступ и заморозка стенда станут для неё лучшим алиби перед советом директоров.
Цена была уплачена сполна. Её доверие сгорело дотла.
Я опустился в кресло, пододвинул чашку с остывающим кофе и сорвал пластиковую крышку. Сделал один большой глоток — горький, вяжущий, холодный.
Пора было возвращаться к работе. Без ночного окна мой график трещал по швам, но до аудита оставалось шестнадцать дней, и я обязан был выжать максимум из разрешённых дневных сессий.
Я вставил аппаратный токен в сервисный порт ноутбука и развернул консоль локального мониторинга.
Пальцы механически пробежали по клавишам, вызывая журнал последних системных событий на уровне службы удостоверений. Я собирался проверить статус фоновых заданий перед уходом, но взгляд мгновенно споткнулся о нестандартную строку в самом низу служебного реестра.
Дыхание перехватило.
В шестнадцать сорок две — ровно за двадцать минут до того, как Вероника вошла в мой бокс, — внутренняя служба доверенных сертификатов зарегистрировала скрытую транзакцию.
Кто-то запросил выпуск производного цифрового удостоверения.
Я впился глазами в экран, быстро раскодируя структуру пакета. Это был не штатный пропуск и не сервисный ключ администратора. Это был скрытый цифровой дубликат — виртуальный клон моего собственного рабочего мандата. Неизвестный пытался сгенерировать зеркальный криптографический сертификат, полностью привязанный к моему имени, моим правам доступа и моей служебной учётной записи.
Физический аппаратный токен лежал передо мной — его невозможно было скопировать дистанционно, и сам по себе теневой клон не давал возможности открыть закрытые контуры без подтверждения второго ключа комплаенса. Но он позволял инициировать предварительные системные процессы от моего лица. Создавать видимость того, что именно я отдаю команды в сети.
Классическая схема фабрикации цифрового следа.
Руки двигались молниеносно. Я раскрутил цепочку маршрутизации запроса, пробивая сервисные узлы до точки инициации.
Запрос на генерацию поддельного удостоверения прошёл через внутренний доверенный канал компании. Сертификат авторизации, подписавший создание этой задачи, не принадлежал Журавлёву и его охране.
Он был связан с терминалом рабочей станции, физически расположенной на двадцать восьмом этаже. В приёмной и кабинете генерального директора. В контуре Виктора Петровича Громова.
Холодный пот прошиб спину.
Прямым доказательством вины Громова это пока не являлось: рабочую станцию такого уровня могли использовать удалённо через скрытую службу или скомпрометированный системный процесс. Но вектор атаки обозначился со зловещей ясностью.
Они не просто ждали моей ошибки. Они уже готовили почву для того, чтобы в нужный момент запустить операцию от моего имени, оставив в журналах несмываемый след моего присутствия.
И в этот самый момент на корпоративный почтовый ящик со звучным щелчком упало входящее уведомление с высшим приоритетом важности.
Отправитель: аппарат генерального директора.
Я открыл вложение.
Это было официальное распоряжение за подписью Громова, разосланное узкому кругу топ-менеджеров и ключевых внешних экспертов. Приглашение на закрытый предпродажный приём компании в загородном клубном комплексе в субботу вечером. В примечании мелким канцелярским шрифтом значилось: «Явка приглашённых экспертов по архитектуре безопасности обязательна в рамках предварительного аудита рисков перед советом директоров. Отсутствие рассматривается как невыполнение условий контракта».
Я откинулся на спинку кресла, чувствуя, как внутри нарастает ярость пополам с тревогой.
Отказ означал немедленный разрыв договора и автоматическую потерю доступа к архиву двадцать первого года. Громов срезал мне все пути отхода.
Нас с Вероникой намеренно выдергивали из защищённого периметра офиса. Туда, где не работали строгие служебные регламенты, где не было журналируемых пропускных турникетов и где правила игры диктовал только генеральный директор.
Я посмотрел на тёмный экран ноутбука, где ещё тлели метаданные готовящейся подделки.
Я только что выстроил между нами глухую стену, чтобы спасти её от своего прошлого. Но охота уже началась, и на этот закрытый субботний вечер мы должны были войти чужими людьми, не подозревая, что петля затягивается на наших шеях одновременно.
Глава 7
Вероника
Загородный клубный комплекс «Резиденция» прятался в глухом сосновом бору в сорока километрах от кольцевой дороги.
Сюда не долетал гул вечерней трассы. На мокрых гранитных дорожках горели низкие матовые фонари, бросавшие желтые круги на потемневшие от сырости сосновые иглы. Главный павильон из темного бруса и сплошного тонированного стекла парил над крутым склоном, заливая склон террасы мягким рассеянным светом. Внутри негромко играл струнный квартет, пахло дорогим выдержанным виски, свежими цветами и тем особым, сытым спокойствием, которое возникает там, где люди делят будущую сверхприбыль.
Генеральный директор умел устраивать предпродажные витрины.
Официально этот закрытый субботний вечер назывался неформальной встречей ключевого руководства перед финальной фазой инвесторского аудита. Неофициально — Громов собирал всех, чьи подписи и отчеты должны были лечь в основу многомиллиардной сделки, чтобы лично оценить степень их послушания. И обязательное предписание для внешних консультантов, упавшее накануне на корпоративную почту, отрезало любые попытки сослаться на выходной.
Я стояла у высокого столика в дальней галерее зала, держа в руке тонкую ножку бокала с сухим белым вином. Вино было холодным, правильной температуры, но я едва пригубила его.
Вместо привычного графитового костюма на мне было строгое черное платье из тяжелого шелка с закрытым воротом-стойкой и глубоким, почти до лопаток, вырезом на спине. Никаких вычурных украшений, кроме тонких платиновых серег. Волосы были гладко убраны назад в высокий узел. Корпоративная броня сменилась вечерней, но суть оставалась прежней: безупречная линия плеч, прямая осанка и вежливая, отстраненная улыбка, не допускающая лишних вопросов.
Вчерашний разговор в серверном боксе все еще жег где-то под ребрами.
Кирилл оттолкнул меня с хирургической жесткостью. Он перечеркнул наш утренний союз, свел все к сухому расчету и выставил меня наивной дурой, искавшей человеческого тепла там, где есть только параграфы контракта. Я ответила ему тем же: заблокировала ночной доступ к стенду и захлопнула комплаенс-контроль наглухо.
Мы должны были остаться чужими людьми. Профессионалами, связанными исключительно взаимным недоверием.
Но когда сорок минут назад входные двери холла распахнулись и Волков вошел в освещенный зал, воздух в помещении словно сгустился.
Он надел классический темно-серый костюм и черную рубашку без галстука с расстегнутой верхней пуговицей. На его широких плечах строгая ткань сидела безупречно, хотя в каждом движении по-прежнему сквозила чужеродность этому глянцевому празднику. Он не брал напитков с подносов официантов, не подходил к группам оживленно спорящих директоров департаментов. Кирилл двигался вдоль стеклянных стен зала с той же методичной неторопливостью, с какой обследовал серверные шахты: оценивал выходы, замечал персонал, держал спину прикрытой.
Один раз наши глаза встретились через весь зал.
Всего на долю секунды. Я не отвела взгляда, он тоже не отвернулся. Между нами лежало тридцать метров чужих разговоров и вчерашняя ледяная стена. Мы оба не сделали ни шага навстречу.
Я медленно повернулась к панорамному окну, глядя на темные силуэты корабельных сосен, раскачивающихся под порывами промозглого ветра.
— Скучаете, Вероника Сергеевна?
Тяжелый, хрипловатый голос раздался слишком близко. Справа от меня возник Игорь Олегович Журавлёв.
Начальник службы безопасности сменил свой мешковатый серый костюм на синий блейзер, но выглядел помятым. Его галстук был сбит набок, в руке покачивался широкий тумблер с бурбоном, а лицо лоснилось от выпитого. В глазах тлела та мутная, застарелая злоба, которая копилась в нем со вчерашнего утреннего разгрома.
— Наслаждаюсь тишиной, Игорь Олегович, — ответила я, не поворачивая корпуса и сохраняя подчеркнуто светский тон. — Редкая роскошь перед закрытием крупной сделки.
— Тишиной, значит, — Журавлёв сделал глоток и качнулся вперед, сокращая дистанцию до полушага. От него резко пахнуло табаком и крепким алкоголем. — А зря. Тишина перед бурей всегда обманчива. Вы вчера красиво разложили меня перед шефом. Юридически безупречно, ничего не скажешь. Только зря вы думаете, что бумага с печатью спасет от падения.
— Если вы хотите продолжить обсуждение вчерашнего совещания, мой рабочий день начнется в понедельник в девять утра, — сухо произнесла я, сделав шаг в сторону выхода к застекленной галерее. — В присутствии генерального директора.
Но Журавлёв не отступил. Напротив, он шагнул следом, отрезая мне проход обратно в основной зал. Его крупная фигура загородила свет люстр, бросив на меня тяжелую тень.
— Бросьте, Полякова, — в его тоне прорезалась глухая, фамильярная наглость человека, потерявшего берега. — Мы здесь не под протокол. Вы ведь взрослая, умная баба. Неужели не понимаете, в какую петлю лезете? Зачем вы его покрываете? Ради чего? Виктор Петрович вас три года на руках носил, прикрывал ваш тыл после того позора с бывшим муженьком. А вы берете и ставите на кон всё ради бродячего компьютерщика с уголовным душком?
Мои пальцы сжались на ножке бокала так, что тонкое стекло едва слышно скрипнуло. Внутри поднялась холодная, колючая ярость.
Он бил по тому же больному месту, что и Громов. Но если генеральный делал это тонко, через бархатные намеки на долг, то начальник охраны пер напролом, пользуясь хмельной безнаказанностью загородного вечера.
— Уберите руку от прохода, Игорь Олегович, — сказала я тихо, но так отчетливо, что пара гостей у соседней колонны настороженно оглянулась. — И никогда больше не смейте упоминать мою личную жизнь. Иначе служебное расследование начнется не по факту несанкционированной слежки, а по статье о служебном домогательстве и злоупотреблении полномочиями. Поверьте, комитет акционеров не станет закрывать на это глаза.
Журавлёв скривился, но рука его дернулась к моему локтю, пытаясь перехватить меня за ткань платья:
— Да кому ты будешь жаловаться, гордячка?..
Договорить он не успел.
Сзади бесшумно выросла фигура Кирилла.
Он не кричал, не бросался на начальника охраны и не устраивал дешевого кабацкого спектакля. Он просто шагнул в узкое пространство между мной и Журавлёвым, встав плечом вперед и физически вытесняя безопасника на полметра назад. Его движения были скупыми, расчетливыми и неотвратимыми, словно захлопнувшаяся бронированная заслонка.
— Добрый вечер, господин Журавлёв, — произнес Кирилл низким, абсолютно ровным голосом, в котором не было ни тени вызова, но гудела давящая, заземленная сила. — Кажется, вас искал начальник протокола в банкетной зоне. Инвесторская делегация запрашивала отчет по схеме эвакуации при пожаре. Не стоит заставлять их ждать.
Начальник охраны замер, тяжело дыша. Его рука зависла в воздухе и бессильно опустилась. Он перевел налитые кровью глаза с Кирилла на меня. Оценивал расклад. Здесь, при свидетелях, любая стычка с внешним консультантом означала немедленный скандал, который Громов не простил бы ему никогда.
— Архитектор, значит, — сплюнул Журавлёв сквозь зубы, отступая на шаг к освещенному холлу. — Ну-ну. Смотри, Волков, не надорвись, когда придется держать чужие ошибки.
Он развернулся и тяжелой походкой двинулся в сторону бара, оставив после себя шлейф перегара и липкое ощущение грязи.
Я медленно выдохнула, чувствуя, как по обнаженной спине пробежал неприятный сквозняк. Руки слегка похолодели, но дыхание я выровняла почти мгновенно.
Кирилл повернулся ко мне. В полумраке галереи его черты лица казались высеченными из гранита. Взгляд серых глаз скользнул по моим плечам, задержался на лице, выискивая малейшие признаки слабости или шока.
— Вы в порядке? — спросил он негромко. Без нажима, оставляя мне право на любую дистанцию.
— В полном, — я поставила бокал на ближайший столик, так и не допив вино. — Спасибо, Кирилл Викторович. Хотя я вполне справилась бы сама.
— Я знаю, что справились бы, — просто ответил он, и в его голосе не было привычного сарказма. — Но здесь душно. Давайте выйдем на пару минут.
Он толкнул высокую раздвижную дверь из двойного триплекса, ведущую на открытую боковую террасу.
Свежий, влажный октябрьский холод ударил в лицо, смывая духоту банкетного зала и запах спиртного. Мы вышли на деревянный настил. Терраса была пуста: гости предпочитали оставаться у каминов, и только шелест высоких сосен да редкие капли мороси нарушали ночную тишину.
Дверь за нами скользнула обратно, отрезав звуки струнного квартета. Музыка превратилась в глухую вибрацию за толстым стеклом.
Я подошла к деревянным перилам, оперлась о них ладонями и глубоко вдохнула горьковатый воздух, пахнущий хвоей и мокрой корой. Холод коснулся открытых плеч и спины, заставив кожу покрыться мелкими мурашками, но этот спасительный мороз помогал вернуть абсолютную ясность мыслей.
Кирилл остановился рядом. Не вплотную — между нами оставалось сантиметров тридцать, — но я физически чувствовала исходящее от него плотное тепло.
— Зачем вы подошли, Кирилл? — спросила я, глядя прямо перед собой, в черную бездну соснового оврага. Мой голос звучал тихо, но отчетливо. — Вчера в офисе вы предельно ясно объяснили мою роль. «Никаких эмоциональных шумов». «Исключительно сухой протокол». Вы сами потребовали вернуть наши отношения в рамки чистого регламента.
Он долго молчал. Ветер шевелил пряди его темных волос.
— Вчера я сказал то, что было необходимо сказать, Вероника, — произнес он наконец. Он снова назвал меня по имени, без отчества, и это имя, произнесенное в ночной темноте его низким, глуховатым голосом, отозвалось внутри запретной, опасной вибрацией.
— Необходимым для кого? — я повернула голову, встречая его взгляд.
— Для вас, — Кирилл повернулся ко мне всем корпусом, оперевшись одной рукой о перила. Расстояние сократилось. Его тень накрыла меня, закрывая от ветра. — Вы не понимаете, с чем имеете дело. Вы привыкли воевать параграфами, инструкциями и трудовыми кодексами. Но те, кто три года назад втоптал меня в грязь, играют без правил. Они вырезают куски из логов, ломают судьбы и не оставляют свидетелей. Утром вы встали рядом со мной перед Громовым. Вы сделали себя мишенью. Если я подпущу вас ближе — этот удар разнесет не только меня. Он похоронит вас под обломками вашей безупречной карьеры.
Я смотрела на него, чувствуя, как внутри рушится моя собственная защита.
Он отталкивал меня не из презрения. Не из высокомерия гениального одиночки, которому чужды правила. Он делал это так, как умел: грубо, вслепую, пытаясь выставить рубеж обороны и принять огонь на себя.
— Вы считаете себя вправе решать за меня, Кирилл? — тихо спросила я, и мой голос дрогнул от сдерживаемого напряжения. — Считаете, что я нуждаюсь в том, чтобы меня прятали за чужую спину? Я строила эту жизнь по кирпичу после того, как мой брак обратился в пепел. Я знаю цену чужим долгам и чужой милости. И если я делаю шаг — я делаю его осознанно, понимая последствия.
— Вы не знаете всего, — его голос стал тише, упав почти до шепота, но каждое слово звенело натянутой струной.
— Так расскажите мне, — потребовала я, глядя ему прямо в глаза.
Кирилл не ответил.
Он сделал полшага вперед. Медленно, словно преодолевая сопротивление невидимой преграды.
Время замедлило свой бег, растягиваясь в тягучую, бесконечную секунду. Я перестала слышать шелест сосен за спиной. Существовало только его дыхание, тепло его тела, заслоняющее меня от ночного холода, и его ладонь, которая легла на деревянную раму стеклянной двери всего в паре сантиметров от моего плеча.
Я чувствовала жар его кожи сквозь прохладу ночи.
Он опустил голову. Его губы оказались напротив моих — так близко, что между нами оставалось не больше двух пальцев воздуха. Одно движение, один вдох — и граница рухнет. Мой пульс глухо и тяжело бился в висках, отдаваясь во всем теле осязаемой, тянущей слабостью. Я видела темные крапинки в его серых глазах, след давней усталости на переносице, жесткую складку упрямства у рта.
Он не касался меня силой. Он ждал. Давал мне каждое мгновение на то, чтобы отступить, оттолкнуть, произнести служебное обращение и вернуть все на свои места.
Но я не отступала.
Наоборот: я приподняла подбородок, глядя прямо на его губы. Воздух между нами задрожал от электрической плотности взаимного притяжения, которое мы оба яростно давили всю эту неделю. Желание прикоснуться к нему, стереть эту проклятую дистанцию, почувствовать его руки на своей обнаженной спине было почти невыносимым.
Кирилл едва слышно выдохнул, его ресницы дрогнули, он качнулся навстречу, сокращая оставшиеся миллиметры...
И замер.
Его губы остановились в волоске от моих. Я ощутила его прерывистое горячее дыхание на своей щеке.
Мы стояли так несколько секунд, балансируя на краю пропасти. Два взрослых, обожженных жизнью человека, знающих истинную цену ошибкам.
— Нет, — глухо и хрипло произнес Кирилл. Это слово далось ему с видимым, колоссальным усилием.
— Нет, — повторила я эхом, опуская глаза и делая шаг назад, пока спина не коснулась холодной рамы.
Воздух вернулся в легкие тяжелым, морозным ударом.
Кирилл убрал руку с перил, медленно выпрямляясь. Его лицо снова застыло, но дыхание оставалось неровным.
— Пока идет проверка инвесторов, — сказала я, заставляя свой голос звучать ровно, хотя связки едва слушались, — и пока действует ваш временный контракт, между нами ничего не будет. Никаких личных пересечений. Никаких поводов для шантажа.
— Согласен, — он кивнул, и в его взгляде читалось уважение, перемешанное с немой, сухой болью. — Только работа. Только двойной контроль.
— Только двойной контроль, — подтвердила я.
Мы оба обозначили границу. Честно, добровольно и жестко. Мы закрыли эту дверь прежде, чем она успела распахнуться настежь.
Кирилл первым взялся за ручку стеклянной двери, приоткрыл ее, пропуская меня вперед.
— Возвращайтесь в зал, Вероника, — сказал он тихо. — Вы замерзли. Я зайду через другой вход.
Я вошла в теплое освещенное фойе. Струнный квартет все так же выводил меланхоличную мелодию, гости смеялись у барной стойки, а по коже еще бежали ледяные мурашки от недавнего сквозняка и огненного жара его близости.
Я подошла к дамской комнате, достала из маленького черного клатча пудреницу, чтобы поправить макияж, но пальцы отказывались слушаться.
Внутри сумочки коротко и сухо вибрировал телефон.
Два коротких толчка. Сообщение.
Я достала аппарат. На заблокированном экране светилось входящее мультимедийное вложение с неизвестного городского номера. Никакого сопроводительного текста.
Я разблокировала экран и открыла входящий файл.
В глазах на миг потемнело.
Это была фотография высокой четкости, сделанная длиннофокусной оптикой из темноты парка.
На снимке сквозь сетку капель на объективе были отчетливо видны мы двое у стеклянной двери террасы. Кирилл, нависающий надо мной, его рука на раме у моего обнаженного плеча, мой запрокинутый подбородок и наши лица в полумиллиметре друг от друга. В свете банкетных люстр наш силуэт выглядел однозначно: кадр зафиксировал не профессиональный разговор, а интимный, запретный момент наивысшей близости.
Сердце глухо упало куда-то вниз.
Нас вели. Вели прямо сейчас, в сорока километрах от города, фиксируя каждый жест.
Первым инстинктивным порывом было нажать кнопку удаления, стереть это наваждение, уничтожить следы. Но холодный комплаенс-контроль, вшитый мне под кожу годами жестких корпоративных битв, мгновенно перехватил управление.
Я не удалила снимок.
Вместо этого я быстро сделала резервную копию, зашла в свойства файла и экспортировала технические метаданные сообщения: время доставки, параметры маршрутизации и цифровой идентификатор узла отправки. Всё это я отправила в защищенную личную почтовую папку, к которой не было доступа у внутренних администраторов «НексТек».
Лишь после этого я заблокировала экран и спрятала телефон обратно в клатч.
Глава 8
Кирилл
Сообщение Вероники пришло на мой резервный защищённый номер за три часа до встречи: адрес небольшой кофейни в полуподвале старого особняка и время — четырнадцать ноль-ноль. Никаких подробностей. После вчерашней террасы в загородном клубе и шага назад, на который мы оба пошли с колоссальным усилием, я знал: в выходной она не стала бы дёргать меня без экстренной причины.
Воскресная Москва в районе переулков Остоженки казалась почти вымершей. Низкое свинцовое небо цеплялось за кроны старых лип, мелкая водяная пыль оседала на тёмных плащах редких прохожих. Вместо деловой суеты Сити — глухие фасады доходных домов, мокрый клинкерный кирпич и редкие машины на влажной брусчатке.
Я свернул в глухой тупик, ведущий к скверу. До кофейни оставалось метров пятьдесят, когда впереди, возле чугунной ограды палисадника, я заметил два силуэта.
Вероника стояла спиной к мокрому кустарнику. На ней было строгое темно-серое пальто из плотной шерсти и кашемировый шарф, закрывающий шею почти до подбородка. Никакой косметики, кроме легкого тона, светлые волосы убраны в простой гладкий узел. Но держалась она непривычно — плечи были сведены, спина неестественно выпрямлена, словно она уперлась лопатками в невидимую стену.
Перед ней стоял мужчина.
Лет тридцати пяти, подтянутый, в дорогой стеганой куртке поверх темного джемпера, с аккуратно подстриженной бородкой и цепким, подвижным лицом. Он стоял слишком близко — на том расстоянии, которое в приличном обществе переходят только близкие люди или те, кто намеренно подавляет чужую волю. Его правая рука упиралась в чугунную стойку ограды прямо над ее плечом, отрезая путь к тротуару.
Я сбавил шаг, не приближаясь вплотную, но оставаясь в зоне прямой видимости. Осенний сырой воздух отлично доносил звуки.
— ...ты прекрасно понимаешь, о чем я говорю, Ника, — голос мужчины был мягким, почти ласковым, но в этой вкрадчивой мягкости отчетливо сквозило привычное, отработанное превосходство. — Три года прошло, а ты всё та же. Застегнулась на все пуговицы и думаешь, что если выстроить вокруг себя забор из должностей и служебных инструкций, тебя никто не достанет? Громов держит тебя на коротком поводке, и ты это знаешь.
— Опусти руку, Сергей, — ответила Вероника.
Ее голос звучал тихо, но в нем не было привычной стальной уверенности комплаенс-директора. Он вибрировал от колоссального внутреннего спазма. Пальцы в тонких кожаных перчатках сжимали ремешок сумочки так сильно, что швы на коже натянулись до белизны. Ее дыхание было коротким, прерывистым.
Это не было рабочим спором с агрессивным топ-менеджером. Перед ней стоял человек, который когда-то сломал ее доверие изнутри, выпотрошил личную жизнь и оставил расплачиваться перед чужими людьми. И ее тело помнило этот удар на уровне глубокого, неконтролируемого рефлекса.
— Я просто напоминаю, чем ты мне обязана, — мужчина криво усмехнулся, подаваясь еще ближе. — Если бы я тогда не ушел в тень, твоя карьера закончилась бы вместе с нашей квартирой. А теперь до меня доходят слухи, что перед инвесторской сделкой ты снова решила поиграть в неподкупность. Подумай о последствиях, дорогая. Старые бумаги горят очень быстро, но пепел пачкает руки навсегда.
Вероника качнула головой, пытаясь отступить, но ограда за спиной не давала места для маневра. Ее взгляд метнулся в сторону переулка — и наткнулся на меня.
Она не звала на помощь. В ее глазах не было беспомощной мольбы. Но в них вспыхнуло отчетливое, ясное признание: граница взломана, ей нужен выход из этого тупика.
Я сделал шаг вперед, выйдя из тени лип. Мои ботинки тяжело и мерно ударили по влажному асфальту.
Я не бросался на него с кулаками, не повышал голоса и не пытался играть роль разъяренного ревнивца. В таких стычках физическая агрессия лишь дает нападающему повод перевести конфликт в выгодное ему русло. Я просто подошел и встал рядом с ними, заняв позицию на полшага левее Вероники, плечом перекрывая мужчине возможность сделать еще одно движение вперед.
— Вероника, — произнес я спокойно и низко, глядя прямо на нее.
Это простое имя, названное вслух без отчества, подействовало как заземляющий контур. Ее взгляд мгновенно сфокусировался на мне, плечи чуть опустились, дыхание замедлилось.
Мужчина осекся на полуслове, медленно опустил руку с ограды и повернулся ко мне всем корпусом. Он окинул меня быстрым, оценивающим взглядом — высокий рост, темная куртка, тяжелые ладони, спокойное, нечитаемое лицо. На его губах снова появилась снисходительная улыбка, но в глубине глаз промелькнуло мгновенное напряжение.
— А ты еще кто такой? — спросил он с ленивой неприязнью.
— Мы договорились о встрече, — я даже не удостоил его прямого ответа, продолжая говорить ровно и отчужденно. — У Вероники Сергеевны мало времени.
— Вот как, — мужчина хмыкнул, переведя взгляд на Веронику. — Новый консультант, Ника? Тот самый, из-за которого сейчас в офисе искры летят? Быстро же ты находишь защитников.
Вероника сделала глубокий вдох. Она уже справилась с первым приступом удушья. Лицо ее снова стало строгим, черты заострились, а в серых глазах зажглась холодная, беспощадная ясность.
— Сергей, разговор окончен, — отчеканила она, глядя ему прямо в переносицу. — И никогда больше не смей называть меня этим именем. Если у тебя есть вопросы по архивам или контрактам — направляй официальный запрос через юридическую службу «НексТек». Личных тем между нами не существует уже три года. Отойди с дороги.
Сергей скривился, словно проглотил что-то горькое. Он явно рассчитывал на привычный сценарий: навязать чувство вины, загнать в угол воспоминаниями о прошлом и оставить вариться в собственном бессилии. Но присутствие третьего лица и ее жесткий отпор разрушили всю драматургию.
— Смотри, как бы тебе не пришлось пожалеть об этой принципиальности, — бросил он, отступая на шаг к тротуару. — Аудиторы уже на пороге. Скоро всё тайное станет явным.
Он развернулся и зашагал в сторону перекрестка, раздраженно натягивая перчатки.
Мы остались стоять у ограды вдвоем.
Сырой ветер колыхнул ветви лип, сбросив на асфальт пригоршню тяжелых холодных капель.
Вероника не шевелилась. Она стояла, глядя в спину уходящему мужчине, и я видел, как по ее телу проходит мелкая, неотвратимая дрожь — запоздалый откат после адреналинового всплеска. Пальцы ее все еще судорожно сжимали ремешок сумки.
Я не стал подходить ближе. Не протянул руку, чтобы дотронуться до ее локтя или плеча — любое прикосновение прямо сейчас было бы нарушением границ и ощущалось бы как продолжение чужого давления.
— Пойдемте в тепло, Вероника Сергеевна, — тихо сказал я, намеренно вернув официальное обращение, возвращая ей статус и привычную броню. — В кофейне в это время почти никого нет.
Она моргнула, словно выныривая из ледяной глубины, посмотрела на меня и едва заметно кивнула.
— Да. Пойдемте.
В полуподвальном зале кофейни горели желтые ретро-лампы, пахло жареными зернами и корицей. Старые кирпичные своды гасили уличный шум. Мы заняли угловой столик у дальней стены, подальше от барной стойки и стеклянных входных дверей.
Я принес две чашки горячего чая с чабрецом и поставил перед ней.
Вероника сняла перчатки, обхватив горячую керамику обеими ладонями. Несколько минут мы молчали. Она медленно вдыхала пар, закрыв глаза, пока тепло напитка не вернуло чувствительность ее замерзшим пальцам. Дрожь постепенно ушла, дыхание выровнялось.
— Это был Сергей, — негромко произнесла она, глядя на темную гладь чая. Голос звучал сухо, без жалости к себе, но в нем слышалась застарелая, глухая боль. — Мой бывший муж.
— Я догадался, — ответил я, сделав глоток.
Она подняла на меня глаза. В ее взгляде не было смущения — взрослая, битая жизнью женщина не стыдится шрамов, оставленных чужим предательством.
— Спасибо, что не стали вмешиваться кулаками, — сказала она чуть тише. — И спасибо, что не стали решать за меня. Меньше всего мне сейчас нужно было, чтобы двое мужчин устроили драку за право выяснить, кто из них имеет на меня больше прав.
— Я не имею на вас прав, Вероника, — просто ответил я, выдерживая ее взгляд. — И никогда не претендовал на то, чтобы вести ваши личные войны.
Уголок ее губ дрогнул в едва заметной, грустной усмешке.
— Три года назад он едва не уничтожил меня, — продолжила она, и слова падали тяжело, словно камни на дно колодца. — Он скопировал мои учетные данные, пока я спала в соседней комнате. Использовал мой директорский сертификат, чтобы попытаться выгрузить клиентскую базу компании. А когда служба безопасности подняла тревогу, он просто исчез, бросив меня разгребать последствия перед акционерами. Громов тогда спас меня. Он убедил совет директоров, что произошла ошибка интерфейса, прикрыл дыру в отчете и закрыл расследование. С тех пор я выплачиваю этот долг каждым своим решением. Каждым подписанным регламентом.
Она замолчала, сделав небольшой глоток чая.
Затем открыла сумочку, достала свой смартфон и положила его на середину стола экраном вверх.
— Вчера в загородном клубе, через две минуты после того, как мы разошлись на террасе, мне пришло сообщение с неизвестного городского номера, — сказала она, и в ее голосе снова зазвучал холодный комплаенс-контроль. — Посмотрите.
Я разблокировал экран.
На фотографии мы стояли у стеклянной двери террасы. Моя рука на раме, ее запрокинутый подбородок, лица в волоске друг от друга. В ночном свете люстр этот кадр выглядел как неопровержимая улика: предельная, опасная физическая близость между контролером и навязанным подрядчиком.
Внутри у меня все заледенело от злого, отточенного бешенства.
Они пасли нас каждую секунду. В загородном клубе, в сорока километрах от города.
— Вы не удалили его? — спросил я, разглядывая детали.
— Нет, — твердо ответила Вероника. — Первым делом я выгрузила технические метаданные сообщения и отправила резервную копию на независимый сервер. Точка отправки — виртуальный шлюз одного из внешних сервисов рассылки. Но сам снимок сделан на профессиональную камеру с оптическим зумом. Нас вели целенаправленно.
— Громов готовит повод для дискредитации, — медленно произнес я, складывая картину воедино. — Если внешний аудит вскроет проблемы с архивом, этот снимок положат на стол совету директоров. Они заявят, что комплаенс-контроль был скомпрометирован личной связью с архитектором, а значит, любым вашим возражениям грош цена.
— Я знаю, — она смотрела на фотографию без страха, лишь с горьким расчетом. — Но теперь я хотя бы вижу их оружие.
Она замолчала, убирая телефон обратно.
А в моей голове в этот момент продолжали крутиться обрывки ее недавних слов.
«Сергей... Использовал мой директорский сертификат, чтобы выгрузить базу... Три года назад...»
В памяти вспыхнул тусклый свет служебных ламп следственного изолятора двадцать первого года. Потрепанные картонные папки уголовного дела, с которыми мой адвокат пытался ознакомиться перед первым судебным заседанием. Сотни страниц сфабрикованных технических отчетов, приобщенных к обвинительному заключению.
Тогда я выучил каждую строчку наизусть. Каждую фамилию понятых, инженеров, дежурных администраторов.
В материалах расследования фигурировала сторонняя подрядная организация, которая за две недели до той роковой ночи проводила плановое обслуживание систем контроля и управления физическим доступом в серверные помещения компании. Именно они меняли контроллеры на шлюзах безопасности и обновляли таблицы маршрутизации учетных записей.
Ведущим сервисным инженером того подрядчика, чья подпись стояла на актах допуска к коммутационным стойкам, был Сергей.
Сергей Поляков.
Меня словно ожгло ледяной волной.
Тогда, три года назад, я не обратил внимания на эту фамилию. Мало ли подрядчиков ставит свои визы под типовыми актами техобслуживания железа? Для следователей он был просто свидетелем, подтвердившим, что аппаратура работала исправно.
Но теперь разрозненные фрагменты мозаики с глухим, страшным щелчком встали на свои места.
Сергей не был случайным гражданским мужем, который лишь мог подсмотреть рабочий пароль жены на домашнем ноутбуке. Он был квалифицированным специалистом по инфраструктуре доступа, глубоко встроенным в технический контур компании.
Эта запись еще не доказывала, что именно он завел фальшивые маршруты или готовил физический канал вывода. Но теперь такая версия перестала быть абстрактной: у Сергея были профессиональные возможности и подтвержденная связь с тем участком инфраструктуры, который меня интересовал. А директорский сертификат Вероники мог быть частью этой цепочки.
Если организаторы слива действительно использовали его доступ, дальнейшая схема становилась понятнее: после моей аварийной блокировки следы могли перераспределить так, чтобы Сергей исчез из финального отчета, Вероника осталась связана своей подписью, а вся вина легла на меня. Но пока это оставалось версией, которую еще предстояло доказать.
Громов, Чернов, служба безопасности — и Сергей.
Теперь между ними существовал проверяемый след, а не готовый приговор.
Я посмотрел на сидящую напротив меня женщину.
Она медленно пила остывающий чай, глядя в окно полуподвала на проезжающие колеса машин. Из того, что Вероника рассказала мне сама, я знал: три года назад она связала катастрофу с предательством близкого человека и собственной неосторожностью и до сих пор винила себя за потерянный доступ.
А найденная мной связь могла означать, что эта история была сложнее, чем она пока знала.
Ее брак был лишь одним из узлов в сложной, хладнокровно спроектированной диверсии, направленной на вывод архива и уничтожение всех, кто мог встать на пути.
Сказать ей прямо сейчас?
Нет. Без твердых документальных доказательств, без первичных логов и журналов того года это прозвучит как безумная теория заговора. Это лишь добьет ее, сорвет ее выдержку перед решающей неделей аудита.
The free sample has ended.