1. Статьи
Заметки пользователей
06.10.2022 11:44
PDF
970
38

Хроники выживания нанооператора: взлом взломанного МикроТика

История

Моя история начинается, как и все подобные. Ночной звонок от коллег, прерванный сон, сообщение: "нас взломали". Это был MikroTik CCR1036, на то время топовая железка, державшая на себе целый район. История была бы не такой интересной, если бы злоумышленники не смогли превратить его в «тыкву». Абсолютно нерабочую железку, кусок металла и текстолита. Нанеся нам колоссальный, по нашим меркам ущерб.

Хроники выживания нанооператора: взлом взломанного МикроТика

Mikrotik CCR1036

Первые действия

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

Попытки сброса

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

Виной всему, как оказалось, новая защита конфиденциальных данных от производителя. Теперь в любой момент, имея доступ к маршрутизатору, можно было включить режим Protected RouterBOOT. Это режим защиты, в котором блокируется загрузчик, блокируется стандартное поведение кнопки Reset, нельзя сбросить устройство через Netinstall, не работает консоль. Войти в роутер можно только зная логин/пароль админа. Единственный путь для сброса роутера будет переформатирование NAND и RAM, но для этого надо знать, сколько секунд удерживать кнопку Reset. Причем, количество секунд зажатия можно задать любое, например, больше 230, но меньше 231. На практике это приведет к невозможности сброса.

На четвертый день. В пятницу

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

В конце концов купили новый микротик, а этот отправили представителю производителя. Представитель ответил, что ремонт невозможен. Официальное письмо на английском в Латвию (столица Микротиков) о помощи, также не помогло.

Хроники выживания нанооператора: взлом взломанного МикроТика

Ответ официального представителя MikroTik в России

Спустя примерно два года

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

Стал я обращаться к Сереге с ремонтом сетевого. И как-то рассказал про печальный опыт с микротиком. Появились мысли у нас обоих, что стоит попробовать отнести пациента к нему, может за что-то и получится зацепиться.

Взламываем

Диагностика Сергея выявила, что на плате маршрутизатора установлены две микросхемы памяти ПЗУ BIOS и NAND. С обоих чипов он сможет считать дамп. Но предупредил, что данные будут сырые и разбираться придется мне.

Закралась у меня надежда, что этот самый тег Protected RouterBOOT и количество секунд хранятся именно в BIOS. Эту версию надо было проверить. Нашел дешевый роутер MikroTik hAP, отдал Сереге, попросил слить дамп до и после установки protected.

Повезло! При сравнении дампов, были отличия. Данные писались в BIOS. Серега только и успевал впаивать, выпаивать чип, сливать и заливать данные с моими экспериментами.

Первая неудача

При первом невнимательном изучении я поспешил с выводами и потерял время. Открыв дамп в HEX редакторе, я заметил, что файл содержит в себе загрузчик и две версии BIOS. В загрузчике, который начинается с 0, так и не смог разобраться, какие значения отвечают за выбор BIOS. Первая версия BIOS начинается с адреса 1 000, вторая резервная с 4 000. Недолго думая, я поменял местами между собой BIOS’ы. Довольный своей работой, отправил «золотой» файл Сереги. В ответ звонок, у нас кирпич.

Хроники выживания нанооператора: взлом взломанного МикроТика

Адресация и разделение памяти

Истина где-то рядом

Пока мы занимались изучением «низкоуровневого взлома», параллельно отправил наработки на завод Микротик в Латвию. Как и обещали, ответ пришел в течении семи «бизнес-дней»: ничем помочь не можем.

Энтузиазм не утихал, у нас еще были козыри в рукаве в виде разных дампов с домашнего роутера MikroTik hAP, которые были почему-то отвергнуты сразу. На первый взгляд, BIOS’ы этих двух роутеров не имеют ничего общего. Хотя, если приглядеться, они как два брата, вот только в hAP в отличии от CCR, данные пишутся задом наперед.

В этот раз я был более внимательным. Не торопясь, я сравнивал BIOSCCR и зеркальный hAP. Пытался понять набор байт, накопить какую-то информацию для построения картины. И вот заметил очевидное:  помимо загрузчика и двух вариантов BIOS, есть еще область под названием «Soft», начинающаяся с адреса 71 000, хранящая в себе значения ключей Routerboard, заданных в интерфейсе.

Хроники выживания нанооператора: взлом взломанного МикроТика

Старая памятка тех лет в оригинальном виде, которой мы обменивались

Визуально я смог примерно увидеть эти байты, отвечающие за количество секунд для сброса маршрутизатора. Но никак не смог перевести их в человеческую систему счисления. Поэтому самым «умным» решением на тот момент было обнулить все байты. Справедливости ради, хочу отметить, что возможно это просто какой-то другой флаг, отвечающий за protected boot. В конце области Soft увидел нечто похожее на hash-сумму, немного огорчился, но трогать ее не стал.

