Gibt es einen weg das wider zu entschlüsseln?

1 Antwort

Vom Fragesteller als hilfreich ausgezeichnet

Der Obfuscator ist extra dafür da, dass man den Code nicht einfach so wieder zurück zu lesbaren Javascript-Code übersetzen kann.

Man kann höchstens versuchen, den Code per Hand auseinanderzunehmen und z.B. erstmal allen Funktionen und Variablen lesbare Namen geben und alle Buchstaben, die mit \x... drinstehen wieder zu normalen Buchstaben bzw. Zeichen übersetzen und alle Paare von geschweiften Klammern finden, damit man dem Quelltext ein bisschen Struktur geben kann und erstmal eine grobe Ahnung davon hat, was das Programm macht.

Danach muss man im Prinzip den Code per Hand durchgehen, um zu sehen was er macht und kann daraus evtl. wieder etwas ähnliches, wie den Originalcode schreiben.

Ironfist20 
Fragesteller
 05.01.2022, 10:14

Könnte man die Funktion be das Passwort herausfinden?

0
daCypher  05.01.2022, 11:30
@Ironfist20

In dem Fall schon. Man könnte einfach alle Strings sammeln, die im Code vorkommen und durchprobieren.

push
shift
push
shift
getElementById
das ist gut
<div class="pass" id="pas">
    <div class="pass-1">
        <div class="pass-2 pass-3">
            <h2>Passwort eingeben um fortzufahren</h2>
        </div>
        <div class="pass-2">
            <input type="password" id="password" placeholder="Passwort eingeben">
        </div>
        <div class="pass-2">
            <button class="pass-4" onclick="be()">Betätigen</button>
        </div>
    </div>
</div>
bod
pas
8694504rbrcdQ
2YjdsMq
1338630OkklTV
innerHTML
16cPbhLq
130278PGCvQv
1071IBOcAq
8420ktxfpH
46148069etiNWM
753139WHyoUR
getElementById
value
password
2856702zDvVxj
98MwdvEL
Falsches Passwort
remove

In dem Fall hat man beim sechsten Versuch schon Erfolg. Besser wäre es, wenn du das Passwort nicht als Klartext im Quellcode stehen hast. Also entweder als einfachen Hash (MD5, SHA256 etc.) oder besser mit einem speziell darauf ausgelegtem Passwort-Hash (bcrypt). Musst mal schauen, ob es da was für Javascript gibt. Normalerweise wird das im Backend (also auf PHP oder .Net) geprüft.

0