Ich hatte das Folgende in die Fußzeile einer Seite von mir injiziert und, um das größere Geheimnis zu lösen ("Wie" es geschah), versuche ich es zu entschlüsseln. Irgendwelche Ideen?
Hier ist der Code:
%Vor%Sie können die Zeichenfolge mit diesem Tool dekodieren. Legen Sie die Optionen für die Zeichenfolgenkonvertierung auf URL und Decode fest. Dann kannst du es hübsch machen mit js beautifier .
Und weil ich neugierig bin, habe ich mir die Ausgabe angeschaut. Es wird eine neue caption.js
-Datei aus einer halb-zufälligen Domain in Ihre Seiten geschrieben. Es gibt zwei Arrays von URL-Segmenten, die zum Erstellen der vollständigen Domain verwendet werden. Daher würde ich sagen, dass Sie etwas damit zu tun haben.
Setzt also eine Subdomain von e
(zB vagi.
) auf einen Domainnamen von d
(zB myads.name
) und lädt ein Skript von /system/caption.js
in dieser Domain (zB http://vagi.myads.name/system/caption.js
).
Alle diese Zahlen sind hexadezimale Werte für ASCII-Zeichen. Wenn unescape aufgerufen wird, werden sie zu echten Charakteren. z.B. % 3C ist '& lt;'.
Warum nicht ein Meldungsfeld verwenden, um die Ausgabe von unescape (...) anzuzeigen
Sie können den Hexdecoder hier verwenden: Ссылка Der Code ist
%Vor%Hier ist ein URLDecoder: Ссылка
Und der Code, den es schreibt:
%Vor%OK, das ist nicht sehr hilfreich. Es scheint eine andere JS-Datei einzufügen, wenn der Benutzer keinen Cookie namens "holycookie" hat und nicht der Google-Bot ist. Das meiste ist nur Junk, um den Domainnamen auszuwählen, von dem die Payload kommt.
Der von Ihnen veröffentlichte Code dekodiert zu
%Vor%lädt wiederum Code aus einer URL, die pseudozufällig zusammengesetzt ist, vorausgesetzt, dass die if-Bedingung erfüllt ist.
Wenn Sie zum Beispiel Ссылка öffnen, wird Ihnen der folgende JavaScript-Code angezeigt. < br>
Ich überlasse die Interpretation Ihnen, aber es sieht ziemlich harmlos aus.
Wie konntest du das alleine machen? URLDecode + jsbeautifier oder jsunpack sind mehr als genug, um so weit zu kommen;)
Verwenden Sie "Versionskontrolle", damit dies in Zukunft nicht mehr geschieht. Nachdem ein guter Build abgeschlossen ist und alles so ist, wie Sie es möchten, speichern Sie es auf einer externen Festplatte, während Sie offline sind.
Haben Sie kürzlich etwas getan, um einen Kollegen, der Programmierer ist, zu verärgern?
Tags und Links javascript decoding