Warum zeigt Javascript hier keine Warnung an?

user185887:

Ich versuche, XSS von Portswigger und in seinem Labor https://portswigger.net/web-security/cross-site-scripting/contexts/lab-javascript-string-angle-brackets-double-quotes-encoded-single zu lernen -quotes-entkommen , mein Ansatz ergab folgende Javascript - Code.

<script>
  var searchTerms = '\\';
  alert(1);
  \\'';
</script>

Das Problem ist, dass dieser Code mir einen Fehler anzeigt. Aber da Javascript eine interpretierte Sprache ist, sollte es nicht zuerst die Warnung und dann den Fehler anzeigen?

<script>
  var searchTerms = '\\';
  alert(1);
  whatever;
</script>

Wie das obige Code-Snippet auch falsch ist. Auch hier bekomme ich eine Fehlermeldung, aber die Warnung wird auch angezeigt. Warum also nicht im ersten Fall?

Eingeklemmt:

Was Sie in Ihrem ersten Code produzieren, ist ein Syntaxfehler . Diese Fehler treten auf, wenn die JavaScript-Engine ein Skript analysiert und auf syntaktisch ungültigen Code stößt. Wenn eine JavaScript-Datei einen Syntaxfehler enthält, wird kein Code in der Datei ausgeführt.

In Ihrem zweiten Code haben Sie keinen Syntaxfehler, sondern einen semantischen Fehler . Deshalb zeigt Ihr zweites Skript die Warnung an.

Dieser Artikel stammt aus dem Internet. Bitte geben Sie beim Nachdruck die Quelle an.

Bei Verstößen wenden Sie sich bitte [email protected] Löschen.

bearbeiten am
0

Lass mich ein paar Worte sagen

0Kommentare
LoginNach der Teilnahme an der Überprüfung

Verwandte Artikel

TOP Liste

heißlabel

Archiv