POST/GET запросы Android приложений. Простой способ.

Jack555

Client
Регистрация
30.12.2020
Сообщения
7
Благодарностей
12
Баллы
3
Дисклеймер: статья написана исключительно в ознакомительных, образовательных целях. Автор не несёт ответственности за последствия использования ниже перечисленных инструментов. Вся ответственность за запуск, выполнение и возможные последствия полностью ложится на пользователя.

Данная статья посвящена относительно простому инструменту для обхода механизма SSL pinning в Android приложениях.

Наша главная цель состоит в том, чтобы посредством определенных манипуляций увидеть запросы приложения (POST, GET) и сделать без браузерную автоматизацию.

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

Сам инструмент называется apk-mitm — и это по сути лишь одна команда выполненная в cmd.
Базовые знания использования командной строки обязательный минимум.

Что нам нужно для работы:

1. Node.js и npm
Скачайте и установите Node.js с официального сайта

Node.js – это среда выполнения, которая позволяет запускать JavaScript-код вне браузера

npm (Node Package Manager) – это менеджер пакетов, который устанавливает и управляет библиотеками (пакетами) в ваших проектах Node.js.

npx (Node Package eXecute) — это исполнитель пакетов, который позволяет выполнять пакеты без их глобальной или локальной установки, загружая их временно и удаляя после использования.

Установили. Проверяем, что Node.js и npm работают.
Вводим в CMD (или PowerShell) команды:
Код:
node -v
видим версию, например v22.19.0

следом
Код:
npm -v
аналогично показывает версию, например 10.9.3

2. Java Development Kit (JDK)
Качаем и устанавливаем, например, майкрософтовскую сборку

JDK — это набор инструментов для разработки на Java, который включает компилятор, отладчик и другие утилиты.

Скачали. Установили. Проверяем.
Код:
java -version
Видим, например, такое openjdk version "21.0.8" - значит все сделано правильно.

3. apk-mitm
Это и есть главный инструментарий. apk-mitm — это пакет Node.js, который устанавливается через npm. Вы можете установить его глобально или использовать npx для запуска без установки. Ссылка на гитхаб.

Если хотите установить глобально
Код:
npm install -g apk-mitm
Если не устанавливаете глобально, npx сам загрузит и выполнит последнюю версию apk-mitm при первом вызове команды.

Все настроено. Скачали нужное нам приложение. Запускаем.

Код:
cd C:\Users\ПОЛЬЗОВАТЕЛЬ\ПАПКА С APK\
npx apk-mitm myapp.apk
apk-mitm начнет обработку:

1. Декомпилирует APK
2. Отключает SSL pinning
3. Собирает и подписывает новый APK (например, myapp-patched.apk)

Так выглядит процесс обработки
136423


Время выполнения может доходить до 15 минут.
В процессе вы увидите логи. Если возникнут ошибки, они отобразятся.

Когда apk-mitm успешно закончит работу, то в папке с вашим начальным apk, появится новый пропатченный apk. Запускаем сниффер трафика и смотрим запросы приложения.

Подытожим: в копилку имеющихся на форуме статей и методов по post/get запросам андроид приложений мы получаем еще один. Способ простой, главное отличие от предыдущих, что это не динамический SSL unpinning.
 
  • Спасибо
Реакции: Brabus_bots и Demiz

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)