Уязвимость в Telegram позволяет обойти пароль local code
Алгоритм атаки следующий
(имеем root; зашифрованный гаджет; пароль > 30 знаков на стороне жертвы; устройство отпечатка пальца не существует «то есть неважно»).
- Украсть «внешние данные Telegram» (см.пред.статью).
- Настроить разблокировку своего Android-девайса отпечатком пальца на стороне исследователя (позиция атакующего).
- Установить с GP Telegram и объединить с «внешними данными».
- При открытии Telegram на устройстве исследователя и при запросе ввода 31-значного пароля (для разблокировки local code) – приложить свой палец. Telegram разблокируется, станут доступны все секретные чаты/переписка и облако исследователю.
Интересно, что такой атаке подвержен только Telegram (из 4-х протестируемых приложений). Попробовал провести подобные атаки на keepassdrod; Сбербанк-онлайн; Яндекс деньги – эти android приложения требовали пароль и на отпечаток никак не реагировали.
Сюжет на видео:
- Создан секретный чат между Android на Virtualbox, где нет устройства «отпечатка пальца» и Android 6. Между «террористами», идет общение.
- На Android Virtualbox задаю local code 31-значный пароль — блокировка приложения Telegram.
- Делаю Бэкап учетки Telegram- Virtualbox (не обязательно копировать все данные см.пред. статью).
- Копирую данные на ЯД.
- Забираю c ЯД Бэкап на Android 6.
- Устанавливаю Telegram на Android 6 из GP.
- Подсовываю часть «внешних данных» из Бэкапа Android 6 на установленный Android 6.
- Запускаю Telegram на Android 6, получаю запрос на ввод пароля/отпечаток. Прикладываю отпечаток пальца, и telegram разблокировался, доступна вся переписка СЧ и облако.
- Перезапускаю Telegram, ввожу 31-значный local code, и Telegram также разблокирован.
Подводя итог по этой части статьи.
Telegram подвержен атаке хищения ключей, но самое странное в мессенджере – «интегрированный отпечаток пальца в приложение». Яндекс деньги; Сбербанк-онлайн; keepassdroid – не подвержен подобной атаке. У всех перечисленных выше приложений имеется функция разблокировка приложения по отпечатку, но в Telegram она принудительно интегрирована и срабатывает, когда ее используют в коварных целях, в других приложениях функция «отпечатка» не срабатывает – защита от мошенничества).
Мессенджер Telegram – массовый мессенджер, защиту нужно разрабатывать и для домохозяек и для всех. Лицо компании не прав, когда заявляет, что все беды от того, что скомпрометировано все на свете, кроме мессенджера Telegram.
ps/ не имеет отношения к Telegram
Так же мне удалось обойти шифрование на Android девайсе Leagoo M8 и достать все данные, в том числе и данные Telegram для доступа к СЧ (атакой JTR, либо отпечатком).
На ресурсе 4pda имеется стоковая прошивка данного гаджета и десятки кастомных (свободных) прошивок. Установил TWRP. Отформатировал устройство Android Leagoo M8, накатил прошивку Resurrection Remix 6 (одна из лучших на мой взгляд). Зашел в настройки – безопасность – зашифровать данные. Зашифровал. До загрузки гаджета стал требоваться пароль (в TWRP без пароля не монтировался главный раздел). Прошил secro.img от стоковой прошивки и пароль (все шифрование) благополучно исчез. В TWRP появилась возможность монтировать раздел без ввода пароля, /data/data/… стал доступен.
Возможно данной проблеме (проблеме шифрования устройства) подвержены и другие гаджеты, но у меня их не так много, чтобы полноценно поэкспериментировать с разными моделями девайсов.