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

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

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

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

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

Категории

Все категории
Loading categories
PhantomFS — Доставка полезных нагрузок только разрешённым процессам с использованием Windows projected file system | Kitploit
Инструменты/GitHubGitHub/s1lkys/phantomfs
Инструменты шифрования/дешифрованияГенерация полезной нагрузкиRed TeamingРазработка Полезной Нагрузки
GitHubs1lkys/phantomfs

PhantomFS

Доставка полезных нагрузок только разрешённым процессам с использованием Windows projected file system

Репозиторий
253117 месяцев назадПроверено Kitploit

Популярное

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

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

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

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

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

PhantomFS

Провайдер ProjFS. Проецирует файлы, содержимое которых зависит от того, какой процесс их читает. Полезная нагрузка хранится на диске в зашифрованном виде (AES-256-CBC), расшифровывается только в памяти во время выполнения. Это не должно обходить EDR, так как полезная нагрузка будет записана на диск, когда разрешённые процессы попытаются её прочитать. Всё остальное получает отказ в доступе.
Это может разозлить некоторых аналитиков, так как их инструменты не прочитают файл или просто загрузят приманку. Но вы легко увидите, что это ProjFS, использующий точку повторной обработки.

Рабочий процесс

1) Generate key:     PhantomFS.exe -keygen
2) Encrypt payload:  PhantomFS.exe -encrypt mimikatz.exe -key <key> -out mimikatz.enc
3) Serve:            PhantomFS.exe C:\Staging -file mimikatz.enc -key <key> -decoy C:\Windows\System32\calc.exe

Пример:
PhantomFS.exe C:\Staging -file mimikatz.enc -key 7ed5a44412447be587b2ca2e4eacb17d41c869360663ae0fea1d0caca159483c -decoy C:\Windows\System32\calc.exe

Результат: в файловой системе появляется C:\Staging\calc.exe.

  • cmd.exe при чтении получает расшифрованные байты mimikatz
  • Всё остальное получает настоящие байты calc.exe с добавлением нулей
  • Попытки удалить/переименовать из неразрешённых процессов блокируются

Сборка

VS2022, откройте PhantomFS.sln, соберите конфигурацию x64 Release. Требуется Windows SDK (заголовочные файлы и библиотеки ProjFS).

Предварительные требования

Enable-WindowsOptionalFeature -Online -FeatureName Client-ProjFS -NoRestart

Провайдер работает со средним уровнем целостности, права администратора не требуются (для активации функции ProjFS нужны права администратора).

Справочник по CLI

Keygen

PhantomFS.exe -keygen

Encrypt

PhantomFS.exe -encrypt <input> -key <64_hex_chars> -out <output.enc>

Формат: [16 байт случайного IV][AES-256-CBC шифротекст с дополнением PKCS7]

Serve

PhantomFS.exe <root_dir> -file <payload.enc> -key <hex> -decoy <benign_file>
    [-name <virtual_filename>]
    [-allow <process_substring>]  (повторяемый, по умолчанию: powershell.exe, pwsh.exe, cmd.exe)
    [-deny-read <process_substring>]  (повторяемый)
    [-quiet]

Как это работает

Обратные вызовы ProjFS получают TriggeringProcessImageFileName при каждом обращении к файлу:

  • GetFileDataCallback: проверяет процесс по правилам, отдаёт байты полезной нагрузки или приманки
  • NotificationCallback PRE_DELETE: блокирует удаление неразрешёнными процессами
  • FILE_HANDLE_CLOSED: вызывает PrjDeleteFile, чтобы принудительно выполнить повторное заполнение

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

Поверхность обнаружения

  • Вызов API PrjStartVirtualizing
  • Точки повторной обработки IO_REPARSE_TAG_PROJFS
  • Включённая функция Windows ProjFS
  • Минифильтр PrjFlt на высоте 189800 (fltmc.exe)
  • Поставщик ETW Microsoft-Windows-ProjFS
  • Частые переходы состояния файла (гидратированный -> заполнитель)

Вдохновение:

  • https://www.huntress.com/blog/windows-projected-file-system-mechanics
Скачать инструмент