
Полная версия:
Игрушка жестокого наследника. Ты украл мой код и обвинил меня во взломе!
— Исчезнуть пытаешься? — он не двигался, преграждая путь всем своим телом. Холодный цинизм исходил от него волнами.
Я замерла. Воздух вокруг нас стал вязким.
— Мне нужно проверить состояние моего терминала, Марк. После инцидента на хакатоне...
— Инцидента? — он усмехнулся, и эта улыбка была опаснее удара. — Ты называешь взлом конкурентов «инцидентом»? Твой скрипт восстановления обошёл закрытый контур на отборе. Я потратил месяцы на подготовку. А ты... просто прошла мимо открытой двери.
— Это была ошибка! — голос сорвался, став тонким и чужим. — Я восстанавливала свою сессию!
— Ошибки стоят денег, Волкова. И свободы.
Он сделал шаг ближе. Я почувствовала запах его парфюма — дорогой, древесный, с ноткой чего-то химического. Запах власти.
— У меня есть скриншоты твоего IP-адреса в закрытой зоне доступа к базе данных организаторов. Несанкционированный доступ. Статья 272 УК РФ. До двух лет лишения свободы. Твои родители в провинции будут знать всё до последней строчки.
Меня тряхнуло, как от электрического разряда. Страх перед отчислением бледнел на фоне угрозы реальной тюрьмы. Марк контролировал мою цифровую тень. Он видел то, чего не видела система безопасности академии. Он знал больше, чем просто «студентка-неудачница». Он был кукловодом, а нитки были вплетены в саму ткань интернета.
Марк взял меня за локоть — тем же жестом, что и после хакатона, — и повел к служебной двери в глубине технического этажа. Пропуск приложился к считывателю, замок щелкнул, признавая в нем хозяина, и меня втолкнули в рев кулеров.
Серверная комната была адом в миниатюре. Ряды стоек с горячим воздухом создавали эффект сауны, где вместо воды кипела информация. Марк загнал меня в угол между двумя массивными шкафами. Здесь шум был громче, давил на барабанные перепонки.
— После твоего «нет» устных условий мало. Закрепим нашу сделку, — сказал он, глядя мне прямо в глаза. В его взгляде не было жалости, только расчет. — Я уничтожаю доказательства твоего несанкционированного доступа. Стираю логи, подменяю время входа. Ты остаешься студенткой. Сохраняешь стипендию. Не садишься в тюрьму.
— Взамен? — спросила я, чувствуя, как сердце колотится так сильно, что отдавало в горле.
— Ты остаёшься моим личным баг-хантером. Вся грязная работа по поиску уязвимостей в проектах моих клиентов ложится на твои плечи. Полная анонимность. Ни одного слова о том, кто писал код.
— Нет, — слово вырвалось само. Жесткое, сухое. — Я не буду писать код для твоих игр. Я инженер, а не твой раб.
Марк посмотрел на дверь, потом снова на меня. Его лицо оставалось каменной маской.
— Тогда завтра утром ты узнаешь, каково это — иметь судимость за киберпреступление в девятнадцать лет. Твоя жизнь закончится до начала. Ты хочешь этого, Алина?
Угроза стала конкретной, осязаемой. Абстрактная стипендия сменилась реальной юридической катастрофой. Я чувствовала, как жар серверов плавит остатки сопротивления. Меня загнали в угол не физически, а экзистенциально. Система работала против меня, и Марк был её главным исполнителем.
Марк ждал. Он умел ждать — видимо, это тоже входило в уроки его отца. Я стояла между раскаленными стойками, чувствуя, как испарина разбивает тело, и не могла отвести взгляд от его каменной маски.
Тишина длилась вечность. Гудение кулеров превратилось в пытку. Пот стекал по спине, попадая в воротник футболки, неприятно холодный и мокрый. Время работало против меня. Каждая секунда молчания приближала крах.
Я закрыла глаза. В голове пронеслись кадры: унижение перед аудиторией, презрение Вики, тёплая флешка из руки Дениса. Страх никуда не делся, но рядом с ним выросла злость — на себя за слабость, на него за жестокость.
Первая нарушила молчание.
— Давай условия, — сказала я тихо, открывая глаза. Голос звучал тверже, чем я ожидала. — Прямо сейчас.
Марк чуть приподнял бровь. Ему нравилось, когда жертва начинала торговаться. Это признак жизни. Признак того, что можно сломать окончательно.
— Полная анонимность, — начал он перечислять, загибая пальцы. — Выполнение любых задач по поиску уязвимостей в конкурентах. И главное: запрет на общение с Денисом Соколовым. Он — слабое звено. Он слишком много знает и слишком мало понимает цену лояльности.
— Денис — мой друг, — возразила я, чувствуя, как ногти впились в ладони. — А не твой враг. Почему я должна отказываться от единственного человека, который...
— В этой академии нет друзей, Волкова, — перебил он, и в его голосе появилась сталь. — Есть только активы и liabilities. Обязательства. Ты выбрала статус актива. Активы не имеют права голоса. Они служат цели.
Философия Марка открылась мне целиком. Мир делился на ресурсы. Человеческие связи были слабостью, которую можно эксплуатировать или устранять. Он не просто жестокий сноб. Он продукт среды, где эмпатия считается багом.
Разговор иссяк. Марк на мгновение задержал на мне взгляд, словно проверяя, всё ли я уяснила о правилах его мира, а потом полез во внутренний карман пиджака.
Марк протянул свой телефон. Экран светился синим холодным светом, показывая форму электронного соглашения. Курсор мигал в поле «Подпись».
— Подписывай. И проблема исчезнет.
Я взяла телефон. Пальцы дрожали, экран плыл перед глазами. Данные о моем «преступлении» висели там, как приговор. Отказаться означало конец. Согласиться означало стать частью его машины.
Но рядом с формой соглашения осталось открыто уведомление его административной панели: выгрузка клиентской базы на внешний сервер. Адрес получателя, порт 4433, его личный ключ. Я успела прочитать строки, прежде чем уведомление исчезло. Про законность выгрузки я ничего не знала. Зато видела, как быстро Марк попытался закрыть её от меня.
Я посмотрела на Марка. Он наблюдал за мной с лёгкой скукой, уверенный в своей победе.
— Я делаю это, — произнесла я четко, набирая текст на клавиатуре. Каждое слово было ударом молота. — Но если ты хоть раз публично назовешь меня «ассистенткой» или обесценишь мою работу при людях...
Марк нахмурился, заметив паузу.
— ...я сама сдам тебя отцу за то, что ты сливаешь данные третьим лицам через шифрованный канал на порту 4433. Я видела логи, Марк. У тебя тоже есть секреты.
Тишина серверной стала абсолютной. Даже гудение кулеров казалось далеким фоном. Марк замер. Его поза изменилась — расслабленность исчезла, тело напряглось, как перед прыжком хищника. Он медленно отвел взгляд от телефона и посмотрел на меня. Впервые без маски цинизма.
Его улыбка исчезла. Лицо стало серьезным, сосредоточенным. Выражение осторожного уважения смешалось с новым, неизвестным прежде интересом.
— Ты читала мои личные логи? — спросил он тихо, но без угрозы. Скорее с недоумением.
— Ты дал мне свой телефон с открытой админ-панелью. Моя память на алгоритмы лучше, чем твоя самоуверенность.
Я задержала палец над подписью. Он больше не торопил меня. Значит, я попала в больное место. Сделка теперь была двусторонней ловушкой. Он думал, что купил меня страхом, а я продала ему свою свободу за право дышать и держала нож у его горла.
Марк посмотрел на меня так, будто впервые увидел живого человека, а не функцию.
— Хорошо, Волкова, — сказал он, и в его голосе появилось что-то новое. Холодное, но партнерское. — Игра началась. И поверь мне... я никогда не проигрываю.
Я поставила подпись и вернула ему телефон. Экран погас, оставив нас в темноте гула серверов. Свет индикаторов мигал красным, зеленым, желтым — ритмично, как сердцебиение машины, в которой теперь жили мы оба.
Глава 5
Воздух в серверной студсовета пах озоном и застарелой пылью, осевшей на радиаторах охлаждения. Моё сердце колотилось так сильно, что я боялась, его услышат даже глухие стены. Пальцы дрожали над клавиатурой ноутбука, подключенного к порту, который Денис «случайно» оставил незакрытым. Всего три минуты. Три минуты на то, чтобы найти дыру в системе, которую Марк назвал «детской площадкой», и уйти, не оставив следов. Я должна была стать призраком. Невидимкой. Иначе он выложит мои данные в сеть, и моя жизнь закончится раньше, чем начнётся настоящая учёба.
Я набрала команду сканирования, но экран мигнул красным. На панели у двери загорелся красный индикатор. Система безопасности засекла мой IP-адрес, привязанный к комнате 304 в общежитии.
«Думай как админ», — всплыл в голове голос Марка, холодный и насмешливый.
Паника сжала горло спазмом. Если сейчас войдут охранники, меня отчислят до рассвета. Я лихорадочно открыла консоль, игнорируя предупреждение системы. Нужно обмануть логический фильтр. Я остановила сканирование и переподключилась через оставленный сервисный порт. В локальном сегменте подменила MAC-адрес на адрес отключённого принтера в холле первого этажа. Красная лампочка мигнула ещё раз, неуверенно, а затем погасла. След сбился. Я выдохнула, чувствуя, как пот стекает по спине, оставляя холодный след под футболкой.
Тишина продлилась ровно десять секунд. Затем дверь скрипнула, пропуская поток громких женских голосов и запах тяжелого, сладкого парфюма Вики Лариной.
— ...и ты уверена, что декан даст нам ключи от актового зала? Там же старые замки, они застревают! — звонко говорила одна из девушек поддержки Вики.
При звуке открывающейся двери я забралась за шкаф с ноутбуком. Они стояли буквально в двух метрах от меня. Сердце пропустило удар. Шум их смеха резал уши, мешая сосредоточиться на коде. Я рисковала быть услышанной из-за малейшего шороха ткани или собственного учащенного дыхания. Я прикусила губу, сдерживая шумный вдох, и продолжила печатать на ноутбуке, спрятанном у коленей. Enter. Строка за строкой. Я была внутри системы, пока снаружи обсуждали бал и новые туфли.
Вика шагнула ближе к рабочему столу администратора, чтобы оставить там сумку. Её локоть случайно коснулся клавиатуры. Экран монитора ожил, показывая журнал действий последних минут.
Я затаила дыхание. На экране мелькнула строка: User: A_Volkova. Это был мой старый алиас, который я использовала в черновиках, забыв стереть его из временных файлов. Вика щурилась, её пальцы уже тянулись к мыши, чтобы открыть детальную информацию. Она начала читать.
У меня было две секунды. Не больше. Я наклонилась к микрофону гарнитуры, закреплённому на воротнике куртки, и шепнула команду удаления лога, которая улетела в сеть через удаленный доступ к терминалу. Вика моргнула, пытаясь сфокусироваться на тексте, но экран вдруг стал серым и пустым.
— Странно, — пробормотала она, убирая руку. — Глючит что-то.
Она развернулась и вышла, таща за собой своих подруг. Дверь закрылась, оставив меня одну в темноте и гуле вентиляторов. Я чувствовала себя грязной. Но файл был почти готов.
Скачивание данных о финансовых махинациях главы студсовета (друга Вики) шло медленно. Прогресс-бар полз, как черепаха на льду. Внезапно телефон завибрировал в кармане. Экран осветился именем: МАРК.
Он знал. Он всегда знает.
Я отклонила звонок. Секунда тишины, и он снова зазвонил. Требовательно. Настойчиво. Если я не сдам ключи дешифровки прямо сейчас, он выполнит угрозу. Я слышала его голос в своей голове, хотя трубка молчала: «Здесь и сейчас, Волкова. Или твоя стипендия станет моей».
Время истекало. Файл скачался, но не открывался. Он был зашифрован нестандартным протоколом, которого не должно было быть в этой системе. Марк требовал результат, а я смотрела на бессмысленные символы. Страх превратился в ледяную ярость. Я игнорировала третий звонок, бросив телефон на пол. Мне нужно было думать не как жертва, а как хакер.
Я вспомнила уроки отца, когда он заставлял меня изучать RSA-шифрование просто «для общего развития», пока другие дети играли. Алгоритмы всплыли в памяти, четкие и красивые. Я начала перебирать варианты, но файл оставался неподвластным. Тогда я посмотрела глубже. Не на сам файл, а на канал передачи. Бэкдор был не в данных, а в протоколе обмена между сервером и клиентом. Кто-то специально оставил «дверь» для тех, кто знает код доступа.
Я нашла ключ. Расшифровка заняла три секунды. Отправив файл в общий чат проекта, я наконец подняла телефон с пола.
Марк ответил мгновенно.
— Ты опоздала, — сказал он сухо. Голос был спокойным, без тени удовлетворения.
— Данные готовы, — прошептала я.
— Хорошо. Жди.
Я ждала. Ожидала благодарности. Ожидала, что он признает мою работу, может быть, ослабит хватку. Вместо этого он отключился. Утром мне пришло уведомление от курса. Глава студсовета, Артём, получил вызов к ректору прямо во время лекции. Его публично обвинили в краже бюджета на ремонт аудитории. В тот же день, после пары, я увидела последствия своими глазами. Артём сидел в коридоре, бледный, с дрожащими руками, глядя в пол. В скачанных мной документах не было доказательств этой кражи. Зато Артём был союзником Вики. Марк использовал мой талант не для справедливости, а для устранения конкурента в борьбе за влияние внутри колледжа. Меня тошнило. Я попыталась написать ему: «Стоп, это было нечестно». Курсор завис, мигая в пустоте.
Шаги в коридоре. Знакомые, уверенные. Марк остановился напротив меня. Он выглядел идеально: белая рубашка, дорогие часы, глаза, в которых не было ни капли тепла.
— Ты слишком долго думала, Волкова, — сказал он, не повышая голоса. — Это могло привести к провалу.
— Артём потерял будущее из-за твоего каприза, — выпалила я, чувствуя, как гнев заменяет страх.
Марк усмехнулся. Холодно.
— Капризы держат порядок. А теперь следующий этап. Тебе нужно внедрить троян в систему голосования за стипендии. Где участвуешь и ты.
— Нет, — я отступила назад, упёршись спиной в стену. — Это нарушение этических норм. Это риск для меня лично. Если система заметит...
— Ты уже в игре, Волкова, — перебил он, делая шаг вперед. Его лицо оказалось опасно близко. Я чувствовала запах его дорогого одеколона, смешанный с запахом опасности. — Отказ — это признание вины в предыдущем взломе. Хочешь, чтобы я показал всем твои логи доступа к серверной?
Мое тело сковало. Он прав. У меня нет выхода.
— Я сделаю это, — прошипела я сквозь зубы.
— Вот и хорошо. Встречаемся завтра в полночь. Не опаздывай.
Он развернулся и ушел, оставив меня стоять в пустом коридоре, чувствуя себя выжатой тряпкой.
Я бежала в общежитие, стараясь не плакать. В комнате Дениса горел свет. Он сидел за столом, крутя в руках флешку. Когда я вошла, он поднял глаза. В них было сочувствие, которое резало больнее, чем жестокость Марка.
— Ты выглядишь ужасно, — тихо сказал он.
— Я сделала всё, что он хотел, — пробормотала я, падая на стул. — Но это неправильно, Денис. Они разрушают людей. Я должна выйти из этого. Даже если меня отчислят. Лучше быть свободной и бедной, чем богатой и рабыней.
Денис помолчал, затем встал и приоткрыл дверь. Он указал на угол потолка в коридоре.
— Посмотри туда. Видишь эту маленькую точку?
Я присмотрелась. В углу, среди теней, тускло мерцал красный огонек.
— Скрытая камера, — сказал Денис, и его голос звучал глухо. — Она пишет всё. Каждый твой шаг, каждое слово. Марк контролирует не только код, Алина. Он контролирует физическое пространство академии. Бежать некуда. Ты уже в клетке.
Я посмотрела на красный огонек. Он мигнул в ритм моего сердца. И я поняла: меня не просто слушают. Меня смотрят. Прямо сейчас.
Глава 6
Мир плыл перед глазами, как размытая картинка после удара головой о стекло. Аудитория №402 пахла пылью, старым пластиком клавиатур и чужим страхом — густым, тошнотворным запахом, который я не могла выветрить даже открытым окном. Я сидела на задней парте, вцепившись пальцами в край стола так, что костяшки побелели. Передо мной лежал ноутбук, экран которого мигал курсором, ожидая начала отсчета времени до катастрофы.
Стилус выскользнул из дрожащей руки и со звонким щелчком упал на пол. Звук показался мне оглушительным, будто кто-то хлопнул дверью лифта прямо у меня над ухом. Я замерла. В горле пересохло, язык прилип к нёбу, а сердце колотилось где-то в висках, заглушая голос преподавателя по криптографии.
— Волкова? — раздался ласковый, липкий от притворной заботы голос.
Вика Ларина стояла в проходе между рядами, скрестив руки на груди. Её блузка была безупречной, ни единой складки, а взгляд скользил по моему лицу с интересом энтомолога, рассматривающего подбитую бабочку.
— Ты бледная, Алина. Не заболела? Или это нервный срыв? Говорят, у плагиаторшей часто бывает психосоматика. Стресс от осознания собственной некомпетентности может свести с ума, знаешь ли.
Класс затих. Двадцать пар глаз уставились на меня, ожидая крови или слез. Я почувствовала, как внутри всё переворачивается: не от обиды, а от ярости, которая жгла стенки желудка кислотой. Если я сейчас заплачу или выбегу, она получит свою победу. Она хочет увидеть трещину в моей броне, хочет, чтобы я подтвердила её правоту своей слабостью.
Я медленно подняла голову. Мышцы лица были каменными, я научилась этому за последние недели жизни в тени Марка Кима.
— Мой стилус просто соскользнул, Ларина, — произнесла я ровным, сухим тоном, игнорируя её вопрос о здоровье. — В отличие от твоего кода для прошлого семестра, он работает стабильно. Можешь проверить логи доступа, если хочешь убедиться, что я не «плагиаторша», а просто человек, которому мешают работать во время подготовки к экзамену.
Тишина стала другой. Тяжелой, смущенной. Вика прищурилась, её улыбка дрогнула, превратившись в тонкую линию презрения. Она сделала шаг назад, но не отступила полностью. Это был тест. И я его прошла, хотя каждая клетка тела кричала от истощения.
Но главным врагом была не Вика.
Я почувствовала этот взгляд затылком раньше, чем повернула голову. Марк Ким сидел в третьем ряду, вполоборота ко мне, но его внимание было физически ощутимым, как холодное дуло пистолета. Он не слушал лекцию. Он ждал. Ему нужно было, чтобы я сорвалась здесь, публично, чтобы доказать декану, что его «инструмент» непригоден для работы. Он хотел капитуляции, а не провала. Провал означал бы потерю моего таланта, а капитуляция — мою душу.
Я посмотрела поверх экрана ноутбука. Его глаза, обычно равнодушные и циничные, сейчас блестели опасным азартом. Выдержи, приказывала я себе. Не дай ему удовлетворения.
Голос профессора объявил начало. Таймер на проекторе начал обратный отсчет. Задание было простым на первый взгляд: написать скрипт для расшифровки учебного RSA-сообщения со слабым ключом за двадцать минут. Для здорового человека — ерунда. Для меня, спавшей два часа подряд и питавшейся только кофеином и страхом, это была стена.
Алгоритм крутился в голове, четкий и изящный, как балетное движение. Но пальцы отказывались слушаться. Тремор перешел из легкого дрожания в неконтролируемое биение. Клавиатура стала врагом. Каждая буква выходила с опозданием, синтаксические ошибки множились, как бактерии. Я видела, как краснеют строки кода, и чувствовала, как падает уверенность.
Ты одна против всех, шептал внутренний голос, эхо слов Марка. Никто не поможет. Никто не верит.
И тут рядом с моим локтем появилась рука. Тонкая, с коротко остриженными ногтями. Денис Соколов. Сосед по общежитию, тихий парень, который никогда не повышал голос и всегда делился последним куском хлеба.
Он ничего не сказал. Просто незаметно, под прикрытием своих конспектов, пододвинул ко мне маленькую жестяную банку энергетика без этикетки и желтый стикер. На стикере короткая записка, написанная аккуратным почерком: «Дыши. Код в памяти».
Это не было помощью списать. Это был спасательный круг.
Сердце пропустило удар. Принять помощь означало нарушить негласное правило изоляции, которое установил Марк. Любое взаимодействие вне его контроля воспринималось им как предательство или слабость. Я посмотрела на банку, потом на Дениса. Он уже отвернулся, делая вид, что сосредоточен на своем экране, но его плечи чуть напряжены. Он ждал моего решения.
Марк в третьем ряду резко выпрямился. Он заметил обмен предметами. Я видела, как сузились его глаза. Сейчас начнется давление. Сейчас он захочет увидеть, как я трусливо хватаю эту поддержку, признавая себя жертвой обстоятельств.
Я схватила стикер. Развернула его. Прочитала еще раз. Дыши.
Я закрыла глаза на секунду. Один вдох. Второй. Представила структуру алгоритма, которую мы с Денисом обсуждали ночью, когда он случайно услышал, как я бормочу функции сквозь сон на общей кухне. Он не спрашивал разрешения, он просто давал инструменты.
Я открыла глаза, подцепила кольцо банки и сделала глоток. Горький, приторный вкус заставил поморщиться. Я поставила банку, упёрла запястья в стол и вернулась к строке, которую уже трижды набирала с ошибкой. Боль в глазах отступила на второй план.
Печатала, проверяя каждый блок перед запуском и игнорируя предупреждающий, почти злой взгляд Марка, который буравил мою спину. Пальцы летали по клавиатуре, создавая чистый, элегантный код. С каждой проверкой красных строк оставалось меньше. Наконец я могла смотреть на код, а не на часы.
Когда таймер дошел до нуля, я поставила точку. Экран залился зеленым светом успешной компиляции.
Профессор ходил между рядами, проверяя работы вслух. Остановившись у моего стола, он наклонился, изучая строки.
— Грациозно, — пробормотал он, больше для себя, чем для класса. — Очень экономное решение. Никакой лишней памяти. Волкова, ты сегодня в ударе.
Вика, сидящая через ряд, фыркнула, но звук вышел сдавленным. Она понимала, что мой успех ставит под сомнение её нарратив о «слабой мошеннице».
Я выдохнула, чувствуя, как тело начинает ныть от резкого спада напряжения. Нужно было уйти, пока ноги не отказались держать меня. Я схватила рюкзак и направилась к двери, стараясь идти ровно.
В коридоре факультета безопасности было пусто и холодно. Только гул вентиляции и запах хлорки. Я потянулась за ручкой двери, но голос за спиной остановил меня. Тихий, бархатный, опасный.
— Волкова.
Я обернулась. Марк Ким стоял в двух шагах от меня. Злости в нём не было — только разочарование собственным контролем. Его лицо было непроницаемой маской, но глаза выдавали бурю.
— Ты использовала чужую поддержку, — сказал он, подходя ближе. Он пах дорогим одеколоном и сигаретами. — Это нарушение условий сделки. Мы договаривались: ты работаешь молча, автономно, без лишних связей.
Конец ознакомительного фрагмента.
Текст предоставлен ООО «Литрес».
Прочитайте эту книгу целиком, купив полную легальную версию на Литрес.
Безопасно оплатить книгу можно банковской картой Visa, MasterCard, Maestro, со счета мобильного телефона, с платежного терминала, в салоне МТС или Связной, через PayPal, WebMoney, Яндекс.Деньги, QIWI Кошелек, бонусными картами или другим удобным Вам способом.
Вы ознакомились с фрагментом книги.
Для бесплатного чтения открыта только часть текста.
Приобретайте полный текст книги у нашего партнера:
Полная версия книги
Всего 10 форматов

