Как найти ключ к базе данных SQLite - PullRequest
0 голосов
/ 08 февраля 2019

Я использую программное обеспечение для обмена мгновенными сообщениями, и я подозреваю, что программное обеспечение извлекает много информации о моем компьютере (например, мой MAC-адрес) и, возможно, пропускает его.Я решил, что хочу проверить локальные базы данных программного обеспечения и посмотреть, что оно сохраняет локально.

Мне удалось найти, используя собственный дамп журнала программного обеспечения и Procmon, интересные БД.Тем не менее, они являются БД SQLite, которые защищены ключом.

  1. Есть ли у меня какой-нибудь способ узнать, какой будет формат и размер ключа?Это будет гекс?
  2. Как я могу эффективно продолжить свое исследование?Я посмотрел, используя procmon, и смог обнаружить, когда программное обеспечение использует БД, защищенную ключом, с момента его первого открытия.Тем не менее, я не смог обнаружить какой-либо «интересный» локальный файл, который использует программа, и мог бы намекнуть о расположении ключа - кроме нескольких используемых значений реестров Windows - но я не совсем уверен, как к этому подойти.

Извините, если у меня есть ошибки на английском, и спасибо заранее.

1 Ответ

0 голосов
/ 14 февраля 2019
  1. Есть ли у меня какой-нибудь способ узнать, какой будет формат и размер ключа?Будет ли он шестнадцатеричным?

Ключ находится в виде простого текста (как обычные пароли), а его размер (также как и пароли) определяется создателем базы данных.

Как я могу эффективно продолжить свое исследование?

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

...