Мы покажем что конкретно остаётся на iOS и Android после удаления Telegram и Signal, через какие инструменты это находится и сколько времени проходит, прежде чем артефакты начинают исчезать.
Условия эксперимента
На оба устройства поставили Telegram и Signal, попользовались несколько дней в обычном режиме (переписка, звонки, медиа), после чего удалили оба приложения. Извлечения делались в три этапа:
С установленными приложениями (контрольное)
Сразу после удаления
Через 6 дней (iOS) / 14 дней (оба)
Извлечения обрабатывались в Cellebrite PA, Magnet AXIOM, Oxygen Forensic Detective, iLEAPP/aLEAPP. Это важно, потому что разные инструменты видят разное. Забегая вперёд: ни один из них не нашёл всё.
Анализ iOS
Поиск по ключевым словам
Запускаем в Cellebrite PA поиск по bundle ID ph.telegra.Telegraph. В контрольном извлечении (при установленном приложении) находит кучу результатов. Удалили Telegram, извлекли снова. Количество результатов просело, но все еще есть. Через 6 дней после удаления результатов стало чуть меньше, но они всё ещё есть.

С Signal (org.whispersystems.signal) картина аналогичная:

AXIOM показывает похожую динамику, но находит другие файлы: (сравнение по колонкам - установлено-удалено-спустя неделю)

AXIOM поиск ph.telegra.Telegraph

AXIOM поиск org.whispersystems.signal
Гораздо больше совпадений находится по полным ключевым словам:
Поиск по Signal:


Telegram:


Пока картина следующая - даже банальный поиск по ключевым словам после удаления приложения даёт десятки и сотни совпадений. Сам факт установки приложения на устройство предполагает возможное наличие в нем учетной записи подозреваемого, что может помочь аналитику в дальнейшем.
Факт установки и удаления в Mobile Installation Logs
iOS ведёт логи установки и удаления приложений. Эти записи пережили и удаление, и 14 дней ожидания.
В AXIOM видно запись об установке и удалении Signal:

iLEAPP показывает то же для Telegram:

Тут фиксируются конкретные временные метки: когда поставили и когда снесли. Для следствия это бывает важнее самой переписки.
SMS с кодами активации
Оба мессенджера при регистрации/авторизации присылают SMS с кодом. Эти сообщения лежат в стандартной SMS-базе и никуда не деваются при удалении приложения.


Казалось бы, мелочь. Но SMS от Telegram с кодом подтверждения однозначно доказывает, что пользователь как минимум начал процесс регистрации на этом устройстве. А дата SMS фиксирует, когда это произошло.
Тем более, СМС хранятся даже после удаления, пока их не затрет новыми данными.
Анализ уведомлений
iOS хранит уведомления в отдельной базе. Эта база - самый ценный артефакт из тех, что переживают удаление приложения. Потому что (как вы могли догадаться) в уведомлениях лежит не только метаинформация (время, отправитель), но и текст сообщений. База доступна для анализа даже после удаления приложения.
Cellebrite PA достаёт уведомления от Telegram:

AXIOM находит уведомления от Signal:

iLEAPP показывает уведомления Telegram в другом формате, но суть та же:

Если пользователь не отключил уведомления для мессенджера, мы получаем фрагменты переписки даже после полного удаления приложения. Signal позиционируется как защищённый мессенджер, но от уведомлений защищать никто не обещал ;)
interactionC.db - анализ контактов
Здесь обнаружился интересный нюанс. База interactionC.db хранит записи о взаимодействиях пользователя с контактами через приложения.
При удалении Telegram записи из неё удаляются (но поддаются восстановлению через Oxygen). А вот при удалении Signal записи остаются нетронутыми.

Почему так? Telegram, видимо, реализует очистку своих данных из этой базы при удалении (или iOS делает это за него). Signal этого не делает. Так что в этом конкретном месте более «защищённый» мессенджер оставляет больше следов.
Анализ Power Log
Current Power Log хранит данные об энергопотреблении приложений за 3-5 дней. Но у iOS есть привычка делать бэкапы этих логов.
В итоге через 6 дней после удаления данных оказалось даже больше, чем сразу после удаления, за счёт дубликатов из резервных копий.

Axiom - Telegram

Axiom - Signal

Telegram App Usage
Power Log фиксирует состояние приложения (foreground/background), использование сети, расход батареи. По этим данным можно восстановить паттерн использования - когда человек открывал мессенджер, как долго он был активен, сколько трафика ушло.
Biome
Добавленный в 2021 в iOS Biome Framework пришел на замену knowledgeC и создан для логирования системной и пользовательской активности. Большая часть данных Biome удаляется вместе с приложением, но два типа записей уцелели:
Notifications (метаданные уведомлений)
Text Input Sessions (сессии ввода текста)

iLEAPP Biome Notifications - Telegram

iLEAPP Biome Text Input Sessions - Signal
Text Input Sessions и Уведомления сохраняются через 6 дней после удаления. То есть мы видим, когда пользователь набирал текст в Signal. Не что набирал, но когда и как долго.
KnowledgeC и Screen Time
Записи в KnowledgeC удаляются при деинсталляции, но удалённые строки можно вытащить из SQLite, пока их не успело затереть. Если извлечение сделано быстро, восстановление реально. Через 6 дней Screen Time восстановить уже не удалось, а вот факт установки/удаления в KnowledgeC остался.

Telegram

Signal
Net Usage, TCC, storeUser.db
Net Usage (статистика сетевого трафика) была доступна сразу после удаления, но через 6 дней исчезла.

В TCC (базе разрешений) записи обычно удаляются вместе с приложением, но разрешение kTCCServiceLiverpool для Telegram почему-то осталось:

storeUser.db содержит две таблицы: установленные приложения и история покупок через Apple ID.
Опять же, сравнивая две эти таблицы, можно увидеть, что было удалено. Правда, нужно учитывать, что приложение могло быть установлено на другом устройстве с тем же аккаунтом.
Через 14 дней после удаления на iOS
Что осталось:
Артефакт |
Сразу после удаления |
Через 14 дней |
|---|---|---|
Mobile Installation Logs |
да |
да |
SMS (коды активации) |
да |
да |
Уведомления (с текстом!) |
да |
да |
InteractionC |
Signal: да. Telegram: восстановим |
да |
Power Logs |
да (с бэкапами) |
да (меньше) |
Biome (Notifications, Text Input) |
да |
да |
KnowledgeC |
факт установки/удаления |
да |
Screen Time |
восстановим |
нет |
Net Usage |
да |
нет |
TCC |
частично (Telegram) |
да |
storeUser.db |
да |
да |
Опять же, через две недели после удаления Telegram и Signal с айфона мы всё ещё можем доказать факт использования, восстановить фрагменты переписки из уведомлений и построить таймлайн активности по Power Log.
Анализ Android
Поиск по ключевым словам
Cellebrite PA, поиск по org.telegram.messenger:

Поиск по org.thoughtcrime.securesms (package name Signal):

localappstate.db и gass.db
Это, по сути, главные базы Google Play.localappstate.db хранит аккаунт Google, время первой установки и последнего обновления. gass.db содержит версию и SHA-256 хеш APK. Оба файла переживают удаление приложения.



Та же инфа, что и на iOS - какая версия Telegram была установлена, когда, через какой аккаунт. Для Signal данные аналогичные.
SMS с кодами
Аналогично iOS. Лежат в mmssms.db и message_content.db:


Telegram и медиафайлы на SD-карте
Telegram по умолчанию сохраняет полученные медиафайлы на эмулированную SD-карту. А при удалении приложения эти файлы не удаляются. Все фотографии, видео и документы, полученные через Telegram, остаются на месте.

Signal, к слову, этого не делает. Его медиа хранятся в дате приложения и удаляются вместе с ним.
Digital Wellbeing
Это Android-аналог Screen Time. Отслеживает использование приложений и уведомления. Данные остаются после удаления.


Недоставленные сообщения в Firebase Cloud Messaging
FCM хранит очередь push-уведомлений, которые не были доставлены. Если приложение удалили, сообщения остались в очереди. Некоторые форензики это называют «золотым вторым шансом»


По факту это канал утечки контента даже из Signal, который в норме не оставляет текст сообщений нигде, кроме своей зашифрованной базы.
PkgPredictions.db (Samsung)
Samsung-специфичная база, хранит временные метки запуска приложений. Данные живут 7-14 дней.


notification_log.db (старые Samsung)
Это целиком журнал уведомлений с типами событий и временными метками:

Usage Stats
Самый живучий артефакт из всех.
Эта статистика использования приложений не удаляется при деинсталляции. И все.


Battery Stats
Содержит информацию о работе приложений: wakelock-и, сетевая активность, расход батареи. Лучший способ анализа: извлечь через баг-репорт и открыть в Battery Historian.


Library.db
Привязана к аккаунту Google, не к устройству. Заполняется при входе, включая приложения с других устройств. Для привязки к конкретному девайсу не годится, но для общей картины полезна.
Этим похожа на storeUser.db в iOS, которую описывали выше


Android: итог через 14 дней
Артефакт |
Сразу после удаления |
Через 14 дней |
|---|---|---|
localappstate.db / gass.db |
да |
да |
SMS (коды активации) |
да |
да |
Медиафайлы на SD-карте (Telegram) |
да |
да |
Digital Wellbeing |
да |
да |
Firebase Cloud Messaging |
да |
да |
PkgPredictions.db (Samsung) |
да |
да |
Usage Stats |
да |
да (частично) |
Battery Stats |
да |
да |
Library.db |
да |
да |
Разрешения, AppOps, Network stats |
нет |
нет |
Кто оставляет больше следов?
Оба мессенджера оставляют достаточно артефактов, чтобы доказать факт использования. Но есть нюансы.
Telegram оставляет больше контента: медиафайлы на SD-карте (Android), данные в interactionC удаляются, но восстанавливаемы.
Signal не хранит медиа вне песочницы, но неожиданно оставляет больше метаданных: записи в interactionC не удаляются при удалении на iOS, а через FCM на Android могут утечь части контента.
Оба мессенджера одинаково беззащитны перед: SMS-кодами активации, уведомлениями iOS, Power Log, Usage Stats/Digital Wellbeing, Battery Stats.
Блокировки и дыры в безопасности мессенджеров в нашем тгк.
Ничего лишнего!
Комментарии (20)

