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

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

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

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

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

Категории

Все категории
Loading categories
box-js — Инструмент для изучения JavaScript-вредоносного ПО. | Kitploit
Инструменты/GitHubGitHub/capacitorset/box-js
Управление индикаторами компрометации (IOC)Динамический анализ (песочница)ФорензикаАнализ вредоносных программ
GitHubcapacitorset/box-js

box-js

Инструмент для изучения JavaScript-вредоносного ПО.

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

Популярное

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

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

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

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

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

box.js

npm Build Status paypal

Утилита для анализа вредоносного JavaScript.

Установка

Просто установите box-js из npm:

npm install box-js --global

box-js также доступен:

  • как модуль Cuckoo (см. каталог integrations и Nwinternights/Cuckoo_Boxjs);
  • как Dockerfile (см. integrations/README.md);
  • как пакет в дистрибутивах для специалистов по безопасности (REMnux, BlackArch);
  • как часть приложений с открытым исходным кодом (Intel Owl);
  • как часть коммерческих сторонних сервисов (any.run).

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

Предположим, у вас есть образец с именем sample.js: для его анализа просто выполните

box-js sample.js

Вероятно, вы также захотите загрузить полезные нагрузки; используйте флаг --download, чтобы включить загрузку. В противном случае движок будет имитировать ошибку 404, чтобы скрипт думал, что сайт распространения недоступен, и обращался к запасным сайтам.

Box.js будет эмулировать среду Windows JScript, выведет сводку эмуляции в консоль и создаст папку с именем sample.js.results (если она уже существует, будет создана sample.js.1.results и так далее). Эта папка будет содержать:

  • analysis.log — журнал анализа, выведенный на экран;
  • серию файлов, идентифицированных UUID;
  • snippets.json — список фрагментов кода, выполненных образцом (JavaScript, команды оболочки и т.д.);
  • urls.json — список обработанных URL;
  • active_urls.json — список URL, которые, по-видимому, загружают активное вредоносное ПО;
  • resources.json — потоки ADODB (т.е. файлы, записанные скриптом на диск) с типами файлов и хешами;
  • IOC.json — список поведений, идентифицированных как IOC (индикаторы компрометации). Сюда входят обращения к реестру, записанные файлы, HTTP-запросы и так далее.

Вы можете проанализировать их самостоятельно или автоматически отправить на Malwr, VirusTotal или в песочницу Cuckoo: для получения дополнительной информации выполните box-export --help.

Для дополнительной изоляции рекомендуется запускать анализ во временном Docker-контейнере. См. integrations/README.md для получения дополнительной информации.

Если вы хотите автоматизировать анализ, вы можете использовать коды возврата — они описаны в integrations/README.md — чтобы различать разные типы ошибок.

Анализ не удаётся из-за отсутствия объекта 'document' или других объектов/функций

Репозиторий box-js из Git включает файл boilerplate.js. Этот файл определяет некоторые заглушки распространённых браузерных объектов, таких как document. Попробуйте перезапустить анализ с опцией --prepended-code=DIR/boilerplate.js, где DIR — каталог клонированного репозитория box-js, или с --prepended-code=default. Опция --prepended-code указывает box-js добавить JavaScript из указанного файла в начало анализируемого образца.

Обратите внимание, что вы можете скопировать boilerplate.js и добавить свои собственные заглушенные классы, объекты и т.д. по мере необходимости. Используйте опцию командной строки --prepended-code=show-default, чтобы вывести полный путь к файлу boilerplate.js по умолчанию.

Пакетное использование

Хотя box.js обычно используется для отдельных файлов, он также может выполнять пакетный анализ. Вы можете просто передать список файлов или папок для анализа:

box-js sample1.js sample2.js /var/data/mySamples ...

По умолчанию box.js обрабатывает образцы параллельно, запуская по одному анализу на ядро. Вы можете использовать другой параметр, указав значение для --threads: в частности, 0 снимет ограничение, заставляя box-js запускать как можно больше потоков анализа, что приведёт к очень быстрому анализу, но может перегрузить систему (обратите внимание, что анализ обычно ограничен по CPU, а не по RAM).

Вы можете использовать --loglevel=warn, чтобы скрыть сообщения, связанные с анализом, и отображать только информацию о ходе выполнения.

После завершения анализа вы можете извлечь активные URL следующим образом:

cat ./*.results/active_urls.json | sort | uniq

Флаги

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