«Сначала сытый желудок, а уж потом мораль».
— Бертольт Брехт
Боевая БД растаяла в сознании, растворяясь в знакомой, удушающей темноте перед глазами, а затем ослепила меня к чертям вспышками белого света. Я сорвал серебристый обруч вирт-венка с висков. Грудь тяжело вздымалась, пока Нейролинк последовательно отключался от симулированного окружения, возвращая моё сознание в холодный, сырой гараж.
Я сидел на бетонном полу, скрестив ноги, и дрожащей рукой проводил по промокшим от пота волосам. В голове гудело, мозг буквально закипал, перегруженный тысячами страниц схем продвинутой защиты от вторжений, полиморфными вирусами и военными тактиками обхода ЛЬДА.
Корпоративные обучающие БД были настоящей золотой жилой, но теперь я упёрся в новую стену. И это была не стена из кода – чёрт, да я мечтал о том, чтобы это был всего лишь код! Достать то, что мне нужно, было бы в разы проще.
Когда я только начинал покупать БД для обучения навыкам, я отстёгивал примерно по 600 эдди за штуку. Это были модули среднего уровня. Всякая базовая хрень, вроде крав-мага для начинающих, истории архитектуры Сети или начальной маршрутизации. Всё то, что мне требовалось усвоить, если я хотел выжить, как и обещал Майе. Но по мере того как мои навыки развивались, подстёгиваемые врожденным интеллектом, я проглатывал этот любительский контент быстрее, чем торчок уходит в кайф от дозы «Черного кружева».
Мне требовались более серьёзные данные. Сырая, нефильтрованная телеметрия, которую используют для подготовки элитных нетраннеров Арасаки и оперативников Милитеха. А мегакорпорации таким дерьмом дёшево не торгуют. Чёрт, да модули, которые мне действительно требовались, чтобы прокачаться и выжить в Найт-Сити, уже стоили от 2000 до 3000 эдди за штуку.
Я посмотрел на свои руки, сжимая и разжимая огрубевшие пальцы на морозном воздухе. Ручеёк эдди, который приносил мне демон RatATax. Exe, больше не спасал. Срез по 0,5 процента с тридцати восьми торговых автоматов на одной площади помогал нам держаться на плаву и не уйти на дно. Но это была капля в море по сравнению со свитками, необходимыми для масштабирования работы. Мне нужно было начать зарабатывать настоящие деньги.
Но я не был гонком. Я понимал, что насколько бы умным ни был, браться за реальные заказы прямо сейчас – с моим паршивым железом и незрелыми навыками – верный способ спечь мозги от рук какого-нибудь корпоратского сисадмина. Может, всё было бы не так плохо, если бы я не забросил программирование на пару лет, но это уже не имело значения. Сначала нужно развернуть текущую тему, закинуть сеть пошире, и только потом лезть к акулам.
Я схватил свой портативный кибердек, упаковал его в сумку через плечо и накинул плотную темно-серую толстовку. Пришло время претворять планы в жизнь и расширять франшизу.
Первая цель была простой: в одном блоке от моего дома. Огромная, полуразрушенная парковка, предназначавшаяся для двух зданий, одно из которых пустовало. Всё место провоняло застарелой мочой; им пользовались в основном работяги, ехавшие на заводы в Арройо. Я разведал её пару дней назад и насчитал двадцать три SCSM. Правда, из двадцати трёх работали без пожирания эдди и выдачи системной ошибки только шестнадцать.
Опустив голову, я перешёл нашу безымянную улицу, срезал через пару заросших хламом дворов, перемахнул через ржавый забор и пересёк ещё одну улицу без названия, оказавшись прямо у парковки. Прибыв на место, я понял, что мне даже не придётся подключаться через кабель к сервисному порту. Защита была настолько смехотворно устаревшей, что я просто прислонился к одному из SCSM, вытащил кибердек и синхронизировался с местным беспроводным узлом.
Мне потребовалось меньше двух минут, чтобы обойти базовый фаервол и внедрить демона в журнал учёта этих шестнадцати автоматов. Я настроил протоколы маршрутизации, убедился, что крипто-миксеры правильно отмывают средства, и подчистил за собой цифровые следы.
После этого я побрёл домой, подсчитывая цифры в уме. В сумме с тридцатью восемью автоматами на площади и шестнадцатью на парковке на мой чип капало уже с пятидесяти четырёх СКСМ. Учитывая средний пешеходный трафик, я рассчитал, что расширение поднимет мой месячный доход до стабильных 1600 эдди.
Это был неплохой прирост, особенно с учётом того, что для большинства подростков моего возраста в Ранчо-Коронадо 1600 эдди в месяц – немыслимое богатство. Но я знал, что этого всё ещё катастрофически мало. 1600 эдуардо в месяц ничего не решает. Мама гнёт спину по шестнадцать часов в сутки, а БД, необходимые для повышения уровня, стоят вдвое больше.
Мне нужна цель покрупнее. Место с высокой плотностью людей и большим количеством покупок.
Я вызвал на деке голографическую карту Санто-Доминго, пробежался взглядом по светящимся синим линиям муниципальной сети и остановился на Мегабашне 07. Станция метро рядом с Мегабашней была золотой жилой. Пешеходный трафик там астрономический: тысячи корпоратских рабсиян, гангунов и уличной голытьбы ежедневно проходили через турникеты, и все они покупали всякую дрянь в огромных рядах SCSM, подпирающих внешние стены станции.
Но обдумывая план, я наткнулся на подводный камень. Из-за того что 101-я магистраль фактически обрывала Крестмонт, гонки, проектировавшие подсистемы, решили разбить зоны на сегменты. Идея неплохая для удобства управления, но она спутала мне все карты – чтоб их черти драли.
Автоматы на станции метро подключены напрямую к сети муниципального транспортного управления – совершенно отдельной и куда более серьёзной защищённой системе. Если я попытаюсь получить к ней удалённый доступ через подключение к рекламной голо-вышке напротив моего дома, задержка сигнала сразу меня сдаст. ЛЁД транспортников за секунды отследит сигнал прямо до моей улицы, и ищейки Сетевого Дозора выбьют мою дверь раньше, чем я успею выдернуть кабель.
Чтобы провернуть это дело, нужно было сократить физическое расстояние. Потребуется прямое подключение к локальному порту, завязанному напрямую на сеть станции.
Я закрыл глаза, прислонился к стене спальни и начал перебирать архивы памяти. Возвращаясь к временам, когда мы с Лео, Джаксом и Майей носились по этим улицам так, будто владели ими. Мы исследовали каждое заброшенное здание, каждый переулок и каждый забытый уголок нашего района.
Прямо через дорогу от станции метро стоял одноэтажный складской комплекс. Настоящий лабиринт из металлических боксов, где местные хранили свой хлам. Но что куда важнее – там находился муниципальный сервисный порт, подключенный прямо к подземным оптоволоконным линиям, идущим к станции.
Единственной проблемой оставалась охрана. К моему несчастью, когда прежние владельцы обанкротились, склад не забросили – его отжала «Шестая улица». Все знали, что они используют дальние боксы как схрон для контрабандного хрома и нелегальных пушек. Поэтому территорию напичкали камерами и регулярно патрулировали.
Риск был огромным. Я понимал: если меня сцапают возле схрона «Шестой улицы», никаких вопросов задавать не будут – пулю в затылок и труп в ближайший крематорий. Но я вспомнил опухшие, окровавленные руки матери. Вспомнил ту смертельную усталость в её глазах каждый раз, когда она отпирала входную дверь в районе двух тридцати ночи.
Я открыл глаза. Тусклый свет от рекламной вышки за окном отбрасывал длинные тени по комнате. Приняв решение, я кивнул самому себе. Я воплощу план в жизнь завтра ночью, в 02:00.
Когда пришло время действовать, снова пошёл ледяной дождь, превратив улицы Ранчо-Коронадо в скользкое зеркало. Одевшись во всё чёрное, я накинул дек на плечо и вылез через окно спальни, бесшумно спрыгнув в грязь.
Я мог пойти прямым путём и преодолеть пять-шесть кварталов, но не хотел светиться перед городскими камерами. Поэтому держался теней, пробираясь через лабиринт переулков и подворотен, пока над горизонтом не выросла огромная светящаяся туша Мегабашни 07. Рядом с ней, залитая резким люминесцентным светом, гудела станция метро NCART, где копошился ночной сброд.
Держась на расстоянии, я прокрался к складу напротив станции. Вход представлял собой широкий открытый проход между двумя тяжелыми бетонными стенами. Со стороны – обычный переулок, но я знал, что за ним скрывается лабиринт из металлических боксов. Прямо над входом, прикрученная к бетону, висела камера наблюдения, водившая красным лазерным лучом из стороны в сторону и охранявшая проём.
Я медленно перевёл дыхание и прижался спиной к бетонной стене, чуть в стороне от обзора камеры. Мой Нейролинк мгновенно подавил всплеск адреналина, снизив пульс до ровного, ритмичного стука.
Я на долю секунды прикрыл глаза, вызывая мысленную карту, запомненную ещё во времена детских вылазок.
— Проскочить переднюю камеру. Повернуть направо. Пройти центральные боксы. Ещё раз направо, потом налево, и в конце снова направо, — тихо прошептал я себе.
Выглянув из-за угла, я увидел гангуна из «Шестой улицы». Он прислонился к двери бокса в пятидесяти ярдах дальше по коридору, прячась от ледяного дождя под небольшим алюминиевым навесом. На нём был тактический жилет поверх плотной куртки, а к ноге лениво прислонялся дробовик. Тлеющий огонёк синт-сигары освещал его лицо во время затяжки.
В дальнем конце прохода висела вторая камера, угол обзора которой перекрывал зону видимости первой.
Я подождал, пока бандит сделает ещё одну глубокую затяжку, даже не подозревая о моём присутствии. Первая камера ушла вправо, вторая – влево, давая мне трёхсекундное окно, когда центр коридора оказывался полностью в слепой зоне.
Я скользнул вперёд, шагнув прямо в открытый проход между стенами. Держа центр тяжести низко, я плавно перекатывал стопы с пятки на носок, чтобы заглушить шаги по мокрому бетону. Проскочив прямо под конусом обзора первой камеры, пока та отворачивалась, я замер и сократил дистанцию до гангуна.
Он закашлялся и повернул голову, чтобы харкнуть на мостовую. Использовав шум его кашля, я проскользнул через слепую зону второй камеры и резко повернул направо, уходя в узкий, непроглядно тёмный проход между рядами боксов.
Я бесшумно выдохнул, прижавшись спиной к металлической стене. Сердце колотилось в груди, но руки не дрожали.
Двигаясь по тёмному проходу мимо пяти запертых дверей, я снова повернул направо, затаив дыхание и проверяя, нет ли патрулей, а затем быстро свернул налево. Лабиринт выглядел точно так же, как три года назад, когда мы лазили здесь. Воспоминание отозвалось болью в груди, но я запихал его в самый дальний, запертый уголок разума. Скорби нет места во время дела, а отвлекаться сейчас я не мог.
Дойдя до края комплекса, я в последний раз повернул направо и оказался у нужного бокса. Подъёмная металлическая дверь была сильно помята и выбита с направляющих в нижнем углу, образовав рваную дыру высотой фута в три. Она сломалась много лет назад, но бандитам было слишком лень её чинить.
Я опустился на четвереньки и пролез под рваным металлом, оказавшись в непроглядной тьме бокса. Воздух внутри напомнил день, когда мы только въехали в наш нынешний дом – пахло сырым картоном, крысиным помётом и резким металлическим запахом оголённой медной проводки.
Достав из кармана маленький фонарик-ручку, я включил его, прикрывая луч ладонью, чтобы свет не рассеивался. Бокс был забит гниющим муниципальным хламом: разбитые корпуса светофоров, раскуроченные серверные стойки и мотки разрушенного оптоволокна.
Отодвинув стопку размокших картонных коробок, я откопал муниципальный сервисный порт – стальную распределительную коробку, прикрученную прямо к бетонному полу.
Опустившись на колени в грязь, я вытащил из сумки кибердек. Пальцы привычно и быстро размотали кабель личного порта подключения: один конец вошёл в дек, другой – прямо в нейропорт за правым ухом. Затем я взял толстый кабель передачи данных и соединил дек с разъёмом на щитке.
Глубоко вдохнув и собравшись с духом, я запустил погружение.
Я представил себя обезличенным силуэтом из переливающегося фиолетового кода, стоящим на краю сети. Журнал учёта SCSM находился в хорошо защищённом цифровом хранилище ближе к центру сети, окружённом толстыми пульсирующими стенами муниципального Чёрного ЛЬДА.
Как я и предполагал, это вам не дешёвая защита, которую я обошёл на площади. Этот ЛЁД был агрессивным. Если бы я поднял тревогу, система не просто зафиксировала бы мой IP, а запустила бы ответный взлом, чтобы спечь мне синапсы и оставить трупом с мёртвым мозгом прямо на полу этого бокса.
Но я уже не был тем неуклюжим двенадцатилетним пацаном, написавшим первый «Рэт-А-Такс». За последний год я впитал огромный объём знаний по коду. И для самоучки возможность понять, как устроен этот ЛЁД, а главное – как его распутать, была самым настоящим чудом.
Я подошёл к пульсирующему фаерволу, не собираясь ломиться в лоб или подбирать ключ дешифровки методом брутфорса. Проанализировав поток трафика через шлюз, я увидел тысячи мелких пакетов данных, постоянно входивших и выходивших из хранилища. Скорее всего – обновления инвентаря, банковские пинги и сервисные логи.
Подготовившись, я вызвал обновлённую версию своего демона – [RatATax_v2.0].
Учитывая весь прогресс, достигнутый с двенадцати лет, новый демон стал шедевром полиморфного стелса. Я спроектировал его так, чтобы он точно копировал цифровую подпись муниципального сервисного протокола.
Дождавшись, пока к фаерволу подойдёт группа легитимных пакетов с обновлением торговых автоматов, я вклинился в поток данных и на хвосте авторизованных пакетов прошёл прямо сквозь Чёрный ЛЁД.
За защитой ЛЬДА хранилище представляло собой слепящую сферу из бегущих зелёных строк учёта. Действуя быстро, я нашёл ключевые логические циклы, отвечающие за обработку транзакций автоматов на той стороне улицы. Обнаружив их, я ювелирно вскрыл базовый код самой сети и вшил своего демона прямо в фундаментальную архитектуру, изменив параметры так, чтобы система воспринимала мой срез-код как родную подпрограмму. Говоря языком понятным для гонка – сделал так, будто она была там всегда.
Каждый раз, когда один из десятков автоматов на станции проводил транзакцию, демон без труда срезал свои 0,5 процента, кодировал украденное динамическим многослойным шифром, прогонял через двадцать международных прокси-серверов и сбрасывал эдди на чип моей матери.
Знаю, знаю… но даже при всей моей скромности могу сказать: сработано безупречно.
Я стёр малейшие микроскопические следы своего присутствия, удалил логи подключения к сервисному порту и выскользнул из хранилища назад через ЛЁД, не задев ни единого триггера.
Оказавшись в безопасности, я разорвал соединение.
Секунду спустя я распахнул глаза в непроглядной тьме бокса, судорожно ловя воздух. Ледяной воздух ворвался в лёгкие, и я понял, что весь покрылся холодным потом. Сердце колотилось о рёбра, но я не стал терять время. Отключив кабели, я засунул дек в сумку, вылез под сломанной дверью, прошёл прежним путём через территорию «Шестой улицы» мимо камер и дымящего гангуна и вышел через открытый проход.
Я не останавливался, пока не забрался обратно через окно спальни и не рухнул на матрас.
http://erolate.org/book/2535/260963
Готово: