Способ изъятия сообщений из базы данных Telegram

Gidroponika

Модератор
Регистрация
21 Апр 1978
Сообщения
772
Реакции
802
dd5b13a4b2947ceedb09b.png

Всем привет. возникла идея получить переписку телеграмма на рутированном смартфоне.

База данных Telegram, а именно файл cache4.db находиться в смартфоне по адресу:

/data/data/org.telegram.messenger/files/cache4.db

558a35a973e81dfa0fb0f.png

После получения файла БД было разработано приложение Receiver под Windows 7/8/10, приложение использует Microsoft .NET Framework 4.6 требует только распаковки и запуске файла Receiver.exe.

После запуска приложения требуется подключить БД:

686552dee31a8082248a8.png

d4d5781f490516684a7fc.png

При удачном подключении:

32f95cf3acc3c823b15c7.png

Так как в Telegram не все пользователи могут быть связаны с номером телефона для начала выведем таблицу пользователей с их:

  • uid (уникальным идентификатором);
  • name (именем);
  • полем data (хранит информацию о пользователе в двоичном виде, нам важен в этом поле только номер телефона).
f841d782ed530c9a46265.png

После вывода таблицы мы узнаём uid и фильтруем по нему сообщения:

8dcb8b212ba38aa2b4e3d.png

В итоге получает таблицу с сообщениями в явном виде. После этого сохраним отчёт в формате PDF, так как при формировании документа PDF я использовал кодировку Windows arial.ttf (другого способа я не нашёл, для корректного отображения русского текста).

Документ Report.pdf автоматически откроется (перед открытием будет сообщение о месте хранения отчёта).

76e45ef9b91f31e173973.png

Исходный код: Код формы

Ссылка для загрузки: Receiver.rar



Спасибо за внимание.



P.S

Моя первая разработка, раздел с БД Viber доработаю и обновлю ссылку для загрузки.
 
Назад
Сверху