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

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

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

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

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

Категории

Все категории
Loading categories
demiguise — Инструмент шифрования HTA для RedTeams | Kitploit
Инструменты/GitHubGitHub/nccgroup/demiguise
Инструменты фишингаГенерация полезной нагрузкиОбход IDS/IPSЭксплуатация веб-приложенийRed Teaming
GitHubnccgroup/demiguise

demiguise

Инструмент шифрования HTA для RedTeams

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

Популярное

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

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

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

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

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

Demiguise - Инструмент для шифрования HTA

Выпущен как open source компанией NCC Group Plc - http://www.nccgroup.trust/

Разработан Richard Warren, richard [dot] warren [at] nccgroup [dot] trust

http://www.github.com/nccgroup/demiguise

Распространяется под лицензией AGPL, см. LICENSE для дополнительной информации

Что это делает?

Цель этого проекта — генерировать .html файлы, которые содержат зашифрованный HTA файл. Идея в том, что когда ваша цель посещает страницу, ключ извлекается и HTA динамически расшифровывается в браузере и передаётся непосредственно пользователю. Это метод обхода проверок содержимого / типа файла, реализованных некоторыми средствами безопасности. Этот инструмент не предназначен для создания крутого HTA-контента. Существует множество других инструментов/техник, которые могут вам в этом помочь. Что он может вам дать — это возможность изначально доставить ваш HTA в среду и (если вы используете привязку к окружению) избежать его песочницы.

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

Это достигается шифрованием HTA-файла с помощью RC4 и последующим использованием navigator.msSaveBlob для «сохранения» файла во время выполнения — вместо извлечения HTA напрямую с сервера. Это означает, что ни в один момент нет HTTP-запроса/ответа, содержащего ваш HTA-файл в открытом виде — прокси увидит только файл text/html, содержащий ваш зашифрованный блоб. В последней версии Edge это приведет к тому, что пользователю будет предложено «запустить» HTA.

Хотя это не является основной целью инструмента, есть несколько вариантов полезной нагрузки для базового HTA. Каждый вариант использует различные техники, ранее описанные Мэттом Нельсоном, Мэттью Демаске, Райаном Хэнсоном и Этьеном Сталмансом. Преимущество использования этих техник в том, что ваш код выполняется не как дочерний процесс mshta.exe. Как уже упоминалось, содержание HTA не является основной целью этого инструмента. Я призываю вас изменить шаблон HTA, чтобы он содержал ваш собственный код :)

Как его запустить?

Запустите файл demiguise.py, указав ваш ключ шифрования, тип полезной нагрузки, имя выходного файла и команду, которую должен выполнить HTA.

Пример: python demiguise.py -k hello -c "notepad.exe" -p Outlook.Application -o test.hta

Привязка к окружению

Чтобы обойти песочницы, вам не следует встраивать ключ непосредственно в HTA. Вместо этого его нужно динамически получать из среды, в которой находится цель. Примером может служить использование внешнего IP-адреса клиента в качестве ключа. Преимущество этого в том, что если код выполняется в сторонней песочнице, HTA не расшифруется. Фактически, даже имя файла не расшифруется, поэтому никто не узнает, что делает ваша полезная нагрузка :)

Некоторые примеры привязки к окружению приведены в examples/externalip.js и examples/virginkey.js.

Бонус

Поскольку инструмент выводит HTML-файл, содержащий JavaScript, вы можете просто взять этот JS и разместить его где угодно. Это означает, что если сайт вашего клиента уязвим для отраженного XSS, вы можете использовать его для доставки вашего HTA-файла с их (высокодоверенного) домена.

Кроме того, Outlook по умолчанию не блокирует вложения .html, и некоторые другие приложения тоже — используйте своё воображение! :)

Обнаружение

В настоящее время он не обнаруживается на VT:

https://www.virustotal.com/en/file/24b86ee6210b2abc446021feacfe25502b60403455aa24a32c80b2e7b0f81a70/analysis/1499880541/

Защита

Хотя методы обфускации может быть трудно сигнатурировать, один из способов защиты от HTA-атак — предотвратить сам запуск HTA. Это можно сделать с помощью Политики ограниченного использования программ (SRP), Device Guard (на Windows 10 и Server 2016) или изменив обработчик файлов по умолчанию, связанный с файлами .hta.

Обратите внимание, что эти изменения могут повлиять на работу программного обеспечения, которое зависит от выполнения HTA. Поэтому рекомендуется полностью протестировать исправление в вашей собственной среде.

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

Изменение обработчика файлов по умолчанию:

root@kitploit:~
ftype htafile=%SystemRoot%\system32\NOTEPAD.EXE %1

Возврат обратно (x64):

root@kitploit:~
ftype htafile=C:\Windows\SysWOW64\mshta.exe "%1" {1E460BD7-F1C3-4B2E-88BF-4E770A288AF5}%U{1E460BD7-F1C3-4B2E-88BF-4E770A288AF5} %*

Часто задаваемые вопросы

  • Разве это не сохраняется на диск?
    • При тестировании в последней версии Edge это «сохраняется на диск» так же, как и при обычной передаче HTA. В любом случае, он окажется временным файлом на диске.
  • Зачем мне это использовать, если у меня уже есть обнаружение песочницы для $product с проверкой на членство в домене / принтеры и т.д.?
    • Цель инструмента — избежать выполнения в песочнице в первую очередь. Если вы грамотно выберете ключи, HTA даже не расшифруется корректно, и $product не узнает, что это HTA-файл — а значит, песочница не сможет его выполнить.
  • Как найти источник ключа окружения, не имея предварительного доступа к сети цели?
    • Это оставлено в качестве упражнения для читателя, однако это часто можно выяснить с помощью хорошей OSINT. Если вы проводите кампании по сбору отпечатков, обратите внимание на WebFEET и BeEF для вдохновения.

Благодарности / Предшественники

  • Мэтт Нельсон - Техники выполнения COM: WbemScripting.SWbemLocator и ShellBrowserWindow
  • Мэттью Демаске - PoC выполнения COM: WbemScripting.SWbemLocator
  • Райан Хэнсон - Техника выполнения COM: Excel.Application.RegisterXLL
  • Этьен Сталманс - Техника выполнения COM: Outlook.Application.CreateObject
  • Брэндон Арванаги и Крис Трансер - Инструмент CheckPlease.
  • Проект Empire
Скачать инструмент