Web9: Τύποι εκμετάλλευσης XSS - Μέρος 3: XSS που βασίζεται σε Dom

Web9: Τύποι εκμετάλλευσης XSS - Μέρος 3: XSS που βασίζεται σε Dom

Έχουμε ήδη αναφέρει δύο τύπους εκμεταλλεύσεων XSS : ανακλώμενα και αποθηκευμένα. Όλα έχουν το κοινό χαρακτηριστικό ότι ο επικίνδυνος κώδικας, αφού εισαχθεί, θα εκτελεστεί μετά την απόκριση του διακομιστή, πράγμα που σημαίνει ότι το σφάλμα βρίσκεται στην πλευρά του διακομιστή.διακομιστής.διακομιστής. Υπάρχει ένας άλλος τύπος εκμετάλλευσης XSS που έρχεται σε αντίθεση με αυτό το χαρακτηριστικό, ο κακόβουλος κώδικας εκτελείται αμέσως από την πλευρά του πελάτη χωρίς να περάσει από τον διακομιστή, γνωστό ως DOM Based XSS ή γνωστό και ως type 0 XSS.

Πρώτα από όλα πρέπει να ξέρουμε τι είναι το DOM;

Το DOM, συντομογραφία του Document Object Model, είναι μια τυπική μορφή του W3C (http://www.w3.org/DOM/) που προτείνεται για την ανάκτηση και τον χειρισμό δεδομένων δομημένων εγγράφων όπως HTML και XML. Αυτό το μοντέλο αναπαριστά τα έγγραφα ως μια ιεραρχική δομή δέντρου. Όλα τα στοιχεία σε HTML και XML θεωρούνται κόμβος.

Το XSS που βασίζεται στο DOM είναι μια τεχνική εκμετάλλευσης XSS που βασίζεται στην αλλαγή της δομής DOM του εγγράφου, και συγκεκριμένα του HTML.

Ας δούμε ένα συγκεκριμένο παράδειγμα παρακάτω:

Ένας ιστότοπος έχει την ακόλουθη διεύθυνση URL στη σελίδα εγγραφής:

example.com/register.php?message=Please fill in the form

Όταν έχουμε πρόσβαση σε αυτό, βλέπουμε μια πολύ κανονική Φόρμα:

Web9: Τύποι εκμετάλλευσης XSS - Μέρος 3: XSS που βασίζεται σε Dom

Μπορείτε εύκολα να συναγάγετε την παράμετρο του μηνύματος που μεταβιβάστηκε στο περιεχόμενο ειδοποίησης στη φόρμα, κοιτάξτε προσεκτικά τον πηγαίο κώδικα αυτής της ειδοποίησης:

Web9: Τύποι εκμετάλλευσης XSS - Μέρος 3: XSS που βασίζεται σε Dom

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

Αντί για κάστινγκ:

message=Please fill in the form

μετά μετάδοση:

message=GenderMaleFemale

function show(){alert();}

Τότε η φόρμα εγγραφής θα μοιάζει με αυτό:

Web9: Τύποι εκμετάλλευσης XSS - Μέρος 3: XSS που βασίζεται σε Dom

Οι χρήστες δεν θα είναι ύποπτοι για μια "κανονική" φόρμα όπως αυτή και όταν επιλέγουν το φύλο, το Σενάριο θα εκτελείται:

Web9: Τύποι εκμετάλλευσης XSS - Μέρος 3: XSS που βασίζεται σε Dom

Θα εξηγήσω λίγο περισσότερα σχετικά με την τιμή που μεταβιβάστηκε στην παράμετρο μηνύματος:

GenderMaleFemale

function show(){alert();}

Ο κύριος σκοπός της είναι να εκτελεί τη συνάρτηση show() κάθε φορά που υπάρχει ένα συμβάν onchage στην ετικέτα Select. Η συνάρτηση show() εδώ απλά εμφανίζεται για να δείξει ότι το σενάριο έχει εκτελεστεί. Ωστόσο, στην πραγματικότητα, οι χάκερ χρησιμοποιούν συχνά αυτήν τη συνάρτηση show() για να εκτελέσουν ένα σενάριο που μεταδίδει την τιμή του cookie χρήστη σε έναν προκαθορισμένο διακομιστή. Οι αναγνώστες μπορούν να διαβάσουν το άρθρο Reflected XSS που αναφέρει πώς δημιουργούν οι χάκερ Πώς μοιάζει αυτό το αίτημα;

Αυτό το παράδειγμα μας δίνει δύο σημαντικά συμπεράσματα. Πρώτον, ο κακόβουλος κώδικας εκτελέστηκε αμέσως μόλις έκανε κλικ στην τιμή στην ετικέτα επιλογής, που σημαίνει ότι εκτελέστηκε ακριβώς στην πλευρά του πελάτη χωρίς να περάσει από την απόκριση του διακομιστή. Δεύτερον, η δομή HTML έχει αλλάξει με το σενάριο που πέρασε. Και μπορούμε επίσης να δούμε το πραγματικό σενάριο εκμετάλλευσης, το DOM Based είναι κάπως πιο παρόμοιο με το Reflected παρά με το Stored XSS όταν πρόκειται να εξαπατήσει τους χρήστες να αποκτήσουν πρόσβαση σε μια διεύθυνση URL ενσωματωμένη με κακόβουλο κώδικα.

Το παρακάτω σχήμα περιγράφει κάθε βήμα στην εφαρμογή της τεχνικής επίθεσης XSS με βάση το DOM:

Web9: Τύποι εκμετάλλευσης XSS - Μέρος 3: XSS που βασίζεται σε Dom

Παρακάτω είναι ένα βίντεο ενός μέλους του φόρουμ WhiteHat.vn που εκτελεί μια εκμετάλλευση μέσω του XSS που βασίζεται στο DOM:

Καλή τύχη!


Διόρθωση σφάλματος Δεν είναι δυνατό το άνοιγμα αυτού του στοιχείου στα 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 που υποδεικνύει ότι η σύνδεση με τον διακομιστή έκλεισε λόγω χρονικού ορίου.