Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
ThievingFox — Инструментарий для сбора учетных данных после эксплуатации, который внедряется в менеджеры паролей и утилиты Windows для захвата учетных данных с помощью проксирования DLL, перехвата COM и внедрения AppDomainManager. | Kitploit
Инструменты/GitHubGitHub/slowerzs/thievingfox
Латеральное перемещениеПост-эксплуатацияТестирование на ПроникновениеRed Teaming
GitHubslowerzs/thievingfox

ThievingFox

Инструментарий для сбора учетных данных после эксплуатации, который внедряется в менеджеры паролей и утилиты Windows для захвата учетных данных с помощью проксирования DLL, перехвата COM и внедрения AppDomainManager.

Репозиторий
5706612 лет назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

ThievingFox

ThievingFox — это набор инструментов для пост-эксплуатации, предназначенных для сбора учётных данных из различных менеджеров паролей и утилит Windows. Каждый модуль использует определённый метод внедрения в целевой процесс, а затем перехватывает внутренние функции для сбора учётных данных.

Сопроводительную статью в блоге можно найти здесь


  • Установка
  • Цели
  • Использование

Установка

Linux

Необходимо установить Rustup, следуйте инструкциям здесь : https://rustup.rs/

Пакет mingw-w64 должен быть установлен. На Debian это можно сделать с помощью :

root@kitploit:~
apt install mingw-w64

Для Rust необходимо установить обе цели Windows x86 и x86_64:

root@kitploit:~
rustup target add x86_64-pc-windows-gnu
rustup target add i686-pc-windows-gnu

Mono и Nuget также должны быть установлены; инструкции доступны здесь : https://www.mono-project.com/download/stable/#download-lin

После добавления репозиториев Mono Nuget можно установить с помощью apt :

root@kitploit:~
apt install nuget

Наконец, необходимо установить зависимости Python :

root@kitploit:~
pip install -r client/requirements.txt

ThievingFox работает с python >= 3.11.

Windows

Необходимо установить Rustup, следуйте инструкциям здесь : https://rustup.rs/

Для Rust необходимо установить обе цели Windows x86 и x86_64:

root@kitploit:~
rustup target add x86_64-pc-windows-msvc
rustup target add i686-pc-windows-msvc

Также должна быть установлена среда разработки .NET. В Visual Studio перейдите в Tools > Get Tools And Features > Install ".NET desktop development"

Наконец, необходимо установить зависимости Python :

root@kitploit:~
pip install -r client/requirements.txt

ThievingFox работает с python >= 3.11

ПРИМЕЧАНИЕ : На хосте Windows для использования модуля KeePass msbuild должен быть доступен в PATH. Это можно сделать, запустив клиент из Visual Studio Developper Powershell (Tools > Command Line > Developper Powershell)

Цели

Все модули были протестированы на следующих версиях Windows :

Версия Windows
Windows Server 2022
Windows Server 2019
Windows Server 2016
Windows Server 2012R2
Windows 10
Windows 11

[!ПРЕДУПРЕЖДЕНИЕ] Модули не тестировались на других версиях и, как ожидается, не будут работать.

Использование

[!ПРЕДУПРЕЖДЕНИЕ] Хотя я старался, чтобы эти инструменты не влияли на стабильность целевых приложений, встроенное перехватывание (inline hooking) и внедрение библиотек небезопасны и могут привести к сбою или нестабильной работе приложения. Если это произойдёт, использование модуля cleanup на цели должно быть достаточным, чтобы при следующем запуске приложения внедрение/перехватывание не выполнялось.

ThievingFox содержит 3 основных модуля : poison, cleanup и collect.

Poison

Для каждого приложения, указанного в параметрах командной строки, модуль poison извлекает оригинальную библиотеку, которая будет захвачена (для COM Hijacking и DLL Proxying), компилирует библиотеку, соответствующую свойствам оригинальной DLL, загружает её на сервер и при необходимости изменяет реестр для выполнения COM Hijacking.

Для ускорения процесса компиляции всех библиотек поддерживается кеш в client/cache/.

--mstsc, --rdcman и --mobaxterm имеют специальные опции, соответственно --mstsc-poison-hkcr, --rdcman-poison-hkcr и --mobaxterm-poison-hkcr. Если указана одна из этих опций, COM Hijacking заменяет ключ реестра в кусте HKCR, что означает, что будут затронуты все пользователи. По умолчанию затрагиваются только все пользователи, вошедшие в систему в данный момент (все пользователи, имеющие куст HKCU).

