Dart-Debofusker und Code-Wiederhersteller
Erkennen und rückgängig machen Sie Dart-Obfuskierung automatisch. Erkennt kurze/minifizierte Bezeichner (a, b, _0xA, _x0x), Strings mit Hex-Escapes (\\xHH), Unicode-Escape-Sequenzen (\\uXXXX), Konstruktion von Codepunkten mit String.fromCharCodes([...]), Base64-kodierte Strings via base64Decode(), Byte-Manipulationsmuster mit XOR-Chiffre und Obfuskierung durch Verkettung geteilter Strings. Jede Erkennung enthält einen Konfidenzwert, Quellzeilennummern und den umgebenden Codekontext. Kostenlos, privat und ohne Anmeldung.
Detect and reverse Dart obfuscation techniques. Automatically identifies short/minified identifiers, hex-escaped strings, Unicode escape sequences, String.fromCharCodes construction, Base64-encoded strings, XOR cipher patterns, and string concatenation obfuscation with confidence ratings and source context.
Paste Dart code above and click Analyze Dart Code to detect obfuscation patterns. The tool identifies short/minified identifiers, hex escapes, Unicode escapes, String.fromCharCodes construction, Base64-encoded strings, XOR cipher patterns, and split-string concatenation. Try loading an example to see how it works!
Funktionen
- 7 Detektoren für Dart-Obfuskierungstechniken: erkennt automatisch kurze/minifizierte Bezeichner (a, b, _0xA, _x0x), Strings mit Hex-Escapes (Format \\xHH), Unicode-Escape-Sequenzen (\\uXXXX), Konstruktion von Codepunkten mit String.fromCharCodes, Base64-kodierte Strings via base64Decode(), Byte-Manipulationsmuster mit XOR-Chiffre und Obfuskierung durch Verkettung geteilter Strings. Jeder Detektor nutzt spezialisiertes, Dart-bewusstes Pattern-Matching mit Unterstützung für einfache und doppelte Anführungszeichen.
- Anzeige von kodiertem Wert und dekodierter Analyse: Jede Erkennung zeigt den ursprünglichen kodierten Wert bzw. den Obfuskierungsindikator neben dem dekodierten Ergebnis oder der Analyse in einem übersichtlichen Kartenlayout. Hex-Escapes werden vollständig in lesbaren Text dekodiert, Codepunkt-Arrays von String.fromCharCodes werden zu Strings rekonstruiert, Base64-Payloads werden dekodiert und Stringverkettungsmuster werden in ihrer vollständigen Form wiederhergestellt.
- Annotierte Codeansicht mit Konfidenzbewertung: Zeigen Sie Ihren Dart-Code mit Inline-Anmerkungen an, die jeden erkannten Obfuskierungspunkt markieren. Jede Erkennung erhält eine Konfidenzbewertung von 1 bis 5 mit Quellzeilennummern und umgebendem Codekontext. Die annotierte Ansicht hilft, jede verwendete Obfuskierungstechnik schnell zu lokalisieren und zu verstehen, mit farbcodierten Indikatorkarten für jeden Erkennungstyp.
- 100 % browserlokal und privat: Die gesamte Dart-Debofuskierung läuft vollständig in Ihrem Browser. Ihr Dart-Code, alle erkannten Indikatoren, dekodierten Werte und Analyseergebnisse verlassen niemals Ihr Gerät. Keine Server-Uploads, keine API-Aufrufe, keine Datenspeicherung und kein Tracking. Völlig sicher für die Analyse proprietären oder sensiblen Dart-Quellcodes, einschließlich Flutter-Anwendungen.
Einsatzbereiche
- Sicherheitsanalyse obfuskierten Dart-Codes: Analysieren Sie verdächtigen Dart-Quellcode auf obfuskierte Strings, versteckte API-Endpunkte und kodierte Konfiguration. Bösartiger Dart-Code nutzt häufig String.fromCharCodes, Base64-Kodierung und Hex-Escapes, um C2-URLs, API-Schlüssel und Konfigurationsdaten vor statischer Analyse und Codereview zu verbergen.
- Reverse-Engineering-Analyse von Flutter-Apps: Extrahieren Sie versteckte Konfiguration, geheime Schlüssel und obfuskierte Strings aus Dart-Quellcode in Flutter-Anwendungen. Gängige Dart-Obfuskierungstechniken sind kurze Variablennamen des Dart-Obfuskers, String.fromCharCodes-Konstruktion für String-Literale und verkettete Teilstrings zur Umgehung schlüsselwortbasierter Erkennung.
- Reverse Engineering von Dart-Web- und Servercode: Verstehen und rekonstruieren Sie Dart-Code, der zum Schutz in Web- oder serverseitigen Dart-Anwendungen obfuskiert wurde. Der Code-Wiederhersteller identifiziert und annotiert kurze Variablennamen, dekodiert kodierte Strings und offenbart die ursprüngliche Absicht hinter obfuskierten numerischen Konstanten und Zeichencode-Konstruktionen.
- Code-Audits und Sicherheit von Dart-Paketen: Prüfen Sie bei Sicherheitsaudits von Dart-Projekten Pakete und Abhängigkeiten von Drittanbietern auf Obfuskierungsindikatoren. Identifizieren Sie Dart-Pakete, die kodierte Strings, Zeichencode-Obfuskierung oder obfuskierte Bezeichner verwenden - mögliche Anzeichen von Manipulation oder böswilliger Absicht in Supply-Chain-Angriffen auf Dart und Flutter.
- Lehrmittel zu Dart-Obfuskierungstechniken: Lernen Sie anhand echter dekodierter Beispiele, wie Dart-Obfuskierungstechniken funktionieren. Verstehen Sie, wie String.fromCharCodes, Hex-Escapes, Base64-Kodierung, XOR-Chiffren und Stringverkettung sowohl zum legitimen Codeschutz in kommerziellen Flutter-Apps als auch zu böswilligen Zwecken in der Malware-Analyse genutzt werden.
- Forensische Analyse kompromittierter Dart-Systeme: Analysieren Sie bei der Incident Response auf kompromittierten Dart-basierten Systemen Konfigurationsdateien, Initialisierungscode und Flutter-Plugins auf versteckte Backconnect-URLs, Datenexfiltrationsendpunkte oder kodierte Shell-Befehle, die Angreifer in Dart-Quellcode für Mobil- und Webplattformen einbetten.
Häufig gestellte Fragen
Das Tool erkennt sieben gängige Dart-Obfuskierungsmuster: kurze/minifizierte Bezeichner (einbuchstabige oder mit Unterstrich beginnende Namen wie a, b, _0xA, _x0x), Strings mit Hex-Escapes (Format \\xHH), Unicode-Escape-Sequenzen (\\uXXXX), Konstruktion von Codepunkt-Arrays mit String.fromCharCodes, Base64-kodierte Strings via base64Decode() aus dart:convert, Byte-Manipulationsmuster mit XOR-Chiffre in Schleifen und Obfuskierung durch Verkettung geteilter Strings.
Der Analysator sucht nach Aufrufen von String.fromCharCodes([...]) und extrahiert alle ganzzahligen Codepunkte aus dem Array-Literal. Er verarbeitet sowohl Dezimalzahlen (72, 101, 108, 108, 111) als auch Hex-Literale (0x48, 0x65, 0x6C, 0x6C, 0x6F). Jeder gültige Codepunkt wird mit String.fromCharCode in das entsprechende Unicode-Zeichen umgewandelt, und der dekodierte String wird neben dem ursprünglich kodierten Array angezeigt.
Die Option --obfuscate von Dart benennt Symbole auf Binärebene in kurze Namen um. Dieses Tool kann zwar ähnliche Muster kurzer Bezeichner im Quellcode erkennen, doch der Dart-Obfusker arbeitet hauptsächlich mit kompilierten AOT-Snapshots und Kernel-Dateien, nicht mit lesbarem Dart-Quellcode. Das Tool eignet sich daher besser zur Analyse obfuskierten Dart-Quellcodes als für kompilierte Flutter-Release-Builds.
In Dart-Code erkannte XOR-Chiffre-Muster verwenden in der Regel einen an anderer Stelle definierten Schlüssel, was eine Entschlüsselung ohne Ausführung unmöglich macht. Das Tool erkennt das strukturelle Byte-XOR-Muster (Uint8List-Manipulation mit ^=) und markiert es zur manuellen Untersuchung. Sie können das XOR-Fragment in einer Dart-Laufzeitumgebung ausführen, um den tatsächlich dekodierten Wert zu erhalten.
Die Konfidenzwerte reichen von 1 bis 5. Wert 5 (sehr hoch) wird vergeben, wenn Codearrays von String.fromCharCodes zu lesbarem Text dekodiert werden oder Hex-Escapes sinnvolle Strings ergeben. Wert 4 (hoch) gilt für erfolgreiche Base64-Dekodierungen mit lesbarem Inhalt. Wert 3 (mittel) gilt für kurze Bezeichner und Stringverkettung. Wert 2 (niedrig) gilt für XOR-Muster, die eine Ausführung erfordern.
Nein. Das Tool deckt die gängigsten Dart-Obfuskierungsmuster ab, kann aber nicht alle Methoden bewältigen. Es kann keine Strings dekodieren, die über StringBuffer oder List.generate-Muster erzeugt wurden. Es kann mit dart:crypto verschlüsselte Daten nicht entschlüsseln und keine kompilierten Dart-Kernel-Dateien verarbeiten. Fortgeschrittene Obfuskierung kann eine dynamische Analyse in einer Dart-Laufzeitumgebung erfordern.
Die annotierte Codeansicht zeigt Ihren ursprünglichen Dart-Quellcode mit Inline-Kommentaren in jeder Zeile, in der eine Obfuskierung erkannt wurde. Jede Anmerkung enthält den Namen der Erkennungstechnik und eine kurze Beschreibung, etwa „Kurzer Bezeichner“ mit einem vorgeschlagenen aussagekräftigen Namen oder „String.fromCharCodes-Konstruktion“ mit dem dekodierten Text.
Absolut. Der Dart-Debofusker läuft vollständig in Ihrem Browser. Ihr Dart-Code, alle erkannten Indikatoren, dekodierten Werte und Analyseergebnisse werden niemals auf einen Server hochgeladen oder über das Netzwerk übertragen. Die gesamte Verarbeitung erfolgt lokal auf Ihrem Gerät, ohne API-Aufrufe oder Datensammlung.
Ein Dart-Decompiler wandelt kompilierte Dart-Binärdateien zurück in Quellcode. Dieses Tool analysiert dagegen bereits lesbaren Dart-Quellcode auf absichtliche Obfuskierungstechniken - es dekodiert versteckte Strings, deckt obfuskierte Bezeichner auf und markiert verdächtige Muster. Es rekonstruiert keinen Quellcode aus kompilierten Binärdateien.
Ja - 100 % kostenlos, ohne Anmeldung, ohne Konto und ohne Nutzungslimits. Analysieren Sie so viel Dart-Code wie nötig, so oft Sie möchten. Es gibt keine Premium-Stufen, versteckten Kosten oder Ratenlimits. Das Tool läuft vollständig in Ihrem Browser - Ihr Code verlässt niemals Ihr Gerät.