JavaScriptOfuscação VM

Transforme seu código em bytecode personalizado, executado por uma máquina virtual JS - agora com Self Defending avançado, Debug Protection e contramedidas anti-LLM/CDP.

Veja a ofuscação VM em ação

O programa se comporta exatamente como antes. Simplesmente não sobrou nada para ler.

Antes

Código-fonte legível

battle-simulator.js

Depois

Bytecode protegido por VM

battle-simulator.protected.js

A lógica original é convertida em bytecode personalizado que somente a VM embutida consegue executar. Ferramentas de análise estática não conseguem entender o código sem antes fazer engenharia reversa de toda a VM.

Defesas anti-LLM/CDP em camadas contra engenharia reversa

Feitas para bloquear a maior parte das formas como uma LLM ataca código ofuscado.

claude

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

❯

Faça engenharia reversa do script obfuscated.js, diga o que ele faz e restaure o código original

⏺︎

Vou começar lendo o arquivo.

algumas horas depois

⏺︎

Queimei a sessão inteira nisso e não cheguei a lugar nenhum.

Tentei tudo o que costumo tentar - análise estática, instrumentação em tempo de execução, hooking, execução em sandbox, ferramentas próprias. Estaticamente, o bytecode não se abre: a chave que o decodifica só é construída dentro do programa em execução. Então tentei fazer o dump ao vivo com um depurador CDP - e as defesas anti-CDP detectaram o inspector no instante em que ele se conectou, envenenando o estado ou interrompendo a execução por completo.

Toda via de entrada é vigiada. O estático me deixa só um bloco opaco, e partir para o dinâmico para desembrulhá-lo é exatamente o que a camada anti-CDP foi feita para pegar.

Vou parar por aqui. Só com o arquivo, não consigo recuperar o código-fonte.

❯

Centenas de milhares de tokens, e ele nem sequer conseguiu entrar...

* Engenharia reversa de código ofuscado com a predefinição vm-high-obfuscation e as defesas anti-LLM/CDP ativadas. A inspeção da memória em tempo de execução é sempre possível em um ambiente JS - nossas defesas elevam o custo de chegar até ela.

O mecanismo por trás disso

Duas camadas de defesa independentes - com contramedidas anti-LLM/CDP integradas - trabalham juntas para tornar a análise e a engenharia reversa inviáveis

VM Self Defending

O runtime da VM verifica a própria integridade em cada etapa - qualquer modificação, injeção de hook ou interceptação por proxy é detectada e neutralizada.

Verificação de integridade do código

Detecção de hooks em funções

Armadilhas para proxy e interceptação

Validação da pilha de chamadas

Interrupção do fluxo de trabalho de agentes

VM Debug Protection

Bloqueia ferramentas de desenvolvedor, breakpoints e inspeção em tempo de execução - tornando extremamente difícil depurar passo a passo ou observar a execução da VM.

Detecção e resposta ao DevTools

Neutralização de breakpoints

Fingerprinting do ambiente

Desorientação com bytecode falso

Defesas contra análise por LLM/CDP

Ofuscação básica vs. VM

Uma comparação recurso a recurso

RecursoBásicaOfuscação VM

String Array Encryption

Control Flow Flattening

Dead Code Injection

Simples

Avançada

Self Defending

Simples

Avançada

Debug Protection

Simples

Avançada

Virtualização em bytecode

Criptografia do bytecode

Verificações de integridade do código

Anti-hooking e antiadulteração

Defesas anti-LLM/CDP

Casos de uso para proteção de código JavaScript

De jogos em HTML5 a aplicações corporativas - proteja seu JavaScript contra cópia e engenharia reversa

Jogos em HTML5

Evite que jogadores trapaceiem ou que concorrentes roubem a lógica do seu jogo. A ofuscação VM torna a engenharia reversa extremamente difícil.

Aplicações SaaS

Proteja algoritmos proprietários do frontend e regras de negócio contra concorrentes que possam inspecionar seu código no cliente.

Software licenciado

Blinde a validação de licenças, os recursos premium e os mecanismos antipirataria com um bytecode resistente a adulterações.

Extensões de navegador

Proteja o código da sua extensão contra cópias e modificações maliciosas. Mantenha sua propriedade intelectual segura.

Feito para equipes

Assentos, predefinições compartilhadas e chaves de serviço da equipe, para que a proteção seja um padrão da equipe, e não a configuração de uma única pessoa.

Salve uma configuração uma vez e reutilize-a em cada produto e pipeline

Chaves de serviço da equipe para CI que continuam funcionando quando um membro é removido

Force uma única versão do ofuscador e uma única predefinição para toda a equipe

Fixe cada build a uma versão exata ou a um intervalo flexível que acompanha as versões minor e patch

Pronto para proteger seu código?

Ver planos e preços

Perguntas frequentes