Tools
October 1

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

Введение

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

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

Данная статья представлена исключительно в образовательных целях. 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.

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

Заключение

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