“МТС Мобильная Почта” вместо Samsung Social Hub: как это могло случиться | ||
Безопасность | ||
Подробности о сценариях обновлений и параметрах, из-за которых возник данный баг... |
О сути проблемы уже писали здесь - краткое содержание: Приложение “МТС Мобильная Почта” самопроизвольно установилось у пользователей некоторых устройств Samsung в рамках процесса обновления не связанного с ним приложения Samsung Social Hub. Оказалось, что оба приложения имеют одинаковые названия пакетов, из-за чего и произошла неразбериха.
Когда платформа Android была впервые представлена, Symantec попробовала произвести несколько сценариев обновления. Нашей целью тогда было выявление обязательных полей, которые нужно будет тестировать на случай замены существующих приложений злоумышленниками. Таким образом, приложения, разработанные для Android, должны иметь уникальный идентификатор программного пакета, известный как package name. Но помимо этого требуется еще некоторые элементы, чтобы приложение могло быть обновлено через Google Play:
- Обновляемое приложение должно быть подписано так же, как и существующая копия. Требования к подписям должны решать проблему случайного выбора независимыми разработчиками одинаковых имен пакетов;
- Параметры versionCode и versionName для обновления должны иметь большие значения, чем у существующего приложения;
- Еще один рубеж, ограничивающий злонамеренный код от получения привилегий — то, что функция автоматического обновления Google Play загружает новые версии, только если новое приложение не требует больших полномочий, чем предыдущее.
Оба приложения использовали одно и то же название пакета 'com.seven.Z7'. Samsung Social Hub – это приложение, которое изначально устанавливается на некоторые устройства и никогда не было опубликовано в Google Play. При этом приложение Samsung Social Hub подписано компанией Seven, разрабатывающей мобильные приложения.
Certificate:
Data:
Version: 3 (0x2)
Serial Number: 1235473566 (0x49a3d49e)
Signature Algorithm: sha1WithRSAEncryption
Issuer: C=US, ST=California, L=Redwood City, O=Seven Networks, OU=Seven Networks, CN=Seven Networks
Validity
Not Before: Feb 24 11:06:06 2009 GMT
Not After: Jul 12 11:06:06 2036 GMT
Subject: C=US, ST=California, L=Redwood City, O=Seven Networks, OU=Seven Networks, CN=Seven Networks
Впрочем, использование того же названия пакета недостаточно, чтобы стать обновлением другого, несвязанного с ним приложения. Но в данном случае ключ подписи для приложения МТС тоже совпал. Разработчик-аутсорсер случайно использовал одну и ту же подпись, а также название пакета для двух своих продуктов: одного для Samsung, а второго для МТС.
Интересно, что согласно записям Symantec, приложение 'com.sevenZ7' было доступно через Android Market с конца 2011 года. Но проблема возникла только сейчас, так как номера версии достигли значений, превосходящих версию приложения Samsung – а это является последним ключевым критерием для выполнения обновления.
Google уже отреагировала на инцидент, приложение больше не может быть загружено через Google Play.