CUCM Logo
Di  26.03.2019CompUser Club Mainspitze e.V.https://www.google.de/maps/place/Moselstraße+21,+65428+Rüsselsheim/@49.9909897,8.4162473,20z/data=!4m2!3m1!1s0x47bd99327b0f7cb9:0x7450272f33dc29e065428 RüsselsheimMoselstrasse 21
Do  28.03.2019CompUser Club Mainspitze e.V.https://www.google.de/maps/place/Moselstraße+21,+65428+Rüsselsheim/@49.9909897,8.4162473,20z/data=!4m2!3m1!1s0x47bd99327b0f7cb9:0x7450272f33dc29e065428 RüsselsheimMoselstrasse 21
Do  28.03.2019CompUser Club Mainspitze e.V.https://www.google.de/maps/place/Moselstraße+21,+65428+Rüsselsheim/@49.9909897,8.4162473,20z/data=!4m2!3m1!1s0x47bd99327b0f7cb9:0x7450272f33dc29e065428 RüsselsheimMoselstrasse 21
 

Blog: PHP Sicherheit #2: XSS - Cross Site Scripting

Autor: Nick   Kommentare (0)   Kurz URL: -   Bei Twitter speichern   Bei Facebook speichern   Bei Digg speichern   Bei Delicious speichern   Bei Mr. Wong speichern   Bei Google Bookmarks speichern
25.07.2012
Cross Site Scripting, kurz XSS, beschreibt eine Sicherheitslücke in Web Anwendungen. Was ist Cross Site Scripting und wie schützt man als Entwickler seinen Code davor?

Was ist Cross Site Scripting?

Ähnlich wie bei SQL Injection wird versucht eigenen Code einzuschleusen, daher gehört es auch zur Art der HTML Injection Angriffen. Die Sicherheitslücke entsteht, wenn Benutzer Eingaben ungefiltert und unmaskiert entgegen genommen und anderen Benutzern zur Verfügung gestellt werden. Dann wird der Inhalt im Kontext der Webseite dargestellt und fremde Skripte im Browser ausgeführt.

Oft sind auch die Übergabe von Parametern an ein serverseitiges Skript anfällig, das eine dynamische Webseite erzeugt. Etwa dann, wenn die Parameter ungeprüft wieder als Seiteninhalt ausgegeben werden .

Das Ziel des Hackers ist das Ausspähen von Account (Session) Informationen, die zum Beispiel in Cookies abgelegt sind und diesen Account dann zu übernehmen. Weitere mögliche Ziele sind Phishing Angriffe, einstellen eigener Inhalte (Defacements) oder weiteren Schadcode wie Trojaner auszuführen.

Anfälliger Code für XSS:
echo $_POST['user_input'];

In diesem Beispiel wird die Benutzer Eingabe einfach wieder ausgegeben, wie es zum Beispiel ein Gästebuch Eintrag machen würde. Hier passiert so lange nichts, bis bösartiger Code eingetragen wird. Als harmloses Beispiel für die Anfälligkeit wird <script>alert('xss');</script> eingegeben, was eine einfache Messagebox mit 'xss' öffnet.

Schutz vor Cross Site Scripting

Wie bei SQL Injection muss die Benutzer Eingabe maskiert werden, hier jedoch die Ausgabe im Browser. Alle notwendigen Zeichen werden in ihre entsprechenden HTML Codes umgewandelt. In PHP kann dies die Funktion htmlentities() übernehmen.

Beispiel für htmlentities():
echo htmlentities($_POST['user_input']);

Mit Hilfe der htmlentities() Funktion wird beispielsweise '<' zu '&lt;'. Das vorherige <script> Beispiel wird zu &lt;script&gt;alert(&#039;xss&#039;);&lt;/script&gt; umgewandelt. Anschliessend führt der Browser die "<script>" Passage nicht mehr intern als Skript aus, sondern gibt <script>alert('xss');</script> als Seiteninhalt aus.

Zur Artikel Übersicht PHP Sicherheit


Den Artikel empfehlen

Ähnliche Blog Beiträge

PHP Sicherheit: Wie wird PHP Code gehackt

http://www.cucm.de/blog/115/php_sicherheit_wie_wird_php_code_gehackt/
24.07.2012 - Quasi kein Tag vergeht, ohne das über Webseiten Einbrüche und gestohlene Daten berichtet wird. Die Methoden der Hacker sind stehts gleich und bereits mit wenigen Massnahmen ausser Gefecht gesetzt.  Weiter lesen

Weitere Blog Artikel vom Compuser Club

Dem Computer Club folgen und über Neuigkeiten informiert werden:

RSS Feeds RSS Feeds   CUCM @ Twitter Twitter   CUCM @ Facebook Facebook   CUCM @ Google+ Google+
 
Bislang wurde kein Kommentar zu diesem Beitrag abgegeben. Sei erster!
 

Kommentar Verfassen

 
(erforderlich)
 
(erforderlich)
Ihre E-Mail Adresse wird nicht auf der Seite veröffentlicht. Sie dient ausschliesslich der möglichen Kontaktaufnahme unserseits.
 
 
 
 

3) Hinweis zur Freischaltung

Um Spam Missbrauch zu verhindern, werden alle Kommentare zuerst von uns geprüft. Daher kann es einen Augenblick dauern, bis Ihr Kommentar auf unserer Webseite erscheint. Spam oder was wir dafür halten, wird unsererseits kommentarlos gelöscht.
To avoid Spam on our Page, we check all Comments before publish. So save you and us Time and dont Spam.


CompUser Club Mainspitze e.V.   |  65428 Rüsselsheim   |  Moselstrasse 21 (Post Gebäude: 1. Stock)