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

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

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

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

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

Категории

Все категории
Loading categories
Aladdin — Генерирует полезные нагрузки для начального доступа, используя AddInProcess.exe через десериализацию .NET, с поддержкой шаблонов HTA, VBA, JS и CHM для выполнения кода в памяти. | Kitploit
Инструменты/GitHubGitHub/nettitude/aladdin
Генерация полезной нагрузкиЭксплуатацияRed TeamingРазработка Полезной Нагрузки
GitHubnettitude/aladdin

Aladdin

Генерирует полезные нагрузки для начального доступа, используя AddInProcess.exe через десериализацию .NET, с поддержкой шаблонов HTA, VBA, JS и CHM для выполнения кода в памяти.

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

Популярное

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

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

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

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

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

Aladdin

root@kitploit:~
           .-.
          [.-''-.,
          |  //`~\)
          (<| 0\0|>_
          ";\  _"/ \\_ _,
         __\|'._/_  \ '='-,
        /\ \    || )_///_\>>
       (  '._ T |\ | _/),-'
        '.   '._.-' /'/ |
        | '._   _.'`-.._/
        ,\ / '-' |/
        [_/\-----j
   _.--.__[_.--'_\__
  /         `--'    '---._
 /  '---.  -'. .'  _.--   '.
 \_      '--.___ _;.-o     /
   '.__ ___/______.__8----'
     c-'----'
  Lefty @lefterispan - Nettitude Red Team - 2022 / 2023 

О программе

Aladdin — это техника генерации полезной нагрузки, основанная на работе Джеймса Форшоу (@tiraniddo), которая позволяет десериализовать .NET-нагрузку и выполнить её в памяти. Изначальный вектор был описан на https://www.tiraniddo.dev/2017/07/dg-on-windows-10-s-executing-arbitrary.html.

Запуск процесса AddInProcess.exe с аргументами /guid:32a91b0f-30cd-4c75-be79-ccbd6345de99 и /pid: заставляет процесс открыть именованный канал по адресу \\.\pipe\32a91b0f-30cd-4c75-be79-ccbd6345de99 и ожидать объект .NET Remoting. Если сгенерировать нагрузку с соответствующими байтами заголовка, необходимыми для взаимодействия с .NET-сервером удаленного взаимодействия, можно вызвать класс ActivitySurrogateSelector из System.Workflow.ComponentModel и получить выполнение кода.

Изначально Джеймс Форшоу опубликовал PoC по адресу https://github.com/tyranid/DeviceGuardBypasses/tree/master/CreateAddInIpcData. Однако этот PoC не сработает на современных версиях Windows, так как Microsoft исправила уязвимый компонент System.Workflow.ComponentModel (https://github.com/microsoft/dotnet-framework-early-access/blob/master/release-notes/NET48/dotnet-48-changes.md).

Тем не менее, Ник Ландерс (@monoxgas) нашел способ обойти проверку, введенную Microsoft, и написал подробную статью на https://www.netspi.com/blog/technical/adversary-simulation/re-animating-activitysurrogateselector/. Описание обхода находится по адресу https://github.com/pwntester/ysoserial.net/pull/41.

Aladdin — это инструмент генерации нагрузок, который, используя конкретный обходной путь, а также необходимые заголовочные байты протокола .NET Remoting, способен создавать нагрузки для первоначального доступа, злоупотребляющие процессом AddInProcess, как описано в оригинальной документации.

Предоставленные шаблоны:

root@kitploit:~
* HTA
* VBA
* JS
* CHM

Заметки

Для успешной атаки сборка .NET должна содержать один открытый класс с пустым конструктором, который будет служить точкой входа при десериализации. Пример сборки включен в проект.

root@kitploit:~
public class EntryPoint {
    public EntryPoint() {
        MessageBox.Show("Hello");
    }
}

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

root@kitploit:~
Usage:
  -w, --scriptType=VALUE     Set to js / hta / vba / chm.

  -o, --output=VALUE         The generated output, e.g: -o
                               C:\Users\Nettitude\Desktop\payload

  -a, --assembly=VALUE       Provided Assembly DLL, e.g: -a
                               C:\Users\Nettitude\Desktop\popcalc.dll

  -h, --help                 Help

Операционная безопасность

  • Бинарный файл .NET, предоставленный пользователем, будет выполняться в процессе AddInProcess.exe, который запускается из нагрузки HTA/JS. В настоящее время запуск процессов осуществляется с использованием COM-объекта {9BA05972-F6A8-11CF-A442-00A0C90A8F39} (https://dl.packetstormsecurity.net/papers/general/abusing-objects.pdf), что приводит к запуску процесса как дочернего процесса Explorer.exe.

  • GUID, передаваемый в параметрах процесса AddInProcess.exe, может задаваться пользователем. В текущей реализации GUID жестко прописан в шаблоне и коде.

  • CHM выполняет JScript через XSLT-преобразование.

Рекомендации по защите

  • Addinprocess.exe всегда запускается с параметрами /guid и /pid. Проанализируйте свою среду на предмет легитимного использования этого процесса и отслеживайте любые аномалии.

Полезные ссылки

root@kitploit:~
* https://www.tiraniddo.dev/2017/07/dg-on-windows-10-s-executing-arbitrary.html
* https://www.netspi.com/blog/technical/adversary-simulation/re-animating-activitysurrogateselector/

Readme / Благодарности

Код основан на следующих репозиториях:

root@kitploit:~
* https://github.com/tyranid/DeviceGuardBypasses/tree/master/CreateAddInIpcData
* https://github.com/pwntester/ysoserial.net

Отдельное спасибо:

  • @m0rv4i за помощь с нюансами C#
  • @ace0fspad3s за устранение неполадок
  • @ Nettitude RT за то, что вы крутые
Скачать инструмент