Открываете чат — Telegram закрывается. Запускаете снова, он послушно возвращает вас в тот же диалог, и всё повторяется. Круг замкнулся: чтобы убрать стикер, надо войти в переписку, а войти в неё — снова уронить мессенджер. Круг разрывается за минуту, и заходить в чат не придётся.
Что происходит и почему Telegram вылетает именно сейчас
Если мессенджер начал закрываться на этой неделе и всегда на одном и том же чате — почти наверняка вы поймали тот самый стикер. Про него написали Хабр, Anti-Malware, Hi-Tech Mail.ru и десяток изданий поменьше; на баг обратил внимание исследователь под ником GangExposed_RU в X — на его записи ссылается Хабр.
Механика простая и оттого неприятная. Злоумышленнику достаточно отправить стикер в переписку или в группу — дальше ничего делать не нужно. Приложение пытается отрисовать картинку в тот момент, когда вы открываете чат, и падает. По стикеру не нужно нажимать, его не нужно скачивать, никаких ссылок и подтверждений. Открыли диалог — приложение закрылось.
Отсюда и эффект замкнутого круга: Telegram при запуске возвращает вас туда, где вы были в прошлый раз. То есть ровно в тот чат, из-за которого он и упал.
Как файл в 269 байт роняет целое приложение
Анимированные стикеры Telegram — это не картинки и не видео. Формат называется TGS и построен на Lottie: внутри лежит не изображение, а текстовое описание того, что нарисовать. Не «вот вам звезда», а «нарисуй звезду вот такого цвета, с таким-то количеством лучей, поверни её вот так за полсекунды». Телефон читает эту инструкцию и рисует картинку сам, прямо на экране. Именно поэтому стикеры такие лёгкие и не мылятся на больших экранах — рисовать по описанию дешевле, чем возить готовое видео.
А теперь подвох. В проблемном файле у звезды выставлен параметр количества вершин — pt.k — со значением порядка десяти в тридцать восьмой степени. Единица с 38 нулями. Приложение не спорит: сказано нарисовать фигуру с таким числом углов — значит, начинает считать координаты каждого.
Почему же такой файл вообще дошёл до вас? У Telegram есть серверная проверка.
Сервер проверяет обёртку, а не смысл. Понять, что внутри бомба, можно единственным способом — самому попробовать нарисовать картинку, а это чужие процессорные секунды, умноженные на миллиарды стикеров в сутки. Проверку такой ценой не ставит никто — и в итоге за неё платит ваш телефон. Опасность не в объёме данных, а в объёме работы, которую эти данные заказывают.
Что делать прямо сейчас
Чинится это за минуту, если знать, куда не надо нажимать.
Удалите проблемный чат, не открывая его
Главное правило — не заходите в переписку, чтобы стереть стикер оттуда: именно вход и роняет приложение. Чат удаляется прямо из общего списка:
- На Android: нажмите на строку чата и держите. Появится панель с корзиной — нажмите её и подтвердите удаление.
- На iPhone: проведите по строке чата справа налево и выберите «Удалить».
- Если появится выбор — удалить только у себя или у всех, — берите «только у себя»: у собеседника переписка не пострадает.
Телефон успевает закрыть Telegram раньше, чем вы дотянетесь до строки? Запустите его снова и сразу жмите «Назад» (Android) или смахивайте к списку чатов (iPhone) — иногда успеваешь. Если нет, это не ваша вина: чистите кэш или удаляйте чат с компьютера.
Почистите кэш, если до чата не добраться
Если приложение падает сразу на старте, очистите кэш из системных настроек Android: «Настройки» → «Приложения» → Telegram → «Хранилище» → «Очистить кэш» (в самом мессенджере это «Данные и память» → «Использование памяти»). Переписки не пострадают. Но это лишь передышка: пока проблемный чат не удалён, стикер скачается заново — сразу после очистки удаляйте диалог из списка.
Есть и обходной путь — удалить чат с компьютера. В Telegram Desktop 7.2.7 и новее падение уже исправлено, так что там переписка удаляется спокойно, а телефон после этого перестанет падать. Веб-версия иногда тоже выручает, но движок отрисовки у неё тот же, и вкладка может подвиснуть.
Обновите приложение
Для Telegram Desktop исправление уже вышло: в версии 7.2.7 от 7 сентября в списке изменений прямым текстом значится «Fix crashes with invalid lottie files» — устранение падений при обработке некорректных Lottie-файлов. Похоже, баг нашли и передали в Telegram раньше, чем стикер разошёлся по чатам, — заплатка успела выйти до волны публикаций об отсутствии исправления.
С мобильными версиями сложнее: на момент публикации Telegram отдельного заявления не делал, а исходники приложений для Android и iOS выкладывают с задержкой, так что проверить по ним нечего. Держите автообновление приложений включённым, и заплатка приедет сама.
Мы каждую неделю так же разбираем, что случилось с телефоном и что с этим делать — спокойно и по делу, без пугалок. Подпишитесь на «Техпросто» в MAX, Telegram или Дзене, и разборы будут приходить сами.
Что этот стикер не может: данные, пароли, аккаунт
Слово «стикер-убийца» звучит страшнее, чем происходящее на самом деле.
Баг ломает ровно одно — способность приложения нарисовать картинку. Он не крадёт переписку, не читает пароли, не забирает аккаунт и не запускает на телефоне чужой код. На языке безопасности это отказ в обслуживании: программе мешают работать, но внутрь неё не залезают. Ваши сообщения, фотографии и контакты лежат на месте, а после удаления чата Telegram работает как раньше.
Антивирус тут тоже не поможет и не нужен — ловить нечего. Похожая история была этим летом с «moo вирусом» на айфонах: пугает сильно, а лечится парой нажатий, и вирусом не является. Настоящие мессенджер-угрозы выглядят иначе — они приходят файлом-приложением, которое просят установить, и вот на них стоит смотреть внимательно.
Если дело не в стикере: другие причины вылетов
Запрос «вылетает телеграм» люди вводят в поиск круглый год, задолго до всякой истории со звездой. Если приложение закрывается не на конкретном чате, а вообще — причина, скорее всего, из этого списка.
| Как это выглядит | В чём обычно дело | Что сделать |
|---|---|---|
| Вылетает при запуске, сразу после заставки | Повреждённый кэш после сбоя или обновления | Очистить кэш, при упорстве — переустановить приложение (секретные чаты пропадут) |
| Закрывается при открытии тяжёлых чатов и каналов | Кончилась оперативная память, система гасит фоновое | Закрыть лишние приложения, перезагрузить телефон |
| Падает при отправке фото и видео | Нет места в хранилище, файл некуда сохранить | Освободить память на телефоне |
| Вылетает только на звонках и видео | Конфликт с разрешениями микрофона и камеры | Проверить разрешения в настройках приложения |
| Стало происходить после обновления системы | Старая версия мессенджера не дружит с новой ОС | Обновить Telegram из магазина приложений |
| Вылетает всё подряд, не только мессенджер | Проблема шире — память, перегрев, износ | Разбираться с телефоном целиком |
Если вылеты не ограничиваются одним приложением, начните с общей диагностики: у нас есть разбор, почему Android тормозит и вылетает, и инструкция, как освободить память на айфоне — нехватка места вызывает вылеты чаще, чем любые вирусы.
Частые вопросы
Меня взломали? Нет. Стикер только мешает приложению рисовать картинку — к переписке, паролям и аккаунту он не обращается. Менять пароль и включать заново двухфакторную защиту из-за этого не нужно.
Нужно ли удалять Telegram и ставить заново? Обычно нет, достаточно удалить проблемный чат или очистить кэш. Переустановка — крайняя мера: она сотрёт скачанные файлы, черновики и все секретные чаты — они живут только на телефоне и не восстанавливаются.
А если стикер прилетел в большую группу? Тогда приложение будет падать у всех, кто откроет эту группу. Удалить сообщение может администратор — но ему для этого придётся зайти в чат, поэтому проще сделать это с компьютера. Остальным участникам достаточно не открывать группу до уборки.
На iPhone это тоже работает? Судя по описанию, механика бага не зависит от системы: она упирается в отрисовку фигуры, а не в особенности Android или iOS. Точный список затронутых версий Telegram не публиковал.
Как понять, что я поймал именно этот стикер, а не что-то ещё? По одному признаку: падение железно повторяется на одном и том же чате, а остальной мессенджер работает нормально. Если Telegram закрывается в разных местах и без системы — причина другая, смотрите таблицу выше.
Во всей этой истории поражает не баг, а пропорция. Двести шестьдесят девять байт — это меньше, чем весит одна строка вашей переписки. Из них 38 знаков занимает число, которого никто не проверял, потому что проверять число никому не приходило в голову: файл-то крошечный. И этого хватило, чтобы уронить приложение на сотнях тысяч телефонов сразу.