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.

Πίσω