--keepass и --keepassxc имеют специальные опции --keepass-path, --keepass-share, а также --keepassxc-path, --keepassxc-share, чтобы указать, где установлены эти приложения, если это не стандартный путь установки. Для других приложений это не требуется, поскольку используется COM Hijacking.

Модуль KeePass требует установки Visual C++ Redistributable на целевой системе.

Можно указать несколько приложений одновременно или использовать флаг --all для атаки на все приложения.

[!ВАЖНО] Не забудьте очистить кеш, если вы когда-либо измените параметр --tempdir, так как имя каталога встраивается внутрь нативных DLL.

root@kitploit:~
$ python3 client/ThievingFox.py poison -h
usage: ThievingFox.py poison [-h] [-hashes HASHES] [-aesKey AESKEY] [-k] [-dc-ip DC_IP] [-no-pass] [--tempdir TEMPDIR] [--keepass] [--keepass-path KEEPASS_PATH]
                             [--keepass-share KEEPASS_SHARE] [--keepassxc] [--keepassxc-path KEEPASSXC_PATH] [--keepassxc-share KEEPASSXC_SHARE] [--mstsc] [--mstsc-poison-hkcr]
                             [--consent] [--logonui] [--rdcman] [--rdcman-poison-hkcr] [--mobaxterm] [--mobaxterm-poison-hkcr] [--all]
                             target

positional arguments:
  target                Target machine or range [domain/]username[:password]@<IP or FQDN>[/CIDR]

options:
  -h, --help            show this help message and exit
  -hashes HASHES, --hashes HASHES
                        LM:NT hash
  -aesKey AESKEY, --aesKey AESKEY
                        AES key to use for Kerberos Authentication
  -k                    Use kerberos authentication. For LogonUI, mstsc and consent modules, an anonymous NTLM authentication is performed, to retrieve the OS version.
  -dc-ip DC_IP, --dc-ip DC_IP
                        IP Address of the domain controller
  -no-pass, --no-pass   Do not prompt for password
  --tempdir TEMPDIR     The name of the temporary directory to use for DLLs and output (Default: ThievingFox)
  --keepass             Try to poison KeePass.exe
  --keepass-path KEEPASS_PATH
                        The path where KeePass is installed, without the share name (Default: /Program Files/KeePass Password Safe 2/)
  --keepass-share KEEPASS_SHARE
                        The share on which KeePass is installed (Default: c$)
  --keepassxc           Try to poison KeePassXC.exe
  --keepassxc-path KEEPASSXC_PATH
                        The path where KeePassXC is installed, without the share name (Default: /Program Files/KeePassXC/)
  --keepassxc-share KEEPASSXC_SHARE
                        The share on which KeePassXC is installed (Default: c$)
  --mstsc               Try to poison mstsc.exe
  --mstsc-poison-hkcr   Instead of poisonning all currently logged in users' HKCU hives, poison the HKCR hive for mstsc, which will also work for user that are currently not
                        logged in (Default: False)
  --consent             Try to poison Consent.exe
  --logonui             Try to poison LogonUI.exe
  --rdcman              Try to poison RDCMan.exe
  --rdcman-poison-hkcr  Instead of poisonning all currently logged in users' HKCU hives, poison the HKCR hive for RDCMan, which will also work for user that are currently not
                        logged in (Default: False)
  --mobaxterm           Try to poison MobaXTerm.exe
  --mobaxterm-poison-hkcr
                        Instead of poisonning all currently logged in users' HKCU hives, poison the HKCR hive for MobaXTerm, which will also work for user that are currently not
                        logged in (Default: False)
  --all                 Try to poison all applications

Cleanup

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

Для приложений, поддерживающих отравление как кустов HKCU, так и HKCR, очищаются оба.

Можно указать несколько приложений одновременно или использовать флаг --all для очистки всех приложений.

Этот модуль не очищает извлечённые учётные данные на удалённом хосте.

[!ВАЖНО] Если целевое приложение используется во время выполнения модуля cleanup, DLL, размещённые на цели, не могут быть удалены. Тем не менее, модуль cleanup откатит конфигурацию, включающую внедрение, что должно гарантировать, что при следующем запуске приложения внедрение выполняться не будет. Файлы, которые не могут быть удалены ThievingFox, регистрируются.

root@kitploit:~
$ python3 client/ThievingFox.py cleanup -h
usage: ThievingFox.py cleanup [-h] [-hashes HASHES] [-aesKey AESKEY] [-k] [-dc-ip DC_IP] [-no-pass] [--tempdir TEMPDIR] [--keepass] [--keepass-share KEEPASS_SHARE]
                              [--keepass-path KEEPASS_PATH] [--keepassxc] [--keepassxc-path KEEPASSXC_PATH] [--keepassxc-share KEEPASSXC_SHARE] [--mstsc] [--consent] [--logonui]
                              [--rdcman] [--mobaxterm] [--all]
                              target

