Статья [1 часть] Способ изъятия сообщений из базы данных Telegram

Unison

Unison

Grey Team
31.07.2018
31
133
Всем привет. Совместно с @Sunnych возникла идея получить переписку телеграмма на рутированном смартфоне.
База данных Telegram, а именно файл cache4.db находиться в смартфоне по адресу:

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

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

2.jpg

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

Так как в Telegram не все пользователи могут быть связаны с номером телефона для начала выведем таблицу пользователей с их:
  • uid (уникальным идентификатором);
  • name (именем);
  • полем data (хранит информацию о пользователе в двоичном виде, нам важен в этом поле только номер телефона).
4.jpg

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

5.jpg

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

6.jpg

Исходный код:
Ссылка для загрузки:

Спасибо за внимание.
Специально для CODEBY.NET
Продолжение: Способ изъятия сообщений из базы данных Telegram и Viber
P.S​
Моя первая разработка, раздел с БД Viber доработаю и обновлю ссылку для загрузки.
 
Последнее редактирование модератором:
U

u7u

Well-known member
13.09.2017
73
29
Спасибо за материал. На виртуалке 7ке запускаю, указываю cache4.db, итог "подключено к бд". Указываю вывести всех пользователей = подключите бд. Что может быть?
последняя версия, пока нет возможности на реальной машине глянуть. Вин7 64.
 
Unison

Unison

Grey Team
31.07.2018
31
133
Спасибо за материал. На виртуалке 7ке запускаю, указываю cache4.db, итог "подключено к бд". Указываю вывести всех пользователей = подключите бд. Что может быть?
На виртуалке не тестировал, какой Microsoft .NET Framework запущен на виртуадке Windows 7? Свежая БД с Telegram 4.9.1 считывалась без проблем, есть возможность протестировать не на виртуалке?
последняя версия, пока нет возможности на реальной машине глянуть. Вин7 64.
К сожалению софт использовался и тестировался на реальных машиной Windows 7/10 (x64).

Ссылка на mega битая или файл удален. Если можно перезалей пж. Благодарю!
Пишу продолжение статьи, ссылка на последний релиз:
 
  • Нравится
Реакции: Sunnych
A

Air7771

Премиум
22.02.2017
98
64
Всем привет. Совместно с @Sunnych возникла идея получить переписку телеграмма на рутированном смартфоне.
База данных Telegram, а именно файл cache4.db находиться в смартфоне по адресу:

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

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

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

Так как в Telegram не все пользователи могут быть связаны с номером телефона для начала выведем таблицу пользователей с их:
  • uid (уникальным идентификатором);
  • name (именем);
  • полем data (хранит информацию о пользователе в двоичном виде, нам важен в этом поле только номер телефона).

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


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


Исходный код:
Ссылка для загрузки:

Спасибо за внимание.
Специально для Codeby.net

P.S​
Моя первая разработка, раздел с БД Viber доработаю и обновлю ссылку для загрузки.
Ссылка на mega битая или файл удален. Если можно перезалей пж. Благодарю!

Пишу продолжение статьи, ссылка на последний релиз:
Благодарю! Не ожидал что так быстро ждем продолжение статьи!
 
Unison

Unison

Grey Team
31.07.2018
31
133
можно написать как с помощью адб изьять сам файл
Лично не пробовал. Но, для начала нужно получить root права на смартфоне. Потом запустить adb, в командной строке выполнить:
adb root
adb pull /data/data/org.telegram.messenger/files/cache4.db C:/TelegramDB/
Команда pull скопирует файл cache4.db в папку TelegramDB на ПК. Можно еще попробовать скопировать сначала на sdcard а уже потом на ПК.
 
  • Нравится
Реакции: Sunnych
NeskO

NeskO

Well-known member
10.01.2018
112
51
Лично не пробовал. Но, для начала нужно получить root права на смартфоне. Потом запустить adb, в командной строке выполнить:
adb root
adb pull /data/data/org.telegram.messenger/files/cache4.db C:/TelegramDB/
Команда pull скопирует файл cache4.db в папку TelegramDB на ПК. Можно еще попробовать скопировать сначала на sdcard а уже потом на ПК.
я знаю...я предложил идею...
 
4

4ger

New member
03.11.2017
3
1
Очень круто давно искал что-то подобное. Спасибо
 
  • Нравится
Реакции: Unison
D

dininininininin

Интересно, а если еще сделать поиск по ключевым словам, каким нибудь экстремистским, затем добавить базу данных телефонов и уже потом подбирать телефоны к никам, то можно нехилый такой список людей посадить. Думаю того, кто сделает так, из рядового сразу в капитаны повысят)
 
U

u7u

Well-known member
13.09.2017
73
29
Пишу продолжение статьи, ссылка на последний релиз:
Доброго. Этот релиз на виртуалке отработал. Единственное что вывел пустую форму, но может база пустая у меня.
Упс... При повторном нажатии вывести всех пользователей отработало...
 
Последнее редактирование:
Unison

Unison

Grey Team
31.07.2018
31
133
Доброго. Этот релиз на виртуалке отработал. Единственное что вывел пустую форму, но может база пустая у меня.
Упс... При повторном нажатии вывести всех пользователей отработало...
Спасибо за активное тестирование, есть над чем подумать, скоро будет продолжение с обновлением релиза.
 
M

MimoRakodil

У меня почему-то удалились автоматически все сообщения и файлы из избранного в телеграм Х. Хотел открыть базу данных через sqlite - требует какой-то пароль. А через вашу программу не открывается база, она в формате sqlite, а программа требует формат db. Что можно с этим сделать?
 
Unison

Unison

Grey Team
31.07.2018
31
133
У меня почему-то удалились автоматически все сообщения и файлы из избранного в телеграм Х. Хотел открыть базу данных через sqlite - требует какой-то пароль. А через вашу программу не открывается база, она в формате sqlite, а программа требует формат db. Что можно с этим сделать?
По идеи БД телеграм Х - зашифрована, ключ к БД знает только приложение телеграм Х. Если файл /data/data/org.telegram.messenger/files/cache4.db - требует пароль(ключ) то Вам лучше в поддержку Телеграм Х обратиться.
 
  • Нравится
Реакции: Sunnych
SecretumSecretorum

SecretumSecretorum

Member
11.07.2019
10
0
поясните пожалуйста, это будет моя база, или всего телеграма?
 
Мы в соцсетях: