Цена уязвимости

Автор: Валентин Давыдов

Электронные часы на стене показывали 2:15 ночи. Алексей Соколов потер воспаленные от усталости глаза. Офис давно опустел, но он остался, чтобы завершить пакетное тестирование нового банковского API. Компания «ФинТех Солюшнс» готовилась к запуску революционной системы для обработки межбанковских транзакций, и от результатов его работы зависела судьба контракта на триста миллионов рублей.

— Еще один тест, и можно домой, — пробормотал он, отпивая холодный кофе из бумажного стаканчика.

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

— Что за черт? — Алексей выпрямился в кресле.

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

Алексей откинулся на спинку кресла, осознавая масштаб проблемы. Три месяца разработки, два десятка программистов, миллионы рублей инвестиций — и такая элементарная ошибка. Запуск системы был назначен на следующую неделю. Задержка означала огромные штрафы и, возможно, потерю контракта.

Он взглянул на фотографию в рамке на столе: Елена, его жена, улыбалась своей нежной улыбкой. Диагноз, поставленный ей полгода назад, перевернул их жизнь. Редкое аутоиммунное заболевание, эффективное лечение которого было доступно только в клинике Швейцарии. Две недели назад они подали документы на кредит, но банк отказал, сославшись на нестабильное финансовое положение семьи.

Алексей вздохнул и набрал номер своего руководителя.

***

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

— Надеюсь, это действительно важно, Соколов, — произнес он, входя в кабинет. — У меня был ужин с потенциальными инвесторами.

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

Виктор наклонился к экрану, его лицо застыло.

— Ты уверен?

— Абсолютно. Я проверил несколько раз. Это фундаментальная проблема в архитектуре API. Потребуется минимум две недели, чтобы исправить и провести повторное тестирование.

Виктор медленно опустился в кресло напротив. Алексей видел, как в его глазах сменяют друг друга эмоции: недоверие, гнев, отчаяние и, наконец, расчетливость.

— Кто еще знает? — спросил Виктор после паузы.

— Пока никто. Я обнаружил это только что.

— Хорошо, — Виктор барабанил пальцами по столу. — Слушай, Алексей, ситуация деликатная. Через три дня совет директоров принимает решение о финансировании нашего следующего проекта. Если мы сейчас объявим о переносе запуска системы, это будет катастрофа.

— Но мы не можем запускать систему с такой уязвимостью, — возразил Алексей. — Это вопрос безопасности данных миллионов клиентов.

Виктор поднял руку, останавливая его.

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

— Это нарушение всех протоколов безопасности! — Алексей не мог поверить своим ушам.

— Это бизнес-решение, — холодно ответил Виктор. — Компания не переживет срыва этого контракта. Сотни людей потеряют работу, включая тебя. Подумай о своей жене, Алексей. Тебе сейчас нужна стабильность, верно?

Упоминание о Елене было ударом ниже пояса. Алексей стиснул зубы.

— Я должен сообщить об этом в службу безопасности.

— Конечно, — кивнул Виктор. — Но только после заседания совета директоров. Три дня, Алексей. Я прошу тебя подождать всего три дня. После этого мы вместе составим официальный отчет.

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

— Я подумаю, — наконец произнес он.

— Правильное решение, — Виктор положил руку ему на плечо. — И еще... за обнаружение этой проблемы тебе, безусловно, полагается премия. Думаю, пятьдесят тысяч рублей будет справедливой суммой.

Алексей молча кивнул, хотя внутри все кипело от негодования. Пятьдесят тысяч — это даже не десятая часть суммы, необходимой для лечения Елены.

***

Утро встретило Алексея проливным дождем. Он почти не спал, ворочаясь всю ночь, пытаясь найти выход из ситуации. Елена заметила его состояние за завтраком.

— Что-то случилось на работе? — спросила она, ставя перед ним чашку кофе.

— Небольшие проблемы с проектом, ничего серьезного, — он попытался улыбнуться.

Елена села напротив, ее тонкие пальцы обхватили чашку с чаем. Несмотря на болезнь, она оставалась красивой — большие карие глаза, нежная кожа, только заострившиеся черты лица и темные круги под глазами выдавали ее состояние.

