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

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

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

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

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

Категории

Все категории
Loading categories
XenoboxX — Набор инструментов для аппаратной песочницы | Kitploit
Инструменты/GitHubGitHub/cecio/xenoboxx
Управление индикаторами компрометации (IOC)Динамический анализ (песочница)Криминалистика памятиШелл-кодФорензикаАнализ вредоносных программАппаратная Безопасность
GitHubcecio/xenoboxx

XenoboxX

Набор инструментов для аппаратной песочницы

Репозиторий
6482 лет назадЕщё не проверено

Популярное

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

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

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

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

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

логотип, ландшафт, тёмный текст, прозрачный фон

Набор инструментов для аппаратной песочницы

Вредоносное ПО часто использует методы анти-ВМ, которые могут различаться по сложности обнаружения и противодействия. Хотя интеграция мер анти-обнаружения в наших лабораториях является часто используемым вариантом, нам также следует рассмотреть использование реальной аппаратной песочницы, даже если это звучит странно. Используя потрясающий проект PCILeech и аппаратный доступ DMA, XenoboxX предоставляет набор инструментов для задач анализа, таких как дамп динамически выделенной памяти и поиск IoC. Эти инструменты позволяют нам внедрять код на уровне ядра через DMA, что делает обнаружение значительно более сложным и даёт новый взгляд на анализ.

XenoboxX в настоящее время ориентирован на 64-битную Windows, но в будущем может быть расширен и на другие платформы.

Инструмент был представлен на DEFCON 32 Demo Labs: здесь

Что вам нужно

Очевидно, мы говорим о физических средах, поэтому:

  • целевой ПК с интерфейсом PCI. Поскольку вы собираетесь развернуть на нём вредоносное ПО, вам, вероятно, понадобится тестовая система с возможностью отката к чистому состоянию. Вы можете использовать предпочтительный способ: программное обеспечение kiosk, утилиты отката или систему образов с клонирующим ПО (или даже аппаратное обеспечение).
  • DMA Board совместимая с PCILeech (см. домашнюю страницу)
  • PCILeech, установленный на хост ПК с доступом к DMA Board (обычно через USB)

Быстрая настройка

  • установите DMA Board на целевой ПК. Подключите плату к хост ПК

  • установите PCILeech на ваш хост ПК: если вы не собираетесь разрабатывать или вносить изменения, вы можете просто установить бинарные файлы (думаю, это наиболее распространённый вариант), доступные на странице релизов

  • установите XenoboxX на ваш хост ПК: как и в предыдущем пункте, вам могут понадобиться только предварительно скомпилированные бинарные файлы (в папке pcileech)

  • внедрите модуль PCILeech:

    root@kitploit:~
    ./pcileech kmdload -kmd WIN10_X64_3
    

    это вернёт адрес памяти, который вы будете использовать для запуска шеллкодов (напр. 0x7ffff000)

  • запустите шеллкоды XenoboxX:

    root@kitploit:~
    ./pcileech wx64_dumpalloc -0 0xbac -s "\\??\C:\temp\test" -kmd 0x7ffff000
    

Дополнительная информация

В настоящее время XenoboxX содержит 3 wx64 шеллкода:

  • wx64_dumpalloc: прикрепляется к определённому PID и дампит все выделения памяти, выполненные процессом. Если флаги защиты существующей памяти изменяются, область дампится снова (иногда вредоносное ПО меняет защиты, чтобы избежать проверок).
  • wx64_memgrep: ищет заданные пользователем строки в памяти, выделенной PID. Может быть прикреплён к процессу на определённое время.
  • wx64_strings: ищет все строки в памяти, выделенной PID. Может быть прикреплён к процессу на определённое время.

Примечание: в качестве экспериментального подхода Xenobox в настоящее время вообще избегает перехвата (hooking), и все обнаружения выполняются через опрос (polling). Очевидно, это имеет некоторые недостатки, но это намеренный выбор дизайна на данный момент, чтобы быть максимально скрытным.

wx64_dumpalloc

Пример:

root@kitploit:~
./pcileech wx64_dumpalloc -0 0xbac -s "\\??\C:\temp\test" -kmd 0x7ffff000

Параметры

  • -0 PID для присоединения в шестнадцатеричном формате (обязательно)
  • -1 время мониторинга процесса. Значение по умолчанию: 0x20
  • -s выходная папка, куда будут сохранены дампы памяти и лог

wx64_memgrep

Пример:

root@kitploit:~
./pcileech wx64_memgrep -0 0x564 -1 0x80 -s "Hello, 123" -2 1 -kmd 0x7ffff000

Параметры

  • -0 PID для присоединения в шестнадцатеричном формате (обязательно)
  • -1 время мониторинга процесса. Значение по умолчанию: 0x20
  • -2 поиск строки ASCII (0x0) или WIDE (0x1). Значение по умолчанию: 0x0
  • -3 поиск с учётом регистра (0x1) или без (0x0). Регистрозависимый поиск быстрее. Значение по умолчанию: 0x0
  • -4 поиск только на страницах памяти с возможностью записи (0x0) или всех (0x01). Значение по умолчанию: 0x0
  • -s строка для поиска (в двойных кавычках)

wx64_strings

Пример:

root@kitploit:~
./pcileech wx64_strings -0 0x19e0 -1 0x100 -3 0x15 -kmd 0x7ffff000

Параметры

  • -0 PID для присоединения в шестнадцатеричном формате (обязательно)
  • -1 время мониторинга процесса. Значение по умолчанию: 0x20
  • -2 поиск строки ASCII (0x0) или WIDE (0x1). Значение по умолчанию: 0x0
  • -3 минимальная длина строки. Значение по умолчанию: 0xA
  • -4 поиск только на страницах памяти с возможностью записи (0x0) или всех (0x01). Значение по умолчанию: 0x0

Разработка

Если вы хотите изменить или пересобрать скрипты XenoboxX, помните, что вам понадобятся некоторые файлы из репозитория PCILeech, а именно:

  • wx64_common.h
  • wx64_common.c
  • shellcode64.exe

В комментариях каждого .c файла вы найдёте инструкции по компиляции. Например:

root@kitploit:~
cl.exe /O1 /Os /Oy /FD /MT /GS- /J /GR- /FAcs /W4 /Zl /c /TC /kernel wx64_common.c

cl.exe /O1 /Os /Oy /FD /MT /GS- /J /GR- /FAcs /W4 /Zl /c /TC /kernel wx64_dumpalloc.c

ml64.exe wx64_common_a.asm /Fewx64_dumpalloc.exe /link /NODEFAULTLIB /RELEASE /MACHINE:X64 /entry:main wx64_dumpalloc.obj wx64_common.obj

shellcode64.exe -o wx64_dumpalloc.exe "DUMP ALLOCATED MEMORY                                \n===============================================================\nREQUIRED OPTIONS:                                              \n  -0   : Process PID to open. Example '-0 0x0fe0'.        \nOPTIONAL OPTIONS:                                              \n  -1   : Process monitoring timeout Default: 0x20. Example:  '-1 0x100'. \n  -s   : Specify output folder/file for dumps. Example: \"\\??\C:\temp\test\"\n===== RESULT OF DUMPALLOC OPERATION ======================%s\nNTSTATUS  : 0x%08X                                             \n===============================================================\n"

Заключительные замечания

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

Участие

Вклад и предложения приветствуются. Пожалуйста, откройте issue, если у вас есть вопросы, или pull request, если хотите внести свой вклад. Спасибо!

Скачать инструмент