Защиты плагина Android нет - PullRequest
0 голосов
/ 24 января 2019

Отчет о безопасности приложения показывает несколько ошибок безопасности, одной из которых является «Защита плагина Android отсутствует». Их решение:

PluginKiller

Проверка ServiceName

Необъявленное разрешение

SharedUID ProcessCheck

Проверка AppRuntimeDir

ReceiverFilter Check

Проверка EnabledComp

Пожалуйста, объясните каждый из них и дайте мне пример кода

Тпй

1 Ответ

0 голосов
/ 15 июня 2019

Уязвимость была представлена ​​на конференции Black Hat Asia в 2017 году. Слайд-шоу этой уязвимости здесь и статья об этой уязвимости здесь .
Я описываю один метод.
В статье у нас есть «SharedUID ProcessCheck»:

В отличие от PID (ID процесса), который является переходным и постоянно меняется, UID присваивается каждому приложению во время установки и остается постоянным, пока приложение не переустанавливается. UID должен быть уникальным для каждого приложения, за исключением случаев, когда приложение явно запрашивает обмен ИД пользователя с другим приложением. Поскольку файл плагина APK никогда не устанавливался в систему, пакет плагинов не имеет уникального UID. Хотя хост-приложение может запустить новый процесс для его запуска, например, DroidPlugindid, процесс плагина поделился с другим UID-идентификатором PID-идентификатора с процессом хост-приложения.

Сначала мы получаем uid и pid нашей программы, затем мы получаем весь процесс android и проверяем их uid, если этот процесс имеет такой же uid, но другой pid это проблема безопасности. Вот простой псевдокод, вы должны проверить ошибку и настроить ее,

private boolean SharedUIDProcessCheck () {
    int myPid= android.os.Process.myPid();
int myUid= android.os.Process.myUid();
  for (ActivityManager.RunningAppProcessInfo info : am.getRunningAppProcesses()) {
    if (info.uid == myUid && info.pid!=myPid) {
// our program loaded as plugin, security problem has happened.
      return true;

    }
  }
  return false;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...