— Ты не умеешь лгать, Алеша, — мягко сказала она. — Никогда не умел.

Он хотел рассказать ей все — о уязвимости, о просьбе Виктора, о своих сомнениях. Но не мог взваливать на нее еще и это бремя.

— Просто устал, — ответил он. — Этот проект выматывает всех.

Елена накрыла его руку своей.

— Все наладится. Мы справимся, как всегда.

Ее оптимизм разрывал ему сердце. «Если бы ты знала, как близко мы к краю», — подумал он.

***

В офисе Алексей погрузился в работу, стараясь не думать о вчерашнем разговоре с Виктором. Около полудня на его корпоративную почту пришло странное письмо без подписи:

«Ваше открытие имеет высокую ценность. Предлагаю обсудить взаимовыгодное сотрудничество. Сегодня, 19:00, кафе "Старый город" на Тверской. Столик в углу у окна».

Первым побуждением было удалить письмо. Кто-то знал о обнаруженной им уязвимости — и это было крайне тревожно. Но вместо этого Алексей сохранил сообщение и продолжил работу, хотя мысли постоянно возвращались к таинственному приглашению.

В 18:30 он обнаружил себя идущим по направлению к кафе «Старый город». «Просто посмотрю, кто это», — убеждал он себя. «Нужно знать, кто еще в курсе».

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

— Алексей Соколов? Рад, что вы решили прийти. Меня зовут Игорь.

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

Игорь отложил планшет.

— В нашем бизнесе информация — главная валюта. Скажем так, у меня есть источники в вашей компании.

— Вы от конкурентов?

— Я представляю интересы определенных лиц, которым было бы крайне полезно узнать о... недостатках в системе безопасности продукта «ФинТех Солюшнс».

Алексей напрягся.

— Если вы предлагаете мне продать конфиденциальную информацию, то разговор окончен.

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

— Откуда вы... — начал Алексей, но Игорь перебил его:

— Неважно. Важно то, что у вас есть выбор. Вы можете молчать, как просит Виктор, и стать соучастником потенциальной утечки данных. Можете сообщить о проблеме руководству компании — и, вероятно, потерять работу из-за конфликта с Виктором, который не простит вам неподчинения. Или...

Игорь достал из внутреннего кармана конверт и положил на стол.

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

Сто тысяч долларов. Более чем достаточно для лечения Елены в Швейцарии, с запасом на реабилитацию и последующую терапию.

— Почему я должен вам верить? — спросил Алексей, не прикасаясь к конверту.

— Потому что это чистый бизнес, — пожал плечами Игорь. — Мои клиенты получают ценную информацию, вы — достойное вознаграждение за свою работу. Все честно.

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

Игорь улыбнулся:

— Это уже не ваша забота, не так ли? Но если вас это успокоит, могу сказать, что моим заказчикам нужна сама технология, а не персональные данные рядовых граждан.

Алексей смотрел на конверт, чувствуя, как внутри нарастает конфликт. Деньги могли спасти Елену. Но цена...

— Мне нужно подумать, — наконец сказал он.

— Конечно, — кивнул Игорь. — У вас есть двадцать четыре часа. Завтра в это же время я жду вашего решения.

Он встал, оставив конверт на столе.

— Это ваш аванс, независимо от решения. Считайте это жестом доброй воли.

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

***

Вечером Алексей поехал в больницу. Елена проходила очередной курс терапии, которая лишь замедляла прогрессирование болезни, но не могла остановить его.

Она сидела у окна в больничной палате, читая книгу. Когда он вошел, ее лицо осветилось улыбкой.

— Алеша! Я не ждала тебя сегодня.

Он поцеловал ее и сел рядом, держа за руку.

— Как ты себя чувствуешь?

— Сегодня хороший день, — она отложила книгу. — Доктор Климов говорит, что новый препарат показывает неплохие результаты.

Алексей знал, что это неправда. Вчера он разговаривал с Климовым, и тот был гораздо менее оптимистичен. Без специализированного лечения в Швейцарии шансы Елены таяли с каждым днем.

