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

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

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

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

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

Категории

Все категории
Loading categories
HTMLSmuggler — ✉️ Генератор и обфускатор HTML-контрабанды для операций вашей Red Team | Kitploit
Инструменты/GitHubGitHub/d00movenok/htmlsmuggler
Генерация полезной нагрузкиОбход IDS/IPSЭксплуатация веб-приложенийФишингRed Teaming
GitHubd00movenok/htmlsmuggler

HTMLSmuggler

✉️ Генератор и обфускатор HTML-контрабанды для операций вашей Red Team

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

Популярное

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

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

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

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

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

HTMLSmuggler ✉️

License: MIT

HTMLSmuggler — генератор JS-полезной нагрузки для обхода IDS и доставки полезной нагрузки через HTML smuggling.

Описание

Полное объяснение того, что такое HTML Smuggling, можно найти здесь.

Основная цель HTML smuggling — обход средств сетевой защиты, таких как брандмауэры и системы обнаружения вторжений, путем маскировки вредоносных полезных нагрузок (например, исполняемых файлов/архивов и т.д.) внутри, казалось бы, безвредного HTML и JavaScript кода. Используя динамическую природу веб-приложений, злоумышленники могут доставлять вредоносное содержимое в браузер пользователя, не вызывая срабатывания средств безопасности и не будучи обнаруженными традиционными механизмами защиты. Благодаря этой технике, загрузка вредоносного файла никак не отображается в современных решениях IDS.

Основная цель инструмента HTMLSmuggler — создание независимой javascript-библиотеки со встроенной определяемой пользователем вредоносной полезной нагрузкой. Эта библиотека может быть интегрирована в ваши фишинговые сайты/HTML-вложения электронной почты и т.д. для доставки встроенной полезной нагрузки в систему целевого пользователя (в обход систем IDS и IPS). Пример созданной javascript-библиотеки можно найти здесь.

Возможности

  • Встроенный высоконастраиваемый обфускатор JavaScript, который полностью скрывает вашу полезную нагрузку, делая невозможным её извлечение из javascript вручную.
  • Мощная библиотека для обнаружения клиентских ботов и headless-краулеров, которая не раскрывает ваши полезные нагрузки интеллектуальным защищенным почтовым шлюзам и их собратьям.
  • Задержка перед загрузкой, чтобы избежать песочниц, которые спешат.
  • Может использоваться как независимая JS-библиотека или встраиваться в JS-фреймворки, такие как React, Vue.js и т.д.
  • Простота шаблона позволяет добавлять дополнительные обработчики данных/сжатие/обфускацию.
  • Поддержка множества браузеров (включая старый IE10).

Установка

  1. Установите менеджер пакетов yarn.

  2. Установите зависимости:

    root@kitploit:~
    yarn
    
  3. Прочитайте справку:

    root@kitploit:~
    yarn build -h
    
    root@kitploit:~
    Options:
      -p, --payload <string>   Путь к файлу полезной нагрузки, которую вы хотите скрытно передать
      -n, --name <string>      Имя файла, который будет загружен
      -t, --type <string>      Content-Type загружаемого файла (по умолчанию: "application/octet-stream")
      -f, --function <string>  Имя экспортируемой функции (по умолчанию: "download")
      -c, --compress           Включить сжатие полезной нагрузки (gzip)
      -d, --delay <number>     Задержка перед антиботом и загрузкой в мс (по умолчанию: 0)
      -a, --antibot            Включить обнаружение ботов и блокировать их (рекомендуется)
      -h, --help               отобразить справку по команде
    

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

Шаги подготовки

  1. (Необязательно) Измените настройки javascript-obfuscator в obfuscator.js; моя предустановка хороша, но очень медленная.

  2. Скомпилируйте вашу javascript-полезную нагрузку:

    ⚠️ ИЗБЕГАЙТЕ ИСПОЛЬЗОВАНИЯ ПОЛЕЗНЫХ НАГРУЗОК РАЗМЕРОМ БОЛЕЕ 3 МиБ (см. FAQ)

    root@kitploit:~
    yarn build -p /path/to/payload -n file.exe -t "application/octet-stream" -c -a -d 3000
    
  3. Получите вашу полезную нагрузку из dist/payload.esm.js или dist/payload.umd.js. После этого её можно вставить на вашу страницу и вызвать с помощью функции download() (или указанной с помощью флага -f).

    payload.esm.js используется в импортах вида import { download } from 'payload.esm'; (стандарт ECMAScript).

    payload.umd.js используется в html-тегах script SRC и импортах вида require('payload.umd'); (CommonJS, AMD и чистый html).

Пример с чистым HTML

Полный пример можно найти здесь.

  1. Выполните шаги подготовки.

  2. Импортируйте созданный скрипт в html-файл (или вставьте его встроенно):

    root@kitploit:~
    <head>
      <script src="payload.umd.js"></script>
    </head>
    
  3. Вызовите функцию download() из тела:

    root@kitploit:~
    <body>
      <button onclick="download()">Some phishy button</button>
    </body>
    
  4. Удачного фишинга :)

Пример с VueJS

Полный пример можно найти здесь.

  1. Выполните шаги подготовки.

  2. Импортируйте созданный скрипт в vue-файл:

    root@kitploit:~
    <script>
      import { download } from './payload.esm';
    </script>
    
  3. Вызовите функцию download():

    root@kitploit:~
    <template>
      <button @click="download()">Some phishy button</button>
    </template>
    
  4. Удачного фишинга :)

FAQ

В: У меня возникает ошибка RangeError: Maximum call stack size exceeded, как её решить?

О: Эта проблема описана здесь. Чтобы исправить её, попробуйте отключить splitStrings в obfuscator.js или уменьшить полезную нагрузку (из-за этой проблемы рекомендуется использовать полезные нагрузки размером до 2 МБ).


В: Почему сборка моей полезной нагрузки занимает так много времени?

О: Чем больше полезная нагрузка, тем дольше создается JS-файл. Чтобы уменьшить время сборки, попробуйте отключить splitStrings в obfuscator.js. Ниже приведена таблица с примерным временем сборки при использовании стандартного obfuscator.js.

Размер полезной нагрузкиВремя сборки
525 KB53 s
1.25 MB8 m
3.59 MB25 m
Скачать инструмент