Как предотвратить клонирование приложения android в папку Samsung Secure или другое приложение такого рода? - PullRequest
0 голосов
/ 21 января 2020

Я пытаюсь выяснить, как работает защищенная папка. Это создает приложение клона в защищенной папке. как я смогу помешать android телефону создать клон.? прикреплен скриншот, где видно, что имя пакета такое же, но идентификатор процесса другой. Это высокий риск для приложений на основе технологий или рекламных кампаний. как проверить, запущено ли приложение на виртуальной машине или нет .?

Например,

  1. пакет: com.example.app (6151)
  2. пакет: com.example.app (пользователь 150) (6337)

Sample Image

1 Ответ

0 голосов
/ 22 января 2020

Поскольку я не смог express сам достаточно ясно в комментариях, я решил написать фрейм, вызывающий ответ, чтобы попытаться показать вам, почему я считаю, что вы сосредоточены на неправильной проблеме.

Сводка : Ваше (воспринимаемое) « проблема Samsung » (один телефон; две учетные записи) на самом деле является лишь частным случаем более широкой « проблемы двух телефонов"(два телефона; два аккаунта). Относительная легкость, с которой злоумышленник может (ab) использовать два телефона, означает, что именно здесь вы должны сначала сосредоточить свои защитные усилия. Побочным продуктом успешной защиты «проблемы двух телефонов» является то, что она (насколько я вижу) также защищает от конкретной c «проблемы Samsung», о которой вы сейчас беспокоитесь.


Ваш Воспринятый Проблема

В комментариях вы говорите:

[Это] fintech (приложение-кошелек) в основном мы пытаются запретить пользователю устанавливать два приложения и использовать две разные учетные записи на одном устройстве

и:

[Это] fin-tech приложение и избежать мошенничества и рискуя тем, что мы не хотим, чтобы пользователь устанавливал более одного приложения на одном устройстве

Несмотря на то, что вы не сообщаете подробности, я с радостью признаю, что риск для одного пользователя, имеющего несколько учетных записей, мошенничества. Во многих приложениях действуют правила для нескольких учетных записей: например, во многих онлайн-играх можно использовать несколько учетных записей для «игры в систему», чтобы получить несправедливое преимущество.

Я хотел бы задать вопрос об актуальности « на том же устройстве ".


(почти наверняка) Ваша Реальная Проблема

Игнорирование Безопасной зоны Samsung На данный момент очень легко написать ваше приложение, так что пользователь может использовать только одну учетную запись на телефон. Однако, если у кого-то еще нет второго телефона, он может получить второй за сравнительно небольшую плату, установите на нем свое приложение и настройте его на использование второй учетной записи.

С вашей точки зрения, это одинаково опасно : два экземпляра вашего приложения с использованием двух учетных записей, контролируемых одним человеком. С точки зрения злоумышленника, это немного менее удобно (по сравнению с использованием Secure Area от Samsung), потому что им приходится носить с собой два телефона.


Ваш приоритет

Поэтому вашим главным приоритетом должна быть защита от сценария " два телефона; две учетные записи ".

Для некоторых приложений это достаточно написать «, вы не должны использовать несколько учетных записей » в условиях обслуживания. Если обнаружено, что кто-то злоупотребляет системой, вы можете использовать это правило, чтобы запретить его. Для других может быть достаточно настаивать на предоставлении пользователем адреса электронной почты, номера телефона или почтового адреса и защите от дубликатов (хотя ни одну из этих проверок трудно обойти).

Для банковских и финансовых приложений ( такие как ваш), должны быть предприняты более строгие усилия. Как правило, что-то вроде номеров социального страхования (NI) (в Великобритании) или номеров социального страхования (SSN) в США используются (и, предположительно, аналогичные «идентификационные номера» для Остальной мир). Юридические требования «знать своего клиента» обычно делают запрос таких деталей приемлемым.

Какой бы метод вы ни использовали, поскольку «наличие двух телефонов» не является препятствием для злоумышленника, ваши системы должны быть в состоянии эффективно защищать против одного пользователя, настраивающего две учетные записи с двух отдельных устройств.


Бонус

Если у вас достаточно сильная защита против одного пользователя, использующего два телефона для создания двух учетных записей, то без дополнительной платы вы, насколько я вижу, защитили от более конкретного сценария c "один телефон; две учетные записи", о котором вы спрашиваете. Да Зона безопасности Samsung позволит пользователю повторно установить ваше приложение на одном телефоне, но когда он придет к созданию или регистрации учетной записи, ваш существующий меры предотвратят это так же, как если бы они использовали два разных телефона.

Хотя я не могу придумать какой-то способ на данный момент, я признаю, что это почти возможно что существует очень конкретная c угроза того, что только возникает, когда два экземпляра вашего приложения установлены на одном телефоне с использованием Secure Area от Samsung. Однако, если бы это было иметь место, я думаю, вам нужно было бы объяснить более подробно, что это за угроза и почему (к тому времени) существующие средства защиты от использования двух телефонов недостаточно, чтобы справиться с этим.

...