Cross-site scripting
Με τον όρο Cross-site scripting ή XSS (δεν είναι CSS γιατί αλλιώς θα υπήρχε πρόβλημα ονομασίας) αναφερόμαστε στην εκμετάλλευση διάφορων ευπαθειών (vulnerabilities) υπολογιστικών συστημάτων με εισαγωγή κώδικα HTML ή Javascript σε κάποιο ιστοχώρο. Κάποιος κακόβουλος χρήστης, θα μπορούσε να εισάγει κώδικα σε έναν ιστοχώρο, μέσω ενός κειμένου εισόδου για παράδειγμα, ο οποίος αφού δεν θα φιλτραριζόταν από τον ιστοχώρο σωστά, θα μπορούσε να προκαλέσει προβλήματα στον διαχειριστή ή επισκέπτη του ιστοχώρου. παράδειγμα:
http://www.example.com/index.html?name=<script>alert("xss revealed")</script>
Ο κακόβουλος χρήστης θα μπορούσε να επιτύχει :
- Κλοπή κωδικών/λογαριασμών κλπ προσωπικών δεδομένων
- Αλλαγή ρυθμίσεων του ιστοχώρου
- Κλοπή των cookies
- Ψεύτικη διαφήμιση (μέσω, π.χ., ενός συνδέσμου)
Η ευπάθεια αναφέρεται στην αδυναμία του συστήματος που υποστηρίζει ο ιστοχώρος να φιλτράρει και να απορρίψει τυχόν επιβλαβείς εισόδους.
Γενικά, υπάρχουν τρία είδη XSS επιθέσεων:
- Μόνιμη: Ο κώδικας επίθεσης αποθηκεύεται στον server που φιλοξενεί τον ιστοχώρο. Σε αυτή τη περίπτωση κάθε επισκέπτης της σελίδας εκτίθεται στην επίθεση
- Μη μόνιμη': Για να εκτεθεί κάποιος στον κώδικα επίθεσης, θα πρέπει να "πατήσει" σε κάποιο σύνδεσμο
- Βασισμένες σε DOM