Coller JavaScript

Les navigateurs modernes peuvent utiliser JavaScript pour accéder au presse-papiers de l'utilisateur et le manipuler, en lecture comme en écriture. La technologie sous-jacente n'est pas nouvelle, mais ce n'est que récemment que des attaques (connues sous le nom de « pastejacking ») ont émergé en ligne, exploitant cette fonctionnalité au détriment d'utilisateurs non avertis. L'implémentation de cette fonctionnalité en JavaScript est relativement simple.


Seul le script suivant est intégré du côté malveillant:

27670b8ba9840e688369822a3fcfb2d9

Si vous copiez du texte à partir d'une telle page, la chaîne indésirable se retrouve toujours dans le presse-papiers (dans cette implémentation quel que soit le texte copié). Au lieu de "commande diabolique", vous pouvez maintenant trouver beaucoup de choses laides. Le tout devient fatal si un saut de ligne en fin de ligne est utilisé pour exécuter immédiatement le code:

27670b8ba9840e688369822a3fcfb2d9

Il est également facile de réinitialiser la sortie de la console afin que l'utilisateur ne remarque pas immédiatement ce qu'il a saisi. Par exemple, il est concevable qu'en copiant un extrait de code inoffensif, vous détruisiez au passage vos partitions.

27670b8ba9840e688369822a3fcfb2d9

Le presse-papiers peut être manipulé (sous une forme différente) même sans JavaScript:

27670b8ba9840e688369822a3fcfb2d9

Si vous marquez le texte souhaité, par exemple dans le dernier Firefox (v. 45.0), ce n'est pas le texte qui se retrouve dans le presse-papiers, mais le texte situé derrière.

Les deux méthodes peuvent être essayées en direct ici. Voici la variante JS:

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

Ainsi que la variante CSS:

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

Retour