VM-Obfuskierung
Die VM-Obfuskierung wandelt Ihre JavaScript-Funktionen in eigenen Bytecode um, der auf einer in die Ausgabe eingebetteten virtuellen Maschine läuft, sodass die geschützte Logik nicht mehr als lesbares JavaScript ausgeliefert wird.
Der VM-Schutz gilt für geeignete Funktionen. Im Root-Modus kann vmWrapTopLevelInitializers zusätzlich geeignete Initialisierer für die Virtualisierung umschließen; die aktuellen VM-Voreinstellungen aktivieren dies. Prüfen Sie Abdeckungswarnungen wie VMNoFunctionsToVirtualize und wählen Sie sensible Funktionen mit dem Kommentarmodus gezielt aus.
Obfuskierung erhöht die Kosten von Reverse Engineering, ohne es unmöglich zu machen. Bewahren Sie Geheimnisse und maßgebliche Sicherheitsentscheidungen daher auf dem Server auf - was Obfuskierung garantieren kann und was nicht, lesen Sie unter Best Practices.
Brauchen Sie Hilfe? Wenn sich die VM-Obfuskierung unerwartet verhält, erfahren Sie unter VM-Laufzeitfehler diagnostizieren, wie Sie das Problem eingrenzen und einen Fehlerbericht einreichen.
In diesem Abschnitt
Laufzeitkompatibilität
Passen Sie den Build an die Umgebung an, in der er läuft: die Option Target, Laufzeitabwehrmaßnahmen und was die Build-Pipeline erhalten muss.
Wie die VM Code transformiert
Was die VM sichtbar lässt und was sie verbirgt - und wie Sie Funktionsnamen schützen.
Funktionen gezielt auswählen
Obfuskieren Sie für optimale Performance selektiv nur sensible Funktionen mit der VM.
Register-Based VM
Schaltet die VM auf ein registerbasiertes Ausführungsmodell um - schnellere Laufzeit bei etwas größerem Bundle.
Async Executor
Führen Sie die VM asynchron aus, damit der Schlüssel zur Bytecode-Entschlüsselung zur Laufzeit abgerufen werden kann, statt im Bundle mitgeliefert zu werden.
Kompatibilität mit dem Strict Mode
Deklarieren Sie den Strict Mode, damit die VM korrekten Bytecode kompiliert.
Verhalten von direktem eval
Warum direktes eval() die VM-Obfuskierung deaktiviert und wie Sie diese Falle vermeiden.
VM Self Defending
Manipulationserkennung, Integritätsprüfungen des Codes und Anti-Hooking für die VM-Laufzeit.
VM Debug Protection
Anti-Debugging-Maßnahmen für VM-geschützten Code.
VM Domain Lock
Beschränken Sie den obfuskierten VM-Code auf bestimmte Domains und Subdomains.
Browser Environment
Deklarieren Sie, wie Ihr Produktions-Build ausgeliefert wird, damit der geschützte Code seine Integrität daran binden kann.
