Как мое приложение Android может сканировать свою собственную карту памяти на наличие известных неверных ключевых слов, таких как «Xposed» или «Frida»? - PullRequest
0 голосов
/ 12 ноября 2018

Приложение, над которым я работаю на работе, недавно было проверено пером. Один из рисков, который вернулся в отчете, заключался в том, что в нем не было надлежащего обнаружения хуков. Я реализовал библиотеку RootBeer, но этого было легко избежать.

Тестер Frida создал приложение для Android для изменения логики обнаружения корней во время выполнения. Скрипт подключен к методу System.exit, чтобы вернуть false вместо true. Это предотвратило выход из приложения после того, как приложение обнаружило, что устройство было рутировано.

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

Одна из таких проверок - заставить приложение Android сканировать собственный файл карты памяти, расположенный по адресу

/proc/<pid>/maps

, где

<pid>

- это идентификатор процесса приложения (PID).

Я проверил документацию по Android и могу найти только информацию об обработке памяти, но ничего при сканировании памяти. например. https://developer.android.com/topic/performance/memory

Я вижу, что вы можете "получить объект MemoryInfo для текущего состояния памяти устройства". Но это показывает только доступную память в системе.

У кого-нибудь есть решение этой проблемы?

1 Ответ

0 голосов
/ 13 ноября 2018

Я нашел ответ здесь: Джиу-джитсу Обнаружения Фриды

По данным сайта "" Эта статья является частью серии "Мобильное обратное проектирование". Вы должнывключить собственный код в ваш проект Android.

Вы можете сделать это здесь: Добавить код C и C ++ в ваш проект

Я еще не проверял это и обновлюэтот ответ, когда у меня есть.

...