Я прошу простить моих подписчиков за ожидание. Сейчас работаю в Астане, живу в хостеле. Времени не хватает родным написать/позвонить, не говоря уже о написании книги. Но вот она долгожданная, надеюсь, вторая глава. Приятного чтения.
***
На часах 7:32, опаздываю. Быстро умылся, одел свои любимые джинсы, рубашку и отцовский “админский” свитер. Всю дорогу до метро я пытался размышлять о тестовом задании, но в голове была мешанина. Шел на автомате, не замечая ничего во круг. По Улице Писарева, мимо областного суда, до Красного проспекта, а там до станции “Гагаринская”.
Ночью приходили некоторые идеи по взлому, я вскакивал и проверял. Но все безуспешно. Возможно стоило попробовать региональные сервера Корпорации, но там найти полезную информацию маловероятно. А переписка регионального начальника службы безопасности с его секретаршей не заинтересует хакеров “Свободы”.
Внешний вид станции “Гагаринская” соответствует названию. Стены облицованы мрамором со вставками хромированной стали. Потолок над платформой окрашен в темно-синий цвет, к нему подвешены точечные светильники, которые медленно движутся по своей орбите, создавая “иллюзию космического пространства”.
Я вошел в вагон подошедшего состава и сел на свободное место. Современные поезда метро мало чем отличаются от тех, что были в начале 2000-х. Изменился лишь внешний вид.
На правой линзе бадди-компьютера появилось сообщение: “С вашего личного счета выполнен перевод на сумму 15 рублей.”
В 2016 году бумажные деньги начали выходить из обращения. Мир стал постепенно переходить на электронную валюту. В 2025 переход закончился. Оплата всех услуг производится через личный бадди-компьютер, тем самым люди вынуждены покупать его, даже если он им не нужен. Есть мнение, что через 5 лет бадди-компьютеры второго и третьего поколения перестанут поддерживаться, а значит всем, кто хочет жить в обществе придется вставлять в голову чип.
Напротив меня сидели два парня. Первый - блондин лет двадцати пяти. Второй парень помладше, с фиолетовым ирокезом.
- Слышал? Вчера веб-сервер администрации России взломали, - сказал блондин своему соседу.
- “Свобода”? - ответил его сосед.
- Ну, а кто же еще? Представляешь, целый час на главной странице висел призыв к началу революции.
- И как, начали?
- Нет конечно, все боятся. У меня знакомый хакер был, так он параноик страшный, - усмехнулся блондин. - Каждого шороха боится. А ты говоришь революция.
Я задумался. А ведь правда, что мы можем против Корпорации и спецслужб правительств? Для них все эти взломы как комариный укус.
Я стал рассматривать парней. У обоих бадди-компьютеры третьего поколения. В глазах постоянно меняющаяся картинка и блеск линз. На предплечье блондина закреплен управляющий модуль. У парня с ирокезом на шее ошейник с шипами. Если присмотреться можно увидеть и сам бадди-комп закрепленный на ошейнике. Символично...
*****
НГТУ, Деканат факультета Прикладной Математики и Информатики.
Виктор Павлович сидел за своим столом и читал свежие новости на своем бадди-компьютере. В дверь постучали.
- Войдите, - не отрываясь от чтения сказал декан.
Дверь открылась. В кабинет зашел высокий парень, с длинными волосами и недельной щетиной. На глазах очки, бадди-компьютер второго поколения. Старые, протертые джинсы и свитер.
Увидев свитер Виктор Павлович погрузился в воспоминания. На щеке скользнула скупая слеза, которую он незаметно смахнул.
- Садись, Василий, - начал декан, - надеюсь оправдательный документ имеется?
- Конечно, уже отправил вам, - сказал Вася.
На правой линзе декана появилось сообщение: “Принят документ от пользователя Василий Путник.” Декан некоторое время проверял справку, после чего отправил её на главный сервер университета.
- Где это ты подхватил свиной грипп? - начал Виктор Павлович. - И где ты взял лекарство, которое за неделю тебя на ноги поставило?
Глаза Василия расширились до такой степени, что казалось вот-вот вылезут наружу и взорвутся. Он некоторое время что-то обдумывал, при этом то краснея, то зеленея.
- Виктор Павлович, а я с тетей...
- Да шучу я, Вася, ну что ты как маленький? - перебил декан. - Оправдываться начинаешь или у тебя справка поддельная, что так занервничал?
- Что вы! Если хотите можете позвонить лечащему врачу, - запротестовал Вася.
- Верю я, - спокойным голосом сказал Виктор Павлович. - Ладно, беги на занятия. Надеюсь не забыл, где ваша аудитория?
- Не забыл, - улыбнулся Вася, - до свидания!
Василий рванул к двери, а через секунду хлопнув дверью убежал на пару. Виктор Павлович хмыкнул и углубился в чтение новостей.
*****
Вася.
- Ну, что две пары отсидели, теперь можно и в курилку, - сказал Сергей.
- Ага, пошли, - сказал я.
Сергей - мой однокурсник, по совместительству хороший друг. Талантливый программист и не менее талантливый хакер. Член российской хакерской группы “RuSec”.
Мы вышли из первого учебного корпуса и направились в курилку. Перед учебными корпусами раскинули свои ветви ели, дубы, есть даже пару березок. Между деревьями тропинки, вдоль них скамейки. Место отдыха студентов и курилка.
После второй пары тридцатиминутный перерыв. Студенческий парк был забит. Мы с Сергеем нашли пустое место, выключили бадди-компьютеры и сели на скамейку.
- Угощайся, - я протянул другу пачку сигарет.
- Спасибо.
Мы вдохнули свежий воздух, который впрочем уже был насыщен запахами от электронных сигарет. Целый букет ароматов: клубника, яблоко, терпкий запах табака...
- Ты куда пропал? - спросил Сергей.
- Приболел.
- Ну-ну, знаю я, как ты болеешь. Какой сервер на этот раз стал твоей жертвой?
- Пока никакой, - я тяжело вздохнул, затянулся дымом, - пытаюсь сервера корпорации пробить.
- В “Свободу” решил попасть? - Сергей усмехнулся.
- С чего ты взял?
- Ну так, ты никогда не лез к Корпорации. А экзамен в “Свободу” все знают какой.
- Как вы это делаете, Шерлок Холмс?
Сергей рассмеялся в голос. Высокий парень, с аккуратной стрижкой. Крепкое телосложение. Такие обычно вышибалами в клубах работают, а он айтишник и далеко не глупый.
- Есть тут один сервер. - Сергей глубоко затянулся, - он новый, неделю назад в сети появился. Принадлежит Сибирскому отделению службы безопасности Корпорации. Там их почтовый сервер находится и веб-сервер для доступа к почте.
- Нашли дыры?
- Я бы тебе о нем не говорил, если бы не нашли, - Сергей хитро посмотрел на меня, а потом продолжил. - Там скрипт веб-почты дырявый, скуля. Но мы раскрутить не можем. Уязвимое значение передается в несколько запросов. В общем в одном случае запрос срабатывает, но следующий приводит к ошибке.
- Сколько хочешь за информацию?
- Вася, друг мой, что ты такое говоришь? - Сергей скривился. - Ты меня обижаешь! Мы ведь общее дело делаем.
Сергей достал из кармана блокнот и записал адрес сервера: “2001:470:1:18::114”.
- Спасибо, слушай, можешь на оставшихся парах меня прикрыть?
- Не терпится? - Сергей рассмеялся, - беги давай!
- Еще раз спасибо, - я взял листок с адресом и побежал к метро.
*****
Дома я был минут через тридцать. По дороге забежал в магазин, купил пару бутылок пива и сушеной рыбы. Достал свой бадди-комп из “Планеты обезьян” и взялся за взлом сервера.
Веб-интерфейс написан на старом скриптовом языке php, такое сейчас редко встретишь.
Упомянутую Сергеем дыру я нашел минут за десять. Но вот дальше продвинуться не получалось. SQL-injection - это уязвимость, при которой можно в код запроса к базе данных добавить свой код.
Представьте магазин. Вместо продавца стоит глупенькая девочка, которая понимает лишь определенный язык запросов. В обычной ситуации покупатель подходит и говорит: “Дайте две булки хлеба и килограмм сахара.” Хакер же может поправить запрос и сказать: “Дайте две булки хлеба и килограмм сахара. А еще мне нужны ключи от вашего склада.” Если бы у девочки-продавца были мозги, то она послала хакера куда подальше. А в нашем случае девочка дает нам ключи.
На сервере службы безопасности “сидит подобная девочка”, только не одна, их несколько. И наш запрос идет сразу к нескольким “девочкам”. Одна воспринимает наш запрос правильно и должна отдавать нам ключи, но вот другие две начинают кричать, что мы сделали заказ не правильно.
Очередная попытка. Меняем запрос, подставляем скобку. На экране появляется куча ошибок. Еще одна попытка. Результат тот же.
*****
Прошло два часа, выпито четыре бутылки пива и выкурена почти пачка сигарет. Я испробовал уже сотни вариаций запроса, все без толку. Последние полчаса просматривал подпольные форумы, но и они не помогают.
Вот сижу я посреди комнаты, на голове бадди-компьютер, лицо напряжено. Вокруг серебристо-белые стены, у стены одинокая кровать. В моей комнате кроме кровати и встроенного в стену шкафа, больше ничего нет. Люблю я пустые, но практичные помещения.
Я решил попробовать еще один вариант. Секунда, которая потребовалась для загрузки страницы показалась вечностью. Перед глазами все та же ошибка. Куча технической информации. Кто запускает, откуда, какие модули привели к ошибке. Ничего полезного, просто администратор забыл выключить дебаг-режим.
- Как я мог этого не заметить?! - закричал я, а после все так же громко выругался на “чистом русском”.
Правой рукой я “схватил воздух” и потянул его влево. Страница на экране послушно передвинулась. По своей невнимательности я не увидел, что текст не переносится и часть информации не видна на экране бадди компьютера.
Я быстро пробежал глазами по тексту и обнаружил очень интересные данные:
“gdsql_login = ‘sbadmin’; gbsql_password = ‘g3Csa7Cjg9’”.
Следующую минуту по дому были слышны крики радости, смех. Я танцевал от счастья. Если вы никогда не занимались взломом, вам не понять ту радость, что испытал я. Помимо радости было еще и чувство стыда, за свою невнимательность, но слишком малое, чтобы обращать на него внимание.
Я открыл программу для администрирования базы данных GbSQL, назвал полученный логин и пароль.
- Не удалось получить доступ. Сервер отказал в подключении, - послышалось в наушнике.
Ясно, доступ к базе можно получить только изнутри. Можно конечно посмотреть, нет ли скриптов для администрирования на сервере, но это маловероятно.
Следующие десять минут я перебирал различные варианты названия папки, где могла находиться админка базы: phpGbSql, gbsqladmin, gbsqlbuddy.
Я даже скачал себе архивы с этими программами, только не понятно зачем, распаковал их.
В такие моменты обычно кричат “Эврика!”. Папка gbsqlbuddy после распаковки называется “calvinjoy-gbsqlbuddy-204h2gc”. Такая же папка была и на сервере службы безопасности.
Вот таблица с пользователями. Для аутентификации используются отпечатки пальцев. Копируем из базы первые попавшиеся отпечатки.
- Открыть “Эмулятор пальцев”.
На левой линзе появилось окно программы. Движением руки перетаскиваем отпечатки из базы в “Эмулятор пальцев”.
Полезная программа, написали её российские хакеры еще в 2016 году, но до сих пор работает и помогает при взломе. Достаточно получить отпечатки “жертвы” и внести в базу программы. А она подставит их в программу требующую аутентификацию по отпечаткам, при этом атакуемая программа будет думать, что реальный человек провел пальцем по считывателю.
- Пользователь успешно прошел аутентификацию.
Я не поверил глазам, хозяин отпечатков был в сети и более того передавал кому-то сообщение.
- Нужно срочно сообщить куратору, - сказал я вслух. Поставил копироваться почту и открыл чат с куратором Новосибирской “Свободы”.
*****
Закрытый чат. Канал “Свобода. Новосибирск.”
X1337: Я получил доступ к серверу службы безопасности Корпорации.
A5G32: Я тебя поздравляю.
X1337: Высылаю архив с почтой одного из сотрудников, судя по всему Начальник СБ Новосибирска. Последние два письма очень важные.
A5G32: подожди минутку.
*Прошло 5 минут.
A5G32: Я тебе напишу позже.
A5G32: Спасибо за информацию.