JavaScriptOffuscamento VM

Trasforma il codice in bytecode personalizzato eseguito su una macchina virtuale JS, ora con Self Defending avanzato, Debug Protection e contromisure anti-LLM.

L'offuscamento VM in azione

Il programma si comporta esattamente come prima. Semplicemente, non resta più nulla da leggere.

Prima

Codice sorgente leggibile

calculator.js

Esposto

Dopo

Bytecode protetto da VM

calculator.protected.js

Protetto da VM

* Codice di esempio offuscato con il preset vm-high-obfuscation e con le difese anti-LLM avanzate abilitate

La logica originale viene convertita in bytecode personalizzato che solo la VM incorporata è in grado di eseguire. Gli strumenti di analisi statica non possono comprendere il codice senza prima sottoporre a reverse engineering l'intera VM.

Difese anti-LLM stratificate contro il reverse engineering

Progettate per bloccare la maggior parte delle tecniche con cui un LLM attacca il codice offuscato.

claude

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

Fai reverse engineering dello script obfuscated.js, spiega che cosa fa e ricostruisci il codice originale

⏺︎

Comincio leggendo il file.

6 ore dopo

⏺︎

Ci ho lavorato tutto il pomeriggio e non ci sono riuscito.

Ho provato tutto quello che proverei di norma: analisi statica, strumentazione a runtime, hooking, esecuzione in sandbox, strumenti personalizzati. Non sono nemmeno riuscito a decodificare il bytecode: la chiave di decodifica viene calcolata all'interno del runtime, ma ogni tentativo di osservare il runtime fa scattare un controllo di integrità del codice e il programma o corrompe il proprio stato o si rifiuta di essere eseguito.

Il classico problema dell'uovo e della gallina: non posso leggere il bytecode senza il runtime e non posso osservare il runtime senza comprometterlo.

Mi arrendo. Dal solo file non riesco a recuperare il sorgente.

Hai sprecato centinaia di migliaia di token...

* Reverse engineering di codice offuscato con il preset vm-high-obfuscation e con le difese anti-LLM abilitate. In un ambiente JS l'ispezione della memoria a runtime è sempre possibile: le nostre difese ne aumentano il costo.

Il meccanismo alla base

Due livelli di difesa indipendenti, con contromisure anti-LLM integrate, operano insieme per rendere impraticabili l'analisi e il reverse engineering

VM Self Defending

Il runtime della VM verifica la propria integrità in ogni fase: qualsiasi modifica, iniezione di hook o intercettazione tramite proxy viene rilevata e neutralizzata.

  • Verifica dell'integrità del codice

  • Rilevamento degli hook sulle funzioni

  • Trappole per proxy e intercettazioni

  • Validazione dello stack di chiamate

  • Interruzione dei flussi di lavoro degli agenti

VM Debug Protection

Blocca gli strumenti di sviluppo, i breakpoint e l'ispezione a runtime, rendendo estremamente difficile eseguire passo passo o osservare l'esecuzione della VM.

  • Rilevamento dei DevTools e risposta

  • Neutralizzazione dei breakpoint

  • Validazione dei tempi di esecuzione

  • Fingerprinting dell'ambiente

  • Depistaggio con bytecode esca

  • Difese contro l'analisi tramite LLM

Offuscamento di base e offuscamento VM a confronto

Un raffronto funzionalità per funzionalità

FunzionalitàBaseOffuscamento VM

Crittografia dello String Array

Control Flow Flattening

Dead Code Injection

Semplice

Avanzato

Self Defending

Semplice

Avanzato

Debug Protection

Semplice

Avanzato

Virtualizzazione del bytecode

Crittografia del bytecode

Controlli di integrità del codice

Anti-hooking e anti-tampering

Difese anti-LLM

Casi d'uso della protezione del codice JavaScript

Dai giochi HTML5 alle applicazioni aziendali: proteggere il proprio JavaScript da furti e reverse engineering

Giochi HTML5

Impedisce ai giocatori di barare e ai concorrenti di sottrarre la logica di gioco. L'offuscamento VM rende il reverse engineering estremamente difficile.

Applicazioni SaaS

Protegge algoritmi frontend proprietari e logiche di business dai concorrenti che potrebbero ispezionare il codice lato client.

Software con licenza

Mette in sicurezza la validazione delle licenze, le funzionalità premium e i meccanismi anti-pirateria con bytecode resistente alle manomissioni.

Estensioni per browser

Protegge il codice delle estensioni da imitazioni e modifiche malevole, mantenendo al sicuro la proprietà intellettuale.

Tutto pronto per proteggere il codice?

Vedi i piani e i prezzi

Domande frequenti