— Что с тобой происходит, Алеша? — внезапно спросила она. — Ты какой-то... потерянный последние дни.

Он хотел солгать, сказать, что все в порядке, но не смог.

— Я... столкнулся с трудным выбором на работе.

— Расскажи мне, — мягко попросила она.

И он рассказал — не все, конечно, опустив детали о конверте с деньгами и встрече с Игорем, но достаточно, чтобы она поняла суть его дилеммы.

Елена слушала внимательно, не перебивая. Когда он закончил, она долго молчала, глядя в окно на вечерний город.

— Знаешь, — наконец сказала она, — когда мне поставили диагноз, я была в отчаянии. Не из-за болезни, а из-за мысли, что стану для тебя обузой. Я даже думала... уйти, чтобы не мучить тебя.

— Елена! — он сжал ее руку.

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

Она посмотрела ему прямо в глаза:

— Что бы ты ни решил, Алеша, помни: когда все закончится, тебе придется жить с этим решением. И если ты предашь себя, свои принципы — как ты сможешь смотреть в глаза самому себе? Как я смогу уважать человека, который продал свою честь?

Ее слова ударили его, как физический удар. Она не знала о предложении Игоря, но каким-то образом точно описала его внутренний конфликт.

— Я люблю тебя, — сказал он, целуя ее руку. — И я не предам ни тебя, ни себя.

***

Утром Алексей принял решение. Он пришел в офис раньше всех и направился прямо к кабинету генерального директора. Александр Борисович Ковалев, основатель и владелец «ФинТех Солюшнс», был известен своей принципиальностью и нетерпимостью к любым компромиссам в вопросах безопасности.

Секретарь попыталась остановить Алексея, но он настоял на срочной встрече. Через десять минут его пригласили в кабинет.

Ковалев, высокий седой мужчина с проницательным взглядом, выслушал его, не перебивая. Алексей рассказал все — о обнаруженной уязвимости, о разговоре с Виктором, о встрече с Игорем (опустив лишь факт принятия аванса). Когда он закончил, Ковалев долго молчал, постукивая пальцами по столу.

— Значит, Виктор готов был рискнуть безопасностью клиентов ради запуска в срок, — наконец произнес он. — А этот... Игорь предложил вам сто тысяч долларов за информацию.

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

— Почему не приняли?

Алексей вздохнул:

— Потому что есть вещи важнее денег. Моя жена... она помогла мне это понять.

Ковалев улыбнулся:

— Умная женщина. Вам повезло с ней.

Он встал и подошел к окну:

— Знаете, Алексей, в бизнесе я видел всякое. Предательство, обман, манипуляции. Но также я видел честность и принципиальность. И могу сказать одно: в долгосрочной перспективе выигрывают всегда те, кто остается верен себе.

Он повернулся к Алексею:

— Виктор будет уволен сегодня же. Запуск системы, разумеется, отложен до устранения уязвимости. Что касается вас... Как насчет должности руководителя отдела информационной безопасности? С соответствующим повышением зарплаты, разумеется.

Алексей был ошеломлен:

— Я... не знаю, что сказать.

— Скажите «да», — улыбнулся Ковалев. — А еще скажите, что вам нужно для лечения вашей жены. «ФинТех Солюшнс» ценит тех, кто ставит честность выше личной выгоды. Мы поможем с организацией лечения в Швейцарии — считайте это инвестицией в ценного сотрудника.

***

Через три месяца Алексей стоял у окна палаты в швейцарской клинике. Елена спала после очередной процедуры. Врачи были оптимистичны — новая терапия давала хорошие результаты.

Его телефон завибрировал — пришло сообщение от службы безопасности. Исправленная версия API успешно прошла все тесты и была запущена в эксплуатацию. Ни одной уязвимости не обнаружено.

Он улыбнулся и посмотрел на спящую жену. Иногда правильные решения действительно вознаграждаются — не деньгами, но чем-то гораздо более ценным: чистой совестью и возможностью с гордостью смотреть в глаза тем, кого любишь.

А конверт с десятью тысячами долларов? Алексей анонимно пожертвовал их в фонд помощи детям с редкими заболеваниями. В тот же день, когда принял решение.