dsoastro
14.04.2026 18:39На андройде без рута вы не получите доступ почти ни к чему (к вопросу о localappstate.db / gass.db и пр). Если загрузчик не разблокирован, то для получения рута нужно разблокировать загрузчик, и все сотрется. Медиафайлы на SD-карте (Telegram) чистятся элементарно.

Kahelman
14.04.2026 18:39Не забываем что в телеграмме end-to-end шифрование по умолчанию выключено. Только в секретных чатах, которыми пользуются 2 калеки …..

DGN
14.04.2026 18:39Эм, если информация стоит денег или лет, то логично пользоваться секретными чатами. И вот тут интересен вопрос, а сам факт установления секретного чата где-то регистрируется на устройстве?

bazanovv
14.04.2026 18:39С медиафайлами есть тонкости, если не путаю, Андроид может хранить превьюшки сохранённых фото и видео в /storage/emulated/0/Pictures/.thumbnails или storage/emulated/0/DCIM/.thumbnails, и качества их вполне хватает, чтобы понять, что на фото. Поэтому после удаления медиафайлов желательно удалить и каталоги .thumbnails целиком, надо будет - перекэширует.

Balling
14.04.2026 18:39“Оба мессенджера при регистрации/авторизации присылают SMS с кодом. Эти сообщения лежат в стандартной SMS-базе и никуда не деваются при удалении приложения”
Телеграм либо емейл либо звонок сейчас.

DGN
14.04.2026 18:39Не очень кстати понятна такая привязка. Защита от спамеров? Я думаю, если бы за год према давали возможность завести автономный аккаунт с активацией по одноразовому блокноту, вряд ли бы они всё заспамили.

K0styan
14.04.2026 18:39Да легко. Спам - коммерческая активность, денежный порог просто ухудшит экономику спамеров. Для каких-то категорий выведет её на несходимость, да, но не для всех.

aamonster
14.04.2026 18:39Так и привязка к sim не выведет, они (даже непонятно на кого зареганные или непонятно какой страны) весьма умеренных денег стоят.

DGN
14.04.2026 18:39Примерно на два порядка дешевле према на год, стоит номер для получения смс на сутки. А дольше суток спамерский аккаунт и не живёт обычно.

house2008
14.04.2026 18:39iOS 15 ? Вы серьезно ?) Помню статистику видел года назад у приложения с большой аудиторией где iOS 15 вроде была 2%-3% всего. Может еще виндовс хп снять логи на десктопе, думаю там тоже будет много интересного.
Причем тут вообще месседжеры если вы показываете логи системы к которым приложения без джейла и рута не могу управлять.
А если поставить десктоп клиент на кали линукс, я думаю и там меседжеры также наследят не меньше.Соглашусь только, что очень странно, что после удаления аппы доступны уведы, что довольно грустно.

Kolombo_nic
14.04.2026 18:39НУ т.е. при физическом доступе к телефону после удаления все вскроется все равно при детальной работе с вашим аппаратом, по этому у подобных интересных ребят должен быть pixel телефон на котором есть кодик для полного форматирования телефона.

RulenBagdasis
14.04.2026 18:39Расскажите, что за кодик, пожалуйста.

NoVViK
14.04.2026 18:39Наверное, имеется ввиду GrapheneOS для Pixel'а.
Там есть Duress Pin, который безусловно вайпает телефон.

rtkprg3
14.04.2026 18:39Прочитал. Для себя сделал следующий вывод:
1. факт установки приложений, их активности (энергопотребление, установка/удаление и т.д.) - это все функции операционной системы и она очень любит все это логировать. Тут претензии надо предъявлять операционке, а не приложению.
2. уведомления (это функция операционки) раскрывают текст сообщений. Запомним это и отключим их сразу и навсегда.
3. операционка не даст вам возможности скрыть факт использования любого мессенджера. Учтите это в своем поведении.Если речь про тайну переписки, то юзайте секретные чаты телеграма, специально разработанные для этого. Про них в статье ни слова, кстати.

qyix7z
14.04.2026 18:39Непонятно, почему везде на скринах 2023. Скрины должны были отлежаться, прежде чем опубликовать? Ну и современные ОС и/или приложения могут [не] оставлять другие следы.
Это, по сути, главные базы Google Play.
А еще наверняка на серверах Google Play ведутся логи, когда кто что поставил и удалил.
Через 6 дней (iOS) / 14 дней (оба)
Почему выбраны такие такие сроки? Почему через 6 дней смотрели только на iOS?
Для полноты картины хотелось бы узнать, остается ли что-то после сброса до заводских или удаления аккаунта гугл/аппл и заведения нового.
Странное исследование.
jarkevithwlad