JavaScript PasteJacking

Τα σύγχρονα προγράμματα περιήγησης μπορούν να χρησιμοποιούν JavaScript για ανάγνωση και εγγραφή στο πρόχειρο του χρήστη, πράγμα που σημαίνει ότι μπορούν επίσης να το χειριστούν. Η βασική τεχνολογία είναι ήδη παλιό καπέλο, αλλά μόλις πρόσφατα κυκλοφορούν όλο και περισσότερες επιθέσεις (με το όνομα "PasteJacking") στο δίκτυο που εκμεταλλεύονται αυτήν την επιλογή για τον άπειρο χρήστη. Η εφαρμογή σε JavaScript είναι αποκλειστική.


Μόνο το ακόλουθο σενάριο είναι ενσωματωμένο στην κακόβουλη πλευρά:

27670b8ba9840e688369822a3fcfb2d9

Εάν αντιγράψετε οποιοδήποτε κείμενο από μια τέτοια σελίδα, η ανεπιθύμητη συμβολοσειρά θα καταλήγει πάντα στο πρόχειρο (ανεξάρτητα από το αντιγραμμένο κείμενο σε αυτήν την εφαρμογή). Αντί για "κακή εντολή" μπορείτε τώρα να βρείτε πολλά άσχημα πράγματα. Το όλο πράγμα γίνεται θανατηφόρο εάν μια διακοπή γραμμής στο τέλος της γραμμής χρησιμοποιείται για την άμεση εκτέλεση του κώδικα:

27670b8ba9840e688369822a3fcfb2d9

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

27670b8ba9840e688369822a3fcfb2d9

Το πρόχειρο μπορεί να χειριστεί (σε διαφορετική μορφή) ακόμη και χωρίς JavaScript:

27670b8ba9840e688369822a3fcfb2d9

Εάν επιλέξετε το κείμενο που θέλετε, για παράδειγμα στον πιο πρόσφατο Firefox (εδ. 45.0), δεν είναι αυτό το κείμενο αλλά το κείμενο πίσω από αυτό που καταλήγει στο πρόχειρο.

Και οι δύο μέθοδοι μπορούν να δοκιμαστούν ζωντανά εδώ. Εδώ είναι η παραλλαγή JS:

See the Pen Pastejacking #1 by David Vielhuber (@vielhuber) on CodePen.

Όπως και η παραλλαγή CSS:

See the Pen Pastejacking #2 by David Vielhuber (@vielhuber) on CodePen.

Πίσω