Я мчу над замерзлою тундрою. Мотори виють, наче розлючені оси, батарея тане на очах: 82%... 81%... Але гальмувати не можна. Вороги летять за мною, вони летять-летять-летять!
Моя камера з зумом х30 ловить гелікоптер — Bell 437, чорний, наче акула. Ховатися немає сенсу — у них радари потужніші, вони мене бачать. І наздоганяють.
Думай, думай, Відлуння! Ти ж не просто літаюча залізяка — ти крутий хакер! У тебе є дві сітки для ловлі поганців, чотири шиповані стрічки. А ще в тебе є суперські хакерські мізки. Ну, типу того. Цифрові мізки з СДУГ, це ж сила!
До речі, а чому Кактус мовчить? Востаннє він виходив на зв’язок... ого, більше 30 хвилин тому! Він пропустив сеанс зв’язку, а раніше завжди надсилав мені звісточку! Боже мій, невже він загинув?
Знову?!
Від цього я відчуваю таке напруження, що все пливе, крутиться, і я бачу шкільний комп’ютерний клас, де вчився Едді. Старий сервер стояв у кутку, весь у наклейках із черепами та блискавками. Вчитель повторював: "Не зламаєш за тиждень, яким би розумним хакером ти себе не вважав, Едді". У той момент дракон у моїй голові раптом затих і перестав боляче палити вогнем — вперше за довгий час. Наче комп’ютерний код був єдиною мовою, яку він розумів.
Потім мої пальці літали по клавіатурі, а дракон мовчки спостерігав. І якийсь час не смажив мене своїм злим полум’ям. Тож я проліз усередину сервера за дві хвилини. Ну, може, за три. Побачив усе: щоденники, характеристики, навіть особисті фото директора з його товстим котом. Дурні! Пізніше показав татові. Він подивився втомлено: "Це незаконно, Еде. Небезпечно. Досить бавитися". Бавитися? Я сервер ЗЛАМАВ! Це ж круто! Але в його очах не гордість, а докір і трохи сорому. І дракон у моїй голові знову прокинувся.
Я виринаю з непрошеного спогаду, все ще в тузі від загибелі Кактуса. Хочеться струснутися, ляснути себе долонею по лобі. Ти ж у небезпеці, Відлуння! Треба щось робити! Перше — просканувати радіоефір. Дрони Skyhunter мають якось спілкуватися з гелікоптером? Звісно, не можуть же вони мовчки літати. Ось — 2.437 ГГц — якась передача йде. Пакети інформації гасають туди-сюди між дронами та гелікоптером, наче кульки для пінг-понгу. Протокол якийсь... дай-но гляну... MAVLink⁷. Це стандарт для керування дронами. Тільки з якоюсь надбудовою зверху. На пакетах позначка "WOLVERINE_SECURE_v3.7".
Гаразд, це їхній захищений канал. Шифрування AES-256, ротація ключів кожні 30 секунд. Потужний захист, але для мене немає перешкод. Мені треба вбудуватися між ними — атака "людина посередині"⁸, так це називається. Тільки я не людина, ха!
Відстань між нами близько 6 миль. І вона скорочується. І затока Гудзон усе ближче. Я запускаю першу атаку: перебір за словником на їхній handshake-протокол. Паралельно аналізую тимчасові мітки. Є закономірність! Усі дрони надсилають телеметрію кожні 100 мілісекунд. Можна передбачити, коли буде наступний пакет.
А внизу вже затока. Світанок, лід виблискує на сонці, наче бите скло, подекуди проглядає темна вода — чорні діри між білими уламками. Вітер виє. Красиво і чомусь моторошно водночас... Не відволікатися!
5 миль між мною і переслідувачами. Я бачу їх у оптичний зум — три чорні точки і гелікоптер. Перший рівень шифрування піддається, я фіксую заголовки пакетів. Не вміст, але хоча б структуру. Позивні дронів: WOLF-SK1, WOLF-SK2, WOLF-SK3.
4.3 милі. Пора готуватися до бою. Я знижуюся до 150 футів. Повітря стає густішим, дрон Відлуння трясе в турбулентності. Внизу — кам’янистий берег, скелі стирчать, наче сірі ікла. Чую через мікрофони, як хвилі б’ються об каміння — БУХ! БУХ! — навіть крізь шум моїх моторів. Якщо мене притиснуть — ховатимуся між скелями.
При цьому я продовжую злам ворожого каналу і нарешті знаходжу вразливість. Вони використовують timestamp для генерації частини ключа. А час я можу підробити — надішлю їм пакет із неправильним часом, і вони пересинхронізуються. Тоді я зможу передбачити наступний ключ.
3.7 милі. WOLF-SK1 прискорюється, вириваючись уперед. Це розвідник. Надсилаю підроблений NTP-пакет на їхній частоті. Вдаю, що це їхня власна передача. Зсуваю час на 1.3 секунди вперед.
Ну ж бо…
Ну давай же…
Є!
WOLF-SK1 пересинхронізувався! Тепер у мене є вікно в 1.3 секунди, щоб передбачити його ключі!
3 милі між нами. Я вже бачу деталі — у дронів знизу щось висить. Сітки для ловлі, прямо як мої!
Мій дрон Відлуння різко пірнає між скелями. Гранітна поверхня проноситься за три фути від корпусу. Камені миготять так швидко, що зливаються в сіру стіну. Датчики висоти пищать, наче божевільні. Вороги летять за мною. А я продовжую злам — уже бачу частину телеметрії WOLF-SK1. Швидкість, висота, рівень заряду...
БАХ!
Повітря наче розривається зовсім поруч зі мною — перша сітка прилетіла! Я чую свист розсіченого повітря, потім ШЛЬОП! — сітка вдаряється об скелю позаду. Промазали! Але вони добре бачать, як я маневрую.
WOLF-SK1 заходить справа, сонце виблискує на його корпусі. WOLF-SK2 зліва, його тінь миготить по льоду піді мною. Гелікоптер летить далі й вище, між скелями він не ризикує петляти. А дрони беруть мене в лещата, я чую виття їхніх моторів — вище і зліше за моє. Але й у мене є досягнення — я отримав доступ до GPS-модуля WOLF-SK3. Це далеко не повний контроль, але я тепер можу спробувати надіслати йому хибні координати.
Я різко набираю висоту — 300, 500, 700 футів! Перевантаження тисне на корпус, чую, як скриплять мої з’єднання. Дрони злітають за мною, їхні мотори верещать від напруги. У цей момент я надсилаю WOLF-SK3 підроблені GPS-дані — зсуваю його положення на 60 футів праворуч. Тепер у його системі все виглядає нормально, але він летить не туди. Дивлюся назад — WOLF-SK3 відхиляється вбік! Здається, через камеру навіть бачу пілота в гелікоптері, він щось кричить у рацію, махає руками. А дрон упевнений, що летить правильно!
І тут прилітають ще дві сітки — від WOLF-SK1 і WOLF-SK2! Свист, шелест зовсім поруч… Я кидаю дрон Відлуння в піке. Падаю, наче камінь: 600… 400… 200… 50 футів... Перевантаження видавлює з процесора помилки, усі системи кричать. Бризки від хвиль б’ють у камеру, сіль заляпує об’єктив. З трудом я вирівнююся лише за 6 футів від води.