Dieser Artikel wurde maschinell übersetzt.
Cross-Site-Scripting (oder XSS) ist eine Form von Injektionsangriff. Ein Hacker platziert schädlichen Code in einem Teil einer legitimen Website oder Anwendung. Das Ziel wird besucht und der Code wird ausgeführt.
Am Ende eines XSS-Angriffs hat ein Hacker unbefugten Zugriff. Diese Person könnte zum Beispiel auf die Sitzungscookies eines Benutzers zugreifen. Mit diesen Daten könnte sich der Hacker als das Opfer ausgeben und etwas Unerwünschtes tun, wie z. B. Geld stehlen. Zum Glück gibt es Möglichkeiten, Ihre Website zu schützen.
Kein webbasierter Designer macht sich daran, eine Falle zu schaffen. Aber leider sind Schwachstellen bei XSS-Angriffen weit verbreitet. Tatsächlich sagen einige Experten, dass "viele" Websites sie enthalten. Wenn dies bei Ihnen der Fall ist, gefährden Sie alle Ihre Besucher.
Was ist Cross-Site-Scripting?
XSS (oder Cross-Site-Scripting) ist eine Sicherheitslücke, die Sie in Ihre Website codiert haben. Hacker verwenden XSS, um Interaktionen zu ändern oder zu übernehmen, die Ihre Besucher normalerweise mit Ihrer Website oder App haben.
XSS verdreht die gleichoriginäre Richtlinie des webbasierten. Das beinhaltet:
- Verbindung. Ein Gerät ist mit einer Website oder App verknüpft.
- Berechtigung. Die Website und das Gerät verbinden sich im gegenseitigen Einvernehmen. Das Gerät kann z. B. Cookies speichern.
- Seilhüpfen. Wenn die beiden oben genannten Schritte abgeschlossen sind, vertraut das Gerät der Website zukünftige Anfragen an. Es ist keine weitere Autorisierung erforderlich.
Ein Hacker implantiert bösartigen Code irgendwo auf Ihrer Website und in Ihrer App. Das Gerät des Benutzers führt den Code aus, ohne ihn überhaupt zu überprüfen, da die IT so aussieht, als käme die IT aus einer gültigen Quelle.
Probleme wie dieses können bemerkenswert weit verbreitet sein. Zum Beispiel entdeckten Forscher eine Schwachstelle in einem WordPress-Tool, das auf etwa 100.000 Websites installiert war. Der Hacker muss den Code nicht jedes Mal ändern. Sobald ein Besucher auf eine infizierte Website tippt, kann das Skript ausgeführt werden.
Wie beginnen CSS-Angriffe?
Geräte und Websites kommunizieren nicht immer in eine Richtung. Die beiden Handelsdaten, und wenn der Entwickler Eingaben von Benutzer nicht analysiert oder blockiert, beginnen XSS-Probleme.
Die Website enthält Benutzereingaben innerhalb des Seitencodes. Der Hacker fügt eine bösartige Zeichenfolge in diesen anfälligen Code ein. Der nächste Besucher kann zum Opfer werden.
XSS unterscheidet sich von einer Cross-Site Request Forgery (oder CSRF). Hier kann ein Angreifer jemanden dazu verleiten, eine Anfrage zu stellen. Aber der Hacker kann die Antwort nicht immer sehen. Bei einem XSS-Angriff kann der Hacker Code ausführen, die Antwort sehen und sich sogar mit Daten von der Website entfernen.
2 Arten von XSS-Angriffen
Jeder XSS-Angriff beginnt mit bösartigem Code. Aber wie jeder Entwickler weiß, gibt es Tausende von verschiedenen Codetypen.
OWASP unterscheidet zwei Haupttypen von XSS-Angriffen:
- Server: Der bösartige Code ist in einer HTTP-Antwort enthalten, die Ihr Server generiert.
- Client: Der bösartige Code stammt von einem Benutzer, und die IT aktualisiert das DOM.
Einige XSS-Angriffe sind vorübergehend und funktionieren nur einmal. Andere sind persistent und können auf dem Server, auf dem Gerät eines Ziels oder auf beiden gespeichert bleiben.
9 cross-site scripting Angriffspunkte
Anfälliger Code ist entscheidend für die Erstellung von XSS-Angriffen. Hacker suchen in der Regel nach einer häufigen Schwachstelle.
Der Angriff wird normalerweise durch Tags eingeleitet. Diese neun Tag-Typen gelten als anfällig:
Der Angriff wird normalerweise durch Tags eingeleitet. Diese neun Tag-Typen gelten als anfällig:
- Körper
- Div
- Rahmen
- Bild
- Eingabe
- verbinden
- Objekt
- Skript
- Tisch
Sie können keine Website erstellen, ohne eines oder mehrere dieser Tags zu verwenden. Sie sind unglaublich verbreitet, und die Benutzer neigen dazu, die Funktionalität, die sie bieten, zu wollen. Sie können Ihre Website nicht schützen, indem Sie sie eliminieren.
So begrenzen Sie das Risiko von Cross-Site-Scripting-Angriffen
Jedes Mal, wenn Sie ungefilterte Benutzereingaben in Ihre Ausgaben einfließen lassen, erhöhen Sie das Risiko eines XSS-Angriffs. Sie erhöhen Ihr Risiko, wenn Sie Tools wie Flash, VBScript und JavaScript verwenden.
OWASP sagt, dass der beste Weg, Ihr Risiko zu senken, die Verwendung einer kontextsensitiven serverseitigen Ausgabecodierung ist. Im Wesentlichen reagieren Sie anders auf die Eingaben, die Ihre Besucher Ihnen geben.
Andere Techniken sind:
- Inhaltssicherheit. Nutzen Sie das Tool „Inhalt Sicherheitsrichtlinie“ (CSP). Wenn IT aktiviert ist, überprüft der Browser Skripte, bevor er sie ausführt. Alles Ungewöhnliche wird abgelehnt, bevor die IT läuft.
- Codierung. Stellen Sie sicher, dass Ihre Ausgaben verschlüsselt sind, damit sie nicht wie aktive Inhalte aussehen.
- Filter. Bestimmen Sie, welche Eingaben typisch oder erwartet erscheinen. Lehnen Sie alle Benutzereingaben ab, die ungewöhnlich erscheinen.
- Überschrift. Verhindern Sie Code in HTTP-Antworten, der kein HTML enthalten sollte.
- Java. Erlauben Sie kein JavaScript auf Ihrer Site.
Eine genaue Überwachung ist von entscheidender Bedeutung. Stellen Sie sicher, dass Sie wissen, wann der Code von Ihrer Website zu Ihren Besuchern gelangt, und schalten Sie alles ab, was verrückt zu laufen scheint.
Wenn Sie mehr über XSS und andere Angriffe erfahren möchten, laden Sie noch heute Okta den Security Technical von Whitepaper herunter.
Referenzen
Cross-Site-Scripting: Viele Websites bleiben anfällig für häufige webbasierte Exploits. (November 2015). Der Staat New Jersey.
XSS-Fehler im SEOPress-WordPress-Plugin ermöglicht Site-Übernahme. (August 2021). Bedrohungsposten.
Arten von XSS. OWASP.
Cross-Site-Scripting (XSS). OWASP.