Tools
October 1, 2024

Извлекаем пароли из браузеров (и не только)

Введение

Получение учетных данных является неотъемлемым этапом тестирования на проникновение. Одним из источников учетных данных для атакующего могут быть браузеры, хранящие пароли пользователей и другую чувствительную информацию. В данной статье будут рассмотрены несколько популярных инструментов по извлечению учетных данных из браузеров.

Получив сессию пользователя, первое, с чего стоит начать – это обратить внимание на специфическое программное обеспечение, в т.ч. браузеры. Методы хранения учетных данных в различных приложениях и браузерах отличаются. Важно уметь находить и изучать информацию о приложении, описание методов эксплуатации и актуальные исследования, а также иметь в своем арсенале пару-тройку инструментов.

Данная статья представлена исключительно в образовательных целях. Red Team сообщество "GISCYBERTEAM" не несёт ответственности за любые последствия ее использования третьими лицами.

Firefox Decrypt

Предположим, на этапе сбора информации с хоста вы обнаружили установленный браузер Firefox. Немного погуглив можно узнать, как получить пароли данного браузера в открытом виде. Первая же ссылка в поисковике предлагает инструмент Firefox Decrypt (ссылка для скачивания: https://github.com/unode/firefox_decrypt/tree/main).

Как следует из описания, инструмент предназначен для извлечения паролей из профилей Mozilla. Проверим его работу на хосте с Linux:

Несмотря на успешное извлечение паролей из браузера Mozilla Firefox, у данного инструмента есть недостаток: согласно описанию в репозитории, его нужно запускать непосредственно в удаленной системе, для чего потребуется установленный интерпретатор языка python3, что может быть не всегда приемлемо для хостов с Windows.

Firepwd

Рассмотрим для этих целей другой инструмент – firepwd (ссылка для скачивания: https://github.com/lclevy/firepwd).

Прочитав описание инструмента и погуглив его применение, можно найти статью «Как удаленно украсть и расшифровать пароли Firefox» (ссылка на статью: https://spy-soft.net/steal-decrypt-firefox-passwords/).

Повторим действия, описанные в статье:

  • Проверим наличие стандартного каталога C:/Users/<USER>/AppData/Roaming/Mozilla/Firefox/Profiles/ с профилями Firefox, найдем требуемые файлы key4.db и logins.json, загрузим на свою машину.
  • Переместим файлы Firefox в каталог со скриптом и запустим скрипт, как указано в статье. После дополнительной информации мы увидим учетные данные в открытом виде.

Таким образом, находя сначала информацию о браузере, затем об инструменте и способах его использования, можно получить сохраненные в браузере учетные данные.

В приведенных примерах рассматривался только браузер Mozilla Firefox, а есть и множество других. Искать для каждого специализированный инструмент может быть занятием утомительным и неблагодарным. Было бы неплохо иметь в арсенале пару «универсальных» инструментов для извлечения паролей из браузеров.

LaZagne

Первым из универсальных инструментов, о которых пойдет речь, является LaZagne. LaZagne — инструмент, предназначенный для извлечения сохраненных паролей из различных приложений в системе. Первоначально созданный для Windows, он впоследствии был расширен для поддержки Linux и MacOS.

LaZagne работает, запрашивая локальное хранилище системы и расшифровывая пароли, хранящиеся в приложениях. Он использует различные методы, такие как чтение файлов конфигурации, доступ к системной памяти и использование известных уязвимостей в приложениях для получения учетных данных.

Инструмент оснащен модулями для извлечения паролей из браузеров, баз данных, электронных почт, wi-fi сетей, а также учетных данных Windows и других сохраненных паролей (модули browsers, databases, emails, wifi, windows).

Для паролей Wi-Fi и WindowsSecrets потребуются права администратора (UACAuthentication/sudo).

LaZagne можно загрузить из официального репозитория GitHub: https://github.com/AlessandroZ/LaZagne/

Для Windows доступны автономные версии LaZagne: https://github.com/AlessandroZ/LaZagne/releases/

Инструмент прост в использовании. Чтобы вытащить пароли всех поддерживаемых приложений, просто запустите:

  • Для Windows
lazagne.exe all
  • Для Linux, MacOS
python3 laZagne.py all
Примечание. В системе MacOS без пароля пользователя очень сложно получить пароли, хранящиеся на компьютере.
Рекомендуется использовать один из вариантов:
Если вы знаете пароль пользователя, добавьте его в командную строку:
laZagne all --password SuperSecurePassword
Вы можете использовать интерактивный режим, который будет предлагать пользователю диалоговое окно до тех пор, пока пароль не будет правильным:
laZagne all -i
  • Для систем Windows и Linux инструмент отработал отлично:

А вот с MacOS нас постигла неудача:

HackBrowserData

Самое время рассказать о 2-м инструменте HackBrowserData — это инструмент для расшифровки и экспорта данных браузера (пароли, история, куки, закладки, кредитные карты, история загрузок, localStorage и расширения). Он поддерживает самые популярные браузеры и работает на Windows, MacOS и Linux. Для извлечения браузерных данных инструменту не требуются права администратора.

Для каждой поддерживаемой операционной системы имеется свой автономный файл, который можно скачать из репозитория: https://github.com/moonD4rk/HackBrowserData?tab=readme-ov-file

Как и LaZagne, HackBrowserData прост в эксплуатации: достаточно загрузить и запустить инструмент в сессии пользователя:

Если не были установлены дополнительные параметры (о которых можно узнать, указав флаг -h) в результаты работы будет создан каталог results, содержащий все собранные данные со всех доступных браузеров.

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

Протестируем HackBrowserData на хосте с MacOS.

Для успешного запуска инструмента пришлось немного повозиться: залезть в настройки, разрешить запускать утилиту и в процессе ее работы пару раз ввести пароль пользователя. В результате всё-таки удалось получить всю информацию из браузеров:

Заключение

В данной статье мы рассказали об инструментах сбора паролей и другой чувствительной информации из браузеров. Мы надеемся, что эта статья поможет вам оптимизировать вашу работу.