Проект чтобы сделать мессенджер макс более конфиденциальным
Go to file
TheSillyStever c9cd2f66c4 fix: not wrappers 2025-08-26 22:06:12 +02:00
.github/workflows feat: exp mode; logging patch to DB 2025-08-23 20:40:41 +02:00
patches fix: not wrappers 2025-08-26 22:06:12 +02:00
scripts fix: experimental update proof patching 2025-08-26 21:18:19 +02:00
source_apk upd: to 25.9 2025-08-26 20:17:06 +02:00
ANALYSIS.md fix 2025-08-22 01:17:12 +02:00
README.md fix: upd DB for loggers 2025-08-26 21:55:24 +02:00

README.md

max-patcher-privacy - Патч для приватности

Этот проект содержит автоматизированный патч для удаления шпионского SDK my.tracker (и другие логгеры) из приложения max.

Готовый апк файл в https://github.com/TheSillyStever/max-patcher-privacy/actions (наверное не тестированный)

Если есть проблемы создайте пост. Хотите добавить что-то своё? Пул-реквесты всегда открыты!

О проекте

В связи с требованием о предустановке ПО, это приложение поставляется на многих устройствах. Внутри него находится трекеры, включая my.tracker (принадлежит VK), который собирает огромное количество данных о пользователе и устройстве.

Цель этого проекта предоставить версию приложения, в которой шпионские функции трекера полностью отключены. Процесс полностью автоматизирован с помощью GitHub Actions, и вы можете собрать APK самостоятельно.

Если уж устанавливать так с безопасностью!

Как это работает

Процесс полностью автоматизирован. Воркфлоу GitHub делает следующее:

  1. Декомпиляция: Оригинальный APK из этого репозитория распаковывается с помощью apktool.
  2. Патчинг: Python-скрипт (scripts/patcher.py) находит и заменяет участки Smali-кода, отвечающие за сбор данных, на "пустышки". Патчи находятся в папке patches.
  3. Сборка: Модифицированные файлы собираются обратно в APK с помощью apktool.
  4. Выравнивание и Подпись: APK выравнивается (zipalign) и подписывается временным ключом, который генерируется во время сборки.

Что конкретно делает патч?

Патч отключает ключевые шпионские функции SDK my.tracker и другие аналитические модули (список пополняется):

  • Сбор личных данных: Все методы set... для отправки PII (возраст, пол, email, телефон, ID соцсетей и т.д.) в MyTrackerParams.smali заменены на пустые. Они просто возвращают управление, ничего не делая.
  • Сбор аналитики звонков: Методы send и forceSendScheduledEvents в ru/ok/android/externcalls/analytics/CallAnalyticsSender.smali заменены на пустые. Это предотвращает сбор и отправку данных о ваших звонках.
  • Проверка на root-доступ: Функция проверки (obfuscated/r$a.smali) всегда возвращает false, так что трекер думает, что у вас нет root-прав.
  • Сбор списка установленных приложений: Функция (obfuscated/f.smali) теперь всегда возвращает пустой список.
  • Отправка данных: Все сетевые запросы к серверам трекера (tracker-api.vk-analytics.ru) блокируются на уровне кода (obfuscated/b0.smali и m0.smali). Данные просто не уходят с устройства.
  • Системное логирование: Основные методы логирования в g47.smali (различные уровни info, debug, warn, error) заменены на пустые. Это значительно снижает вероятность непреднамеренной утечки чувствительных данных через системные логи приложения. ИМЯ ФАЙЛА И МЕТОДОВ ИЗМЕНЯЕТСЯ С КАЖДОЙ ВЕРСИИ, СЕЙЧАС ЕЩЁ МАНУАЛЬНО ОБНОВЛЯЮ НО В БУДУЩЕМ ПЛАНИРУЮ АВТОМАТИЗИРОВАТЬ. Патчи называются hm9... (Так было в первой версии)

Доказательства

Я приложу скриншоты из JEB Pro, которые показывают код до и после применения патча на примере методов. Это демонстрирует, как опасный код заменяется на "пустышку". До (Оригинальный код MyTrackerParams): 1 (2)

После (Код после патча): 2

Или например:

До (Оригинальный код b0.smali (HttpURLConnection)): 3

После (Код после патча): 4

Как собрать APK самостоятельно

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

  1. Сделайте форк этого репозитория.
  2. Закиньте свой апк макс в папку source_apk вместо моего!! (мой взят с https://apkcombo.com/downloader/#package=ru.oneme.app, 25.9.0 · Aug 25, 2025, extract xapk -> ru.oneme.app.apk)
  3. Перейдите во вкладку "Actions" в вашем форке.
  4. Найдите воркфлоу с названием "Build Patched APK" и запустите его (кнопка Run workflow).
  5. После завершения работы (обычно 2-3 минуты), в артефактах сборки вы найдете zip-архив с готовым patched-app-release.apk.

Важно: Так как приложение подписано другим ключом (не ключом разработчика), вам нужно будет удалить оригинальную версию приложения перед установкой этой. Обновить поверх не получится.

Дисклеймер

Этот проект создан исключительно в образовательных и исследовательских целях для демонстрации техник обратной инженерии и автоматизации. Он не связан с разработчиками оригинального приложения. Вы используете его на свой страх и риск.