Wie @elpddev in den Kommentaren spekuliert, werden sie nur console.log
Verwendung zu protokollieren, wenn die Seite geladen wird, werden sie Erkennung nicht, dass Sie die Konsole geöffnet haben.
Wenn Sie den JS-Code auf der Seite prüfen, sollten Sie diese finden:
var j = i.stop || h._("Stop!")
, k = i.text || h._("This is a browser feature intended for developers. If someone told you to copy-paste something here to enable a Facebook feature or \"hack\" someone's account, it is a scam and will give them access to your Facebook account.")
, l = i.more || h._("See {url} for more information.", [h.param('url', 'https://www.facebook.com/selfxss')]);
if ((window.chrome || window.safari) && !i.textonly) {
var m = 'font-family:helvetica; font-size:20px; ';
[[j, i.c1 || m + 'font-size:50px; font-weight:bold; ' + 'color:red; -webkit-text-stroke:1px black;'], [k, i.c2 || m], [l, i.c3 || m], ['', '']].map(function(s) {
setTimeout(console.log.bind(console, '\n%c' + s[0], s[1]));
});
} else {
var n = ['', ' .d8888b. 888 888', 'd88P Y88b 888 888', 'Y88b. 888 888', ' "Y888b. 888888 .d88b. 88888b. 888', ' "Y88b. 888 d88""88b 888 "88b 888', ' "888 888 888 888 888 888 Y8P', 'Y88b d88P Y88b. Y88..88P 888 d88P', ' "Y8888P" "Y888 "Y88P" 88888P" 888', ' 888', ' 888', ' 888']
, o = ('' + k).match(/.{35}.+?\s+|.+$/g)
, p = Math.floor(Math.max(0, (n.length - o.length)/2));
for (var q = 0; q < n.length || q < o.length; q++) {
var r = n[q];
n[q] = r + new Array(45 - r.length).join(' ') + (o[q - p] || '');
}
console.log('\n\n\n' + n.join('\n') + '\n\n' + l + '\n');
return;
}
Es ist ein wenig schwer zu lesen, da sie minimiert, auch mit hübschem Druck. Der Typ j = i.stop || h._("Stop!")
scheint zu versuchen, lokalisierten Text zu laden, der auf Englisch zurückfällt. Es wird dann getestet, ob sie den Browser als Chrome oder Safari erkannt haben und i.textonly
nicht eingestellt ist, wenn es so aussieht, als ob es mit dem ausgefallenen Styling angezeigt wird, wenn Sie es in Chrome/Safari ansehen. Die else
Klausel ist schwieriger zu folgen, aber es scheint, die ASCII-Grafik-Banner Sie im Textmodus oder Nicht-Chrome/Safari-Browser erhalten zu erstellen:
.d8888b. 888 888
d88P Y88b 888 888
Y88b. 888 888 This is a browser feature intended for
"Y888b. 888888 .d88b. 88888b. 888 developers. If someone told you to copy-paste
"Y88b. 888 d88""88b 888 "88b 888 something here to enable a Facebook feature
"888 888 888 888 888 888 Y8P or "hack" someone's account, it is a
Y88b d88P Y88b. Y88..88P 888 d88P scam and will give them access to your
"Y8888P" "Y888 "Y88P" 88888P" 888 Facebook account.
888
888
888
See https://www.facebook.com/selfxss for more information.
Meine Vermutung sie im Voraus warnen setzen, dass die Konsole. Sie sehen es nur nicht, bis Sie die Dev-Tools öffnen. Ich bin mir nicht sicher, ob ich verstehe, warum du wissen musst, ob das Devtool geöffnet ist. – elpddev
@elpddev, Sie hatten Recht, es ist nur 'console.log' mit einigen ausgefallenen Formatierungen. Sehen Sie meine Antwort, wenn Sie den Code sehen möchten, den sie verwenden. –