Ethisches Hacken - Cross-Site Scripting

Cross-Site Scripting (XSS) ist ein Code-Injection-Angriff, mit dem ein Angreifer bösartiges JavaScript im Browser eines anderen Benutzers ausführen kann.

Der Angreifer zielt nicht direkt auf sein Opfer. Stattdessen nutzt er eine Sicherheitslücke in einer Website aus, die das Opfer besucht, um die Website dazu zu bringen, das schädliche JavaScript für ihn bereitzustellen. Für den Browser des Opfers scheint das böswillige JavaScript ein legitimer Bestandteil der Website zu sein, und die Website hat somit als unbeabsichtigter Komplize für den Angreifer gehandelt. Diese Angriffe können mit HTML, JavaScript, VBScript, ActiveX, Flash ausgeführt werden. Das am häufigsten verwendete XSS ist jedoch bösartiges JavaScript.

Diese Angriffe können auch Daten aus Kontoentführungen, Änderungen der Benutzereinstellungen, Cookie-Diebstahl / Vergiftung oder falscher Werbung sammeln und DoS-Angriffe erstellen.

Beispiel

Nehmen wir ein Beispiel, um zu verstehen, wie es funktioniert. Wir haben eine anfällige Webseite, die wir von der bekommen habenmetasploitableMaschine. Jetzt testen wir das Feld, das in einem roten Pfeil für XSS hervorgehoben ist.

Zunächst erstellen wir ein einfaches Alarmskript

<script>  
   alert(‘I am Vulnerable’)  
</script>

Es wird die folgende Ausgabe erzeugt -

Arten von XSS-Angriffen

XSS-Angriffe werden häufig in drei Typen unterteilt:

  • Persistent XSS, Dabei stammt die schädliche Zeichenfolge aus der Datenbank der Website.

  • Reflected XSS, wo die böswillige Zeichenfolge von der Anfrage des Opfers stammt.

  • DOM-based XSS, Dabei liegt die Sicherheitsanfälligkeit eher im clientseitigen Code als im serverseitigen Code.

Im Allgemeinen wird Cross-Site-Scripting von gefunden vulnerability scanners Damit Sie nicht die ganze manuelle Arbeit erledigen müssen, indem Sie ein JavaScript darauf setzen

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

Burp Suite und acunetix gelten als die besten Schwachstellenscanner.

Schneller Tipp

Beachten Sie die folgenden Punkte, um XSS-Angriffe zu verhindern:

  • Überprüfen und validieren Sie alle Formularfelder wie versteckte Formulare, Kopfzeilen, Cookies und Abfragezeichenfolgen.

  • Implementieren Sie eine strenge Sicherheitsrichtlinie. Stellen Sie die Zeichenbegrenzung in den Eingabefeldern ein.