Категория > Новости > HTB Catch. Анализируем и перекомпилируем приложение для Android - «Новости»
HTB Catch. Анализируем и перекомпилируем приложение для Android - «Новости»29-07-2022, 00:02. Автор: Рената |
Hack The Box.warningПодключаться к машинам с HTB рекомендуется только через VPN. Не делай этого с компьютеров, где есть важные для тебя данные, так как ты окажешься в общей сети с другими участниками. РазведкаСканирование портовНачинаем, как водится, со сканирования портов исследуемой машины. Ее IP сразу добавляем в
10.10.11.150 catch.htb
И запускаем сканирование портов. Справка: сканирование портовСканирование портов — стандартный первый шаг при любой атаке. Он позволяет атакующему узнать, какие службы на хосте принимают соединение. На основе этой информации выбирается следующий шаг к получению точки входа. Наиболее известный инструмент для сканирования — это Nmap. Улучшить результаты его работы ты можешь при помощи следующего скрипта. ports=$(nmap -p- --min-rate=500 $1 | grep^[0-9] | cut -d '/' -f 1 | tr 'n' ',' | sed s/,$//)nmap -p$ports -A $1 Он действует в два этапа. На первом производится обычное быстрое сканирование, на втором — более тщательное сканирование, с использованием имеющихся скриптов (опция Результат работы скрипта Мы нашли несколько открытых портов:
Проходим к сайту на порте 80. Главная страница сайта catch.htb На сайте ничего необычного, скрытого или полезного не находим, кроме того, что предлагается загрузить какое‑то приложение. Окно загрузки приложения После загрузки видим, что это программа для Android. На других портах работают Git (3000), чат Let’s Chat и платформа Cachet. Точка входаКак создать и развернуть виртуальную машину Android, а затем включить отладку, я уже писал в недавнем прохождении машины Routerspace, поэтому сразу перейдем к установке приложения.
adb install catchv1.0.apk
![]() При запуске приложения получаем ошибку соединения, а также раскрываем новый поддомен, который сразу добавляем в Ошибка соединения
10.10.11.150 catch.htb status.catch.htb
Указанный адрес ведет на порт 443, который на сервере закрыт, поэтому попробуем вытянуть из приложения еще какие‑нибудь данные. Для этого я буду использовать мини‑песочницу для Android-приложений MobSF. В ней есть возможность статического и динамического анализа. Если тебе неохота устанавливать макет на свой хост, то можно пользоваться уже развернутой онлайновой версией. Главная панель MobSF Загружаем приложение и получаем отчет по статическому анализу. Информация о загруженном файле Из важного сразу отмечаем забитые в приложение токены. Найденные в приложении токены доступа По второму токену определяем, что наша следующая цель — Let’s Chat. Вставляем его как токен доступа в заголовок Измененный запрос на сервер Точка опорыЧтобы этот токен автоматически вставлялся в каждый запрос, отправленный через браузер, воспользуемся функцией match/replace в опциях Burp Proxy. Там выбираем заголовок запроса в качестве типа и указываем замену пустого поля нашим заголовком. Опции Burp Proxy Обновляем страницу чата в браузере, в результате чего получаем редирект на страницу Список групп пользователя Можем получить сообщения из группы, выполнив запрос на адрес Сообщения из группы В группе Сообщение с учетными данными Пробуем ввести эту учетку на всех веб‑сервисах и получаем доступ к платформе Cachet. Форма авторизации CachetГлавная страница Cachet ПродвижениеВ настройках платформы узнаем ее версию — Параметры платформы Cachet Первым делом стоит проверить, есть ли для этой версии готовые эксплоиты. Самый надежный способ сделать это — поискать в интернете на сайтах вроде HackerOne, exploit-db и, конечно, GitHub. Поиск эксплоитов в Google В блоге Sonar описано несколько CVE. Нам интересна CVE-2021-39174, которая позволит прочитать переменные среды. Перейти обратно к новости |