JavaScriptVM-обфускация

Превратите свой код в байт-код, который исполняется виртуальной машиной JS, — теперь с продвинутыми Self Defending, Debug Protection и защитой от анализа при помощи LLM.

VM-обфускация в действии

Программа работает ровно так же, как раньше. Просто читать в ней больше нечего.

До

Читаемый исходный код

calculator.js

Открыт

После

Байт-код под защитой VM

calculator.protected.js

Защищено VM

* Пример кода, обфусцированного пресетом vm-high-obfuscation с включённой продвинутой защитой от анализа при помощи LLM

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

Многоуровневая защита от реверс-инжиниринга при помощи LLM

Создана, чтобы блокировать большинство способов, которыми LLM атакует обфусцированный код.

claude

researcher@MacBook % claude
▐▛███▜▌ Claude Code
▝▜█████▛▘ Opus 4.7 (1M context) with xhigh effort
▘▘ ▝▝ ~/Projects/deobfuscate

Разбери скрипт obfuscated.js методом реверс-инжиниринга, объясни, что он делает, и восстанови исходный код

⏺︎

Начну с того, что прочитаю файл.

6 часов спустя

⏺︎

Я провозился с этим весь день и так и не смог.

Я перепробовал всё, что обычно пробую: статический анализ, инструментирование во время выполнения, хуки, запуск в песочнице, собственные инструменты. Мне не удалось даже декодировать байт-код: ключ декодирования вычисляется внутри среды выполнения, но любая попытка понаблюдать за ней срабатывает на проверке целостности кода, и программа либо портит собственное состояние, либо отказывается запускаться.

Классическая проблема курицы и яйца: я не могу прочитать байт-код без среды выполнения и не могу наблюдать за средой выполнения, не сломав её.

Сдаюсь. По одному только файлу восстановить исходный код я не могу.

Вы впустую потратили сотни тысяч токенов...

* Реверс-инжиниринг кода, обфусцированного пресетом vm-high-obfuscation с включённой защитой от анализа при помощи LLM. Инспекция памяти во время выполнения в среде JS возможна всегда — наши механизмы защиты повышают цену такого анализа.

Как это устроено

Два независимых уровня защиты — со встроенными мерами против LLM — вместе делают анализ и реверс-инжиниринг непрактичными

VM Self Defending

Среда выполнения VM проверяет собственную целостность на каждом этапе — любая модификация, внедрение кода или перехват через прокси обнаруживаются и нейтрализуются.

  • Проверка целостности кода

  • Обнаружение хуков на функциях

  • Ловушки для прокси и перехватов

  • Проверка стека вызовов

  • Срыв работы ИИ-агентов

VM Debug Protection

Блокирует инструменты разработчика, точки останова и анализ во время выполнения — пошаговая отладка и наблюдение за работой VM становятся крайне сложными.

  • Обнаружение DevTools и реакция на них

  • Нейтрализация точек останова

  • Проверка времени выполнения

  • Фингерпринтинг окружения

  • Отвлечение ложным байт-кодом

  • Защита от анализа при помощи LLM

Базовая обфускация против VM-обфускации

Подробное сравнение возможностей

ВозможностьБазоваяVM-обфускация

String Array Encryption

Control Flow Flattening

Dead Code Injection

Простая

Продвинутая

Self Defending

Простая

Продвинутая

Debug Protection

Простая

Продвинутая

Виртуализация байт-кода

Шифрование байт-кода

Проверки целостности кода

Защита от хуков и модификации

Защита от анализа при помощи LLM

Сценарии защиты кода на JavaScript

От HTML5-игр до корпоративных приложений — защитите свой JavaScript от кражи и реверс-инжиниринга

HTML5-игры

Не дайте игрокам жульничать, а конкурентам — украсть логику вашей игры. VM-обфускация делает реверс-инжиниринг крайне сложным.

SaaS-приложения

Защитите собственные алгоритмы фронтенда и бизнес-логику от конкурентов, которые могут изучить ваш клиентский код.

Лицензионное ПО

Защитите проверку лицензий, премиальные функции и механизмы противодействия пиратству байт-кодом, устойчивым к вмешательству.

Расширения для браузера

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

Готовы защитить свой код?

Посмотреть тарифы

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