Форензика мессенджеров. WhatsApp

Форензика мессенджеров. WhatsApp

@webware

t.me/webware

Приветствую гостей и постояльцев Codeby.net!

Совсем недавно, коллега @Sunnych вдохновил на создание такой статьи.

Она послужит неплохим дополнением, этому материалу, и возможно позже выльется в отдельную, категорию «Форензика мессенджеров» но об этом чуть позже, вернемся к основной теме.

Я буду использовать инструмент Whapa на операционной системе Kali Rolling 2018.3.

Whapa - это набор инструментов для анализа приложения WhatsApp для Android. Все они написаны на Python 2.X.

Whapa - состоит из трех приложений:

  • Whapa (Whatsapp Parser)
  • Whademe (Whatsapp Decrypter and Merger)
  • Whagodri (Whataspp Google Drive Extractor)

Whapa - является парсером базы данных Android WhatsApp, который автоматизирует процесс и представляет данные, обрабатываемые базой данных Sqlite, таким образом, чтобы это было понятно аналитику.


Программное обеспечение разделено на четыре режима:

  • Message Mode: анализирует все сообщения в базе данных, применяя различные фильтры. Он извлекает экскизы, если они доступны. «./Media» - это каталог, в котором пишутся эскизы. Строки сортируются по метке времени, а не по id.
  • Decryption Mode: расшифровывает базы данных crypto12, если в наличии есть ключ.
  • Info Mode: отображает различную информацию о статусах, списке отправлений и группах.
  • Extract Mode: извлекает все эскизы из базы данных

Если вы скопируете базу данных «wa.db» в тот же каталог, что и скрипт, номер телефона будет отображаться вместе с именем.


Установка:

git clone https://github.com/B16f00t/whapa.git


pip install -r ./doc/requirements.txt


После успешной установки посмотрим поддерживаемые опции запуска приложения:

Теперь, переходим к самому интересному, допустим, к нам в руки попал телефон злодея, он на Android OS, и мы хотим почитать его переписку WhatsApp.

Для начала нам необходимо получить root-права на устройстве, здесь я не буду описывать, как это сделать, но это нужно делать аккуратно.

Первое, что нужно сделать, это извлечь из устройства файл базы данных с расширением - .crypt12.

Для этого, перейдите в папку на карте памяти вашего устройства, в которой WhatsApp сохраняет резервные копии чатов пользователя.

/sdcard/WhatsApp/Databases


Если перейти в эту папку вы увидите в ней один файл с названием msgstore.db.crypt12, и ещё несколько файлов с названиями, как msgstore-20**-**-**.1.db.crypt12.

  • msgstore.db.crypt12 – это файл с последней резервной копией чатов WhatsApp. Именно из данного файла происходит автоматическое восстановление чатов и контактов после переустановки WhatsApp.
  • msgstore-20**-**-**.1.db.crypt12 – это резервная копия чатов приложения на конкретную дату, которая указана в названии файла. В нашем случае – это резервная копия чатов на ** - ** 20** г.

Поэтому, если необходимо восстановить чаты по состоянию на определённую дату, найдите файл, в названии которого указана эта дата и переименуйте его в msgstore.db.crypt12.

Затем, из системной папки в корневой директории Android, необходимо извлечь файл key, он пригодится для формирования расшифрованной базы данных, с последующим анализом.

Итак, поле того, как оба файла извлечены, копируем их в папку с Whapa:

Генерируем базу данных, для последующего анализа на основе key:

python whapa.py msgstore.db.crypt12 -k key


Начинаем работать с файлом msgstore.db, смотрим историю сообщений:

python whapa.py –m


Результат меня устроил, но утилита содержит множество опций, с помощью которых вы можете фильтровать вывод, как Вам удобно, так как whapa - изначально парсер.

Формирование отчетов:

Для создания отчетов первое, что нам нужно сделать, это отредактировать файл «./cfg/settings.cfg».


Например:

[report]
logo =./cfg/logo.png
company = Foo S.L
record = 1337
unit = Research group
examiner = Vander
notes = Chat maintained between the murderer and the murderer


Здесь мы должны поставить логотип нашей компании, название компании или подразделения, а также присвоенный регистрационный номер, единицу или группу, в которой мы принадлежим, кто является аудитором, и мы также можем указать примечания к отчету.

Чтобы сгенерировать отчет, мы должны указать флаг «-r» или «-r EN», если мы хотим, чтобы отчет на английском языке, а также «-r ES», если мы хотим, чтобы отчет на испанском языке.

Пример использования:

python -m -r -u 34XXX230775 (Создает отчет о разговоре с пользователем 34XXX230775)


Обратите внимание, что для создания отчета, который имеет смысл для читателя, вы всегда должны указывать пользователя с флагом «-u» или группой с флагом «-g». (Чтобы узнать номер группы, которую мы хотим использовать в нашем отчете, мы можем сначала использовать команду «python whapa.py -i», а затем скопировать и вставить ее в команду «python -m -r -g PASTE-HERE-GROUPNUMBER @ g.us ") или флаг« -a », который создает отчет обо всех разговорах (медленный вариант).

Если вы скопируете базу данных «wa.db» в тот же каталог, что и скрипт, номер телефона будет отображаться вместе с именем.

Для отчета, содержащего изображения, видео, документы вы должны скопировать папку «WhatsApp / Media» вашего телефона в каталог whapa.

Если вы хотите распечатать документ или создать отчет в формате pdf, я рекомендую в опции печати -> масштабировать представление <= 70%, иначе отчет будет отображаться слишком большим.


С информацией о работе модулей Whademe и Whagodri, вы можете ознакомиться на странице разработчика на Github.


На этом можно закончить, спасибо за внимание.

Источник codeby.net

Report Page