Простой рецепт

Звонит Серега и говорит: «Залил твоего Франкенштейна, маршрутизатор начал вести себя очень странно, выдал ошибку прошивки и запустил netinstall. Прошил его новой прошивкой, теперь он как новый!»

Мы уже догадались оба, что достаточно было нарушить целостность области Soft (не сходится hash) в BIOS, и MikroTik даст возможность восстановить себя. В железной части я не участвовал, но сделать все это можно простым программатором CH341A с прищепкой.

Размышления

Следов злоумышленников я не смог найти, в процессе восстановления все данные были утеряны. Прошивка была свежая для того года. Предположительно, взлом был произведен через web-интерфейс MikroTik под названием webfig. Возможно, с внутренней сети. Возможно - конкурентами. Рассказать к сожалению нечего.

Несмотря на то, что в коллективе это была моя зона ответственности, меня никто даже косвенно не винил. Убытки были огромные. Но, спустя, казалось бы, столько времени, я смог свести их к 0. Сегодня этот МикроТик работает и обслуживает уже другой район.

Вроде как оказалось все просто и очевидно, лекарство от проблемы банальное, но в интернете информации нет. Поэтому хочу поделиться с вами этим полезным материалом - как можно восстановить такую «тыкву».

Какие выводы сделал я?

Нужно всегда обновляться и следить за безопасностью =). 
Но если ты нанооператор, с временем и деньгами бывают проблемы, возможно, стоит в будущем присмотреться к другим вендорам. Держать у себя на запас резервное оборудование.

Предыдущая история из жизни нанооператора - здесь.

38 комментариев
Robot_NagNews
Robot_NagNews
Материал: Моя история начинается, как и все подобные. Ночной звонок от коллег, прерванный сон, сообщение "нас взломали". Полный текст
Гость
Гость
Сами фашисты-латвийцы и сломали...
ayf
ayf
В 06.10.2022 в 12:19, Гость сказал:

Сами фашисты-латвийцы и сломали...

Ну после взлома цисок, в которых управление не имело доступа в интернет, я уже ничему не удивляюсь.

st_re
st_re
В 06.10.2022 в 13:52, ayf сказал:

Ну после взлома цисок, в которых управление не имело доступа в интернет, я уже ничему не удивляюсь.

Тоесть вариант, что сначала нашли дыру внутри периметра, а оттуда уже сломали, он совсем не рассматривается ?

sdy_moscow
sdy_moscow

Резюме:

Микротик - редкостное гавно, но лучше за эти деньги ничего и не найти.

 

З.Ы.

Ребят жалко, но нано-операторам под солнцем места не будет скоро, впрочем как и всем остальным, кроме большой четверки.

ixi
ixi

Не в 2018 дело было? тогда вопросов, кроме как к настройкам, и не остаётся.

ayf
ayf
В 06.10.2022 в 14:09, st_re сказал:

Тоесть вариант, что сначала нашли дыру внутри периметра, а оттуда уже сломали, он совсем не рассматривается ?

Да тогда массовый взлом был. Когда вланы стирали и на их место американский флаг вставляли

 

Гость
Гость
Т.е. вас не смутило что в сети какое-то время стояло устройство, которое управлялось кем-то другим? И вы считаете это нормально?

То что управление было доступно всем кроме группы админов, это тоже нормально?

Ivan_83
Ivan_83

Дилетанты.

 

1. Это не БИОС, нету там никакого биоса, не было и быть не может. Прочитайте в википедии что такое БИОС.

На мелкой флешке обычно размещается загрузчик типа u-boot с его настройками, иногда там же линуксовое ядро.

 

2. Настройки этого загрузчика обычно защищаются CRC а не хэшем.

 

3. Юзайте линукс напрямую, нахрена вам этот микротик!?

В железку скорее всего можно влить OpenWRT, чтобы не выбрасывать.

А лучше было сразу поставить тазик х86 и линухом, там ничего подобного и близко бы не случилось при восстановлении.

LostSoul
LostSoul
В 08.10.2022 в 15:30, Ivan_83 сказал:

Дилетанты.

 

1. Это не БИОС, нету там никакого биоса, не было и быть не может. Прочитайте в википедии что такое БИОС.

На мелкой флешке обычно размещается загрузчик типа u-boot с его настройками, иногда там же линуксовое ядро.

 

2. Настройки этого загрузчика обычно защищаются CRC а не хэшем.

 

3. Юзайте линукс напрямую, нахрена вам этот микротик!?

В железку скорее всего можно влить OpenWRT, чтобы не выбрасывать.

А лучше было сразу поставить тазик х86 и линухом, там ничего подобного и близко бы не случилось при восстановлении.

железку в истории выше восстановили.

у меня востановление в такой ситуации заняло минут 40, ну видать кому-то проще купить новую.

 

главным достоинством микротика против "поставьте линукс" является промышленная повторяемость результата.