Charset Mismatch

Was ist Charset Mismatch?

Bei der Charset Mismatch Prüfung werden Antworten identifiziert, bei denen der HTTP-Contenttyp-Header einen Zeichensatz deklariert, der sich von dem durch den Text des HTML oder XML definierten Zeichensatz unterscheidet. Wenn der Zeichensatz des HTTP-Headers nicht mit dem Text des Inhalts übereinstimmt, können Webbrowser in einen unerwünschten Inhalts-Sniffing-Modus gezwungen werden, um den korrekten Zeichensatz des Inhalts zu ermitteln.

Beschreibung

Der Security Scanner behandelt je nach Threshold-Einstellung des Scanners verschiedene Bedingungen:

Alle Thresholds

  • Header- vs. Meta-Contenttyp-Zeichensatz – Deklaration im HTTP-Contenttyp-Header stimmt nicht mit dem deklarierten META-Contenttyp-Tag überein
  • Header- vs. Meta-Zeichensatz – Deklaration im HTTP-Contenttyp-Header stimmt nicht mit dem deklarierten META-Zeichensatz überein.

LOW-Threshold

  • Meta-Contenttyp-Zeichensatz fehlt – die Antwort enthält keinen META-Contenttyp Deklaration, wodurch ältere Clients möglicherweise übersehen werden.
  • Meta-Zeichensatz im Vergleich zu Meta-Contenttyp-Zeichensatz – die Antwort enthält sowohl eine META-Contenttyp-Deklaration als auch eine META-Zeichensatz-Deklaration und sie stimmen nicht überein.

Tipp

Überprüfen Sie die Sicherheit Ihrer Website mit unserem kostenlosen Security Crawler oder mit der OSG Performance Suite Free Version.

Lösungen

Eingabevalidierung

  • Treffen Sie keine Entscheidung auf Grundlage des Namens von etwa beispielsweise Dateien, wenn diese alternative Namen haben können
  • Verwenden sie eine Art “Whitelist” aus akzeptablen Eingaben, die streng den Spezifikationen entsprechen
  • Berücksichtigen Sie alle relevanten Eigenschaften wie etwa Länge, Eingabetyp, Syntax, Einhaltung von Geschäftsregeln etc.
  • Verlassen Sie sich nicht ausschließlich auf die Suche nach fehlerhaften bzw. schädlichen Eingaben
  • Vor der Validierung sollten die Eingaben für die interne Darstellung der Anwendung dekodiert und kanonisiert werden

Ausgabecodierung

  • Verwenden und geben Sie eine Codierung an, die von der Downstream-Komponente verarbeitet werden kann
  • Übliche Kodierungen wären z.B. ISO-8859-1, UTF-7 und UTF-8
  • Wird keine Codierung angegeben, so wird eine automatisch ermittelt, was fehlerhaft sein kann

 

Weitere Hinweise: http://www.w3.org/TR/html401/charset.html


Sie haben noch Fragen?

Kontaktieren Sie uns

Kostenloser SEO-Check der OSG


Weitere Inhalte