positional arguments:
  target                Target machine or range [domain/]username[:password]@<IP or FQDN>[/CIDR]

options:
  -h, --help            show this help message and exit
  -hashes HASHES, --hashes HASHES
                        LM:NT hash
  -aesKey AESKEY, --aesKey AESKEY
                        AES key to use for Kerberos Authentication
  -k                    Use kerberos authentication. For LogonUI, mstsc and consent modules, an anonymous NTLM authentication is performed, to retrieve the OS version.
  -dc-ip DC_IP, --dc-ip DC_IP
                        IP Address of the domain controller
  -no-pass, --no-pass   Do not prompt for password
  --tempdir TEMPDIR     The name of the temporary directory to use for DLLs and output (Default: ThievingFox)
  --keepass             Try to cleanup all poisonning artifacts related to KeePass.exe
  --keepass-share KEEPASS_SHARE
                        The share on which KeePass is installed (Default: c$)
  --keepass-path KEEPASS_PATH
                        The path where KeePass is installed, without the share name (Default: /Program Files/KeePass Password Safe 2/)
  --keepassxc           Try to cleanup all poisonning artifacts related to KeePassXC.exe
  --keepassxc-path KEEPASSXC_PATH
                        The path where KeePassXC is installed, without the share name (Default: /Program Files/KeePassXC/)
  --keepassxc-share KEEPASSXC_SHARE
                        The share on which KeePassXC is installed (Default: c$)
  --mstsc               Try to cleanup all poisonning artifacts related to mstsc.exe
  --consent             Try to cleanup all poisonning artifacts related to Consent.exe
  --logonui             Try to cleanup all poisonning artifacts related to LogonUI.exe
  --rdcman              Try to cleanup all poisonning artifacts related to RDCMan.exe
  --mobaxterm           Try to cleanup all poisonning artifacts related to MobaXTerm.exe
  --all                 Try to cleanup all poisonning artifacts related to all applications

Collect

Для каждого приложения, указанного в параметрах командной строки, модуль collect извлекает выходные файлы на удалённом хосте, хранящиеся в C:\Windows\Temp\<tempdir>, соответствующие приложению, и расшифровывает их. Файлы удаляются с удалённого хоста, а полученные данные сохраняются в client/ouput/.

Можно указать несколько приложений одновременно или использовать флаг --all для сбора журналов со всех приложений.

root@kitploit:~
$ python3 client/ThievingFox.py collect -h
usage: ThievingFox.py collect [-h] [-hashes HASHES] [-aesKey AESKEY] [-k] [-dc-ip DC_IP] [-no-pass] [--tempdir TEMPDIR] [--keepass] [--keepassxc] [--mstsc] [--consent]
                              [--logonui] [--rdcman] [--mobaxterm] [--all]
                              target

positional arguments:
  target                Target machine or range [domain/]username[:password]@<IP or FQDN>[/CIDR]

options:
  -h, --help            show this help message and exit
  -hashes HASHES, --hashes HASHES
                        LM:NT hash
  -aesKey AESKEY, --aesKey AESKEY
                        AES key to use for Kerberos Authentication
  -k                    Use kerberos authentication. For LogonUI, mstsc and consent modules, an anonymous NTLM authentication is performed, to retrieve the OS version.
  -dc-ip DC_IP, --dc-ip DC_IP
                        IP Address of the domain controller
  -no-pass, --no-pass   Do not prompt for password
  --tempdir TEMPDIR     The name of the temporary directory to use for DLLs and output (Default: ThievingFox)
  --keepass             Collect KeePass.exe logs
  --keepassxc           Collect KeePassXC.exe logs
  --mstsc               Collect mstsc.exe logs
  --consent             Collect Consent.exe logs
  --logonui             Collect LogonUI.exe logs
  --rdcman              Collect RDCMan.exe logs
  --mobaxterm           Collect MobaXTerm.exe logs
  --all                 Collect logs from all applications
Скачать инструмент
ПриложениеМетод внедрения
KeePass.exeAppDomainManager Injection
KeePassXC.exeDLL Proxying
LogonUI.exe (Экран входа в Windows)COM Hijacking
consent.exe (Всплывающее окно UAC в Windows)COM Hijacking
mstsc.exe (Стандартный RDP-клиент Windows)COM Hijacking
RDCMan.exe (RDP-клиент Sysinternals)COM Hijacking
MobaXTerm.exe (Сторонний RDP-клиент)COM Hijacking