Es gibt drei Haupttypen von Cross-Site-Scripting-Angriffen auf xss: 1. Persistente Cross-Site; 2. Nicht-persistente Cross-Site; 3. DOM-Cross-Site; Persistenter Cross-Site-Code ist die direkteste Art der Gefahr, und der Cross-Site-Code wird auf dem Server gespeichert. Nicht-persistenter Cross-Site-Code ist eine reflektierende Cross-Site-Scripting-Schwachstelle, die am häufigsten vorkommt.
1. Arten von Cross-Site-Scripting-Angriffen:
(1) Persistente Cross-Site: die direkteste Art von Schaden, Cross- Speicherung des Site-Codes auf dem Server (Datenbank).
(2) Nicht persistente Cross-Site: Reflektive Cross-Site-Scripting-Schwachstelle, der häufigste Typ. Der Benutzer greift auf den serverübergreifenden Link zu und gibt den standortübergreifenden Code zurück.
(3) DOM Cross-Site (DOM XSS): DOM (Dokumentobjektmodell Dokumentobjektmodell), Sicherheitsprobleme, die durch die Verarbeitungslogik des Client-Skripts verursacht werden.
(Wenn Sie mehr über verwandte Probleme erfahren möchten, können Sie die php-chinesische Website besuchen.)
2. Wie kann man vorbeugen?
Wie kann man sich aus Sicht von Website-Entwicklern vor XSS-Angriffen schützen?
Der beste Schutz vor XSS sollte die folgenden zwei Methoden kombinieren:
1. Überprüfen Sie alle Eingabedaten, um Angriffe effektiv zu erkennen.
2. Verschlüsseln Sie alle Ausgabedaten ordnungsgemäß, um zu verhindern, dass erfolgreich eingeschleuste Skripte auf der Browserseite ausgeführt werden.
Die Details sind wie folgt:
Eingabevalidierung: Bevor bestimmte Daten als angezeigt oder gespeichert akzeptiert werden, wird der Standard-Eingabevalidierungsmechanismus verwendet, um Länge, Typ, Syntax und Geschäft zu überprüfen Regeln aller Eingabedaten.
Ausgabekodierung: Stellen Sie vor der Datenausgabe sicher, dass die vom Benutzer übermittelten Daten korrekt entitätskodiert wurden. Es wird empfohlen, alle Zeichen zu kodieren und sich nicht nur auf eine bestimmte Teilmenge zu beschränken.
Geben Sie die Kodierung der Ausgabe explizit an: Erlauben Sie Angreifern nicht, die Kodierung für Ihre Benutzer auszuwählen (z. B. ISO 8859-1 oder UTF 8).
Hinweis: Einschränkungen der Blacklist-Überprüfungsmethode: Nur das Suchen oder Ersetzen einiger Zeichen (z. B. „<“ „>“ oder Schlüsselwörter ähnlich „script“) kann durch den Überprüfungsmechanismus für XSS-Variantenangriffe leicht umgangen werden .
Vorsicht vor Normalisierungsfehlern: Vor der Validierung der Eingabe muss diese dekodiert und normalisiert werden, damit sie mit der aktuellen internen Darstellung der Anwendung übereinstimmt. Bitte stellen Sie sicher, dass die Anwendung dieselbe Eingabe nicht zweimal dekodiert.
Wie kann man sich aus der Sicht der Website-Benutzer vor XSS-Angriffen schützen?
Wenn Sie eine E-Mail oder einen Anhang öffnen oder einen Forumsbeitrag durchsuchen, werden möglicherweise automatisch schädliche Skripte angezeigt Daher müssen Sie bei der Ausführung dieser Vorgänge besonders vorsichtig sein. Es wird empfohlen, JavaScript in Ihren Browsereinstellungen zu deaktivieren. Wenn Sie einen IE-Browser verwenden, stellen Sie die Sicherheitsstufe auf „Hoch“ ein.
An dieser Stelle muss noch einmal daran erinnert werden, dass XSS-Angriffe tatsächlich mit der erfolgreichen Anwendung von Social Engineering einhergehen. Es ist notwendig, das Sicherheitsbewusstsein zu stärken und nur vertrauenswürdigen Websites oder Inhalten zu vertrauen. Sie können einige Erkennungstools verwenden, um XSS-Schwachstellen zu erkennen. Der durch XSS-Schwachstellen verursachte Schaden ist enorm. Wenn Schwachstellen entdeckt werden, sollten diese sofort behoben werden.
Das obige ist der detaillierte Inhalt vonWelche drei Haupttypen von Cross-Site-Scripting-Angriffen gibt es?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!