Cross Site Scripting (XSS) Erklärung, Beispiel und Schutz

In diesem, wahrscheinlich etwas längerem, Blogeintrag möchte ich die Gefahren von XSS Lücken aufzeigen, ein praktisches Beispiel zeigen und zeigen, wie man XSS Lücken effektiv schließt.
Inhalt:

  • Was sind XSS Lücken?
  • Welche Gefahren entstehen durch XSS Lücken?
  • Wie schützt man sich vor XSS Lücken?

1. Was sind XSS Lücken?
XSS Lücken werden leider von sehr vielen Administratoren unterschätzt. Viele schützen sich gar nicht, oder nur sehr unzureichend. Daher ist es auch nicht verwunderlich, dass ich selbst auf der Seite der Telekom, Eplus etc. solche Lücken schon fand. Zugegebener maßen waren dies zwar keine persistenten XSS Lücken (So nennt man die Art von XSS Lücke, bei der der Code dauerhaft auf der Seite bleibt), aber dennoch sollte man sie nie unterschätzen.
Was ist nun aber genau eine XSS Lücke? Eine XSS Lücke ist eine Sicherheitsschwachstelle auf einer Internetseite, bei der der Angreifer beliebigen Code (meist Javascript) auf der Seite platziert, sodass dieser von den Usern ausgeführt wird. Dies geschieht dadurch, dass Benutzereingaben, ohne überprüft zu werden direkt auf der Seite ausgegeben werden. Wenn der Angreifer dann beispielsweise den Code

<script>alert('XSS')</script>

auf der Seite platziert, würde jeder Benutzer einer Meldung bekommen , in der ‘XSS’ steht (Wer es einmal sehen will kann hier klicken. Da dies noch eine sehr harmlose Attacke wäre, kommen wir nun zu den etwas gefährlicheren.